使用说明
MCP客户端
一个模块化Python客户端,用于连接MCP服务器,与Anthropic Claude集成,并公开基于FastAPI的API,用于处理查询和工具调用。
特性
-
MCP客户端:通过stdio连接到MCP服务器(Node或Python),协商可用工具并管理工具调用。
-
Claude AI集成:使用Anthropic Claude生成自然语言响应,并决定何时调用工具。
-
工具调用:处理Claude和外部工具之间的多轮推理,返回结构化响应(markdown、代码、图表数据)。
-
FastAPI服务器:为前端集成提供HTTP API终结点。
-
.env支持:从.env文件加载Anthropic API键和其他环境变量。
-
CORS支持:允许灵活的前端/后端开发。
安装
先决条件
-
Python 3.10+
-
MCP服务器——例如。, mcp节点 或兼容的Python或Node MCP服务器。
-
人类API钥匙(用于克劳德)。
克隆Repo
git clone https://github.com/Kiran1689/mcp-proxy-server
cd mcp-proxy-server
安装Python依赖项
建议使用虚拟环境:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv sync
配置环境变量
创建一个 .env 项目根目录中的文件:
ANTHROPIC_API_KEY=your-anthropic-api-key-here
用法
1.启动MCP服务器
遵循MCP服务器的说明(例如NodeJS或Python)。 节点示例:
cd /path/to/mcp-node
npm install
npm run start
2.运行FastAPI服务器
uvicorn client_server:app --reload
默认情况下,这将:
-
连接到您的MCP服务器
-
在以下位置显示端点http://localhost:8000
API终点
-
POST /query--发送用户查询,从Claude接收结构化响应(可以调用工具)。 -
GET /tools--列出可用的服务器工具。 -
GET /server-name--返回服务器名称标识符。
3.交互式本地客户端(CLI)
您可以直接运行交互式CLI进行实验:
python client.py
编码结构
-
client.py--实现MCPClient:连接到MCP服务器,与Claude交互,管理对话状态,处理工具调用,并构建响应。 -
client_server.py-启动FastAPI服务器,提供API端点,管理单个MCPClient实例。 -
pyproject.toml--Python打包和依赖关系。
自定义
-
您可以在中更新Claude的系统提示
client.py控制格式、图表标准或代码输出。 -
从MCP服务器实时检测工具模式。
-
根据需要扩展或替换工具调用逻辑。
故障排除
-
检查
.env存在并包含您的Anthropic密钥。 -
确保服务器 路径/配置 在……里面
client.py匹配您的MCP服务器。 -
查看服务器/控制台日志,了解工具调用和Claude响应的调试信息。
许可证
麻省理工学院
欢迎投稿和投稿!
请随时提交拉取请求或问题。
内置于💙 靠近 基兰