模型上下文协议服务器

一个轻量级的FastAPI托管的模型上下文协议(MCP)服务器,提供示例工具、提示和资源,包括一个本地运行的异步演示客户端以验证服务器端到端功能。

  • by amirhosseinzolfi
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 amirhosseinzolfi/blue-mcp

使用说明

蓝色MCP服务器

一个轻量级的FastAPI托管的模型上下文协议(MCP)服务器,公开了示例工具、提示和资源。该项目包括一个演示异步客户端,您可以在本地运行以端到端验证服务器。

特性

  • FastAPI+FastMCP 具有可注册工具、资源和提示的服务器。
  • 环境驱动配置 通过装载 .env 因此,凭据和部署细节是保密的。
  • 异步演示客户端 (test_client.py)它列出了MCP工具/资源/提示,并执行了一个示例工具调用。

需求

  • Python 3.10+
  • pip / venv
  • 访问 blue-mcp GitHub存储库

激活虚拟环境后安装依赖项:

python -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt

环境变量

所有敏感值应保持不变 .env (已在当地存在)。永远不要提交该文件:它会被忽略 .gitignore.使用 .env.example 作为队友入职培训的模板。

变量 目的 默认值
APP_NAME FastAPI/FastMCP使用的显示名称 RemoteDemoMCP
HOST 地址uvicorn绑定到 0.0.0.0
PORT Port uvicorn继续收听 15808
MOUNT_PATH MCP路由的基本路径 /
PUBLIC_MCP_URL 可选的外部可访问MCP端点 从主机/端口派生
MCP_REMOTE_URL 重写从主机/端口导出的演示客户端URL

保持现有 .env 使用当前凭据的文件。根据需要更新那里的值;永远不要打印或提交它们。

运行服务器

uvicorn server:build_app --host ${HOST:-0.0.0.0} --port ${PORT:-15808} --reload

或者简单地说:

python server.py

您应该看到类似于以下内容的输出:

[MCP] RemoteDemoMCP at http://0.0.0.0:15808/  (MCP endpoints under /mcp)

使用演示客户端进行检查

确保服务器正在运行,然后执行:

python test_client.py

脚本如下 MCP_REMOTE_URL/PUBLIC_MCP_URL/默认值来自 .env 并打印工具、资源、提示和示例 add 调用。

准备推送到GitHub

  1. 初始化/gitfetch (每个工作区一次):
    git init
    git remote add origin https://github.com/amirhosseinzolfi/blue-mcp.git
    git fetch origin
    git checkout -b main || git checkout main
    
  2. 审查变更: git status 和 git diff (确保 .env 未被追踪)。
  3. 提交:
    git add .
    git commit -m "Improve MCP config + docs"
    
  4. 推:
    git push -u origin main
    

如果你已经在GitHub上有历史记录,在推送之前拉取/重基: git pull --rebase origin main.

故障排除

  • Uvicorn绑定失败:验证 PORT 免费或更新 .env.
  • 客户端无法连接:set MCP_REMOTE_URL 服务器公开的公共URL。
  • 依赖性问题:确保 .venv 处于活动状态并运行 pip install -r requirements.txt 再一次。

许可证

如果适用,请参阅GitHub存储库中的许可证。