MCP 人口普查服务器是一个强大的模型上下文协议(MCP)服务器,可通过 HTTP 上的 JSON - RPC 访问美国人口普查局的数据,为用户提供便捷、高效的数据访问途径。
git clone https://github.com/kaman1/mcp_census_server.git
cd mcp_census_server
cp .env.example .env
# 编辑 .env:
# CENSUS_API_KEY=
# SERVER_API_KEY=
pip install -r requirements.txt
uvicorn app:app --host 0.0.0.0 --port 8000 --reload
http://localhost:8000/ 发送 JSON - RPC 请求,带有头 X - API - Key: 。示例 tools/list 调用:
curl -X POST http://localhost:8000/ \
-H "Content-Type: application/json" \
-H "X-API-Key: $SERVER_API_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
logging 进行结构化日志记录,方便问题排查和系统监控。X - API - Key 头进行 API 密钥身份验证,保障数据安全。/health 健康检查端点,方便监控服务器状态。/docs 访问,便于开发者了解和使用 API。initialize:协商协议版本和功能。notifications/initialized:客户端就绪通知。tools/list:列出可用工具 (census/get)。tools/call:调用 census/get 以检索人口普查局数据。pip install -r requirements.txt
cp .env.example .env
# 编辑 .env:
# CENSUS_API_KEY=
# SERVER_API_KEY=
uvicorn app:app --host 0.0.0.0 --port 8000 --reload
使用 curl 发送 tools/list 请求:
curl -X POST http://localhost:8000/ \
-H "Content-Type: application/json" \
-H "X-API-Key: $SERVER_API_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
docs/architecture.mddocs/usage.mddocs/authentication.mdnpm install
npm run serve:docs
您可以通过 GitHub Pages 发布这些文档:
/docs 文件夹。文档将可用于:
https://.github.io/mcp_census_server/
您可以在仓库的 关于 部分将其设置为项目网站。
pytest 进行测试。black . 进行代码格式化。isort . 进行导入排序。flake8 . 进行代码检查。.github/workflows/ci.ymlclient/ 目录包含一个基于 Next.js 的 MCP 客户端,可以与该服务器交互。
cd client
cp .env.example .env.local
# 设置 OPENAI_API_KEY,MCP_SERVER_URL(例如 https://your-server),SERVER_API_KEY
npm install
npm run dev
您可以配置环境并同时运行服务器和客户端:
chmod +x start.sh
./start.sh
这将提示输入所有所需的密钥,并并发运行 MCP 服务器和客户端。