MCP Bridge Pro
端到端模型上下文协议(MCP)示例包括:
- Python MCP服务器(
python_server):显示示例资源、工具和提示。 - TypeScript MCP客户端(
ts_client):通过STDIO连接到服务器并调用工具。
此仓库显示了一个干净、最小的模式,用于在本地构建和测试MCP服务器和客户端,包括使用MCP检查器运行。
______________________________________________________________________
项目结构
python_server/:Python MCP服务器(FastMCP)与uv.ts_client/:使用Node/TypeScript客户端@modelcontextprotocol/sdk.tools/mcp.json:MCP工具的实用程序配置。
______________________________________________________________________
先决条件
- Python 3.10+
- Node.js 18+
uv(建议用于Python打包和virtualenvs)。安装:https://github.com/astral-sh/uv
______________________________________________________________________
Python MCP服务器
地点: python_server/
设置
uv venv
source .venv/bin/activate || source .venv/Scripts/activate
uv pip install -e .
cp .env.example .env || true如果你没有 .env.example,您可以创建 .env 根据需要。服务器支持以下环境变量:
ALLOWED_ROOT(默认值:.):文件相关工具/资源用于防止逃逸到其他目录的文件系统根。
运行(STDIO)
uv run python server.py使用MCP检查器运行(从repo根目录)
npx -y @modelcontextprotocol/inspector uv --directory ./python_server run python server.py服务器提供什么
资源:
config://about:描述服务器和配置的根目录file://{relpath}:读取内相关文件的文本内容ALLOWED_ROOT
工具:
echo(text: str):回显文本list_files(glob: str = "**/*.md"):列出以下文件ALLOWED_ROOT匹配地球仪read_text(path: str):读取相对于以下内容的小型UTF-8文本文件ALLOWED_ROOTcalc(expr: str):计算简单的算术表达式(数字和+-\*/())。仅)
提示:
code_review(goal: str, style: str = "concise")
______________________________________________________________________
TypeScript MCP客户端
地点: ts_client/
安装
cd ts_client
npm install配置用于启动服务器的命令
默认情况下,客户端使用环境变量来确定如何通过STDIO启动服务器:
MCP_CMD(默认值:python)MCP_ARGS(默认值:C:/mcp-bridge-pro/python_server/server.py在本例中为Windows)
您可以在运行客户端时覆盖这些内容,例如:
# macOS/Linux example
MCP_CMD=python MCP_ARGS="python_server/server.py" npm run dev
# Windows PowerShell example
$env:MCP_CMD="python"; $env:MCP_ARGS="C:/mcp-bridge-pro/python_server/server.py"; npm run dev运行(开发)
npm run dev这将:
- 通过STDIO传输生成Python服务器。
- 列出可用工具。
- 呼叫
echo和calc并打印结果。
构建并运行(已编译)
npm run build
npm start______________________________________________________________________
常见工作流
启动服务器并使用Inspector进行测试
# From repo root
npx -y @modelcontextprotocol/inspector uv --directory ./python_server run python server.py在本地服务器上运行客户端
cd ts_client
MCP_CMD=python MCP_ARGS="../python_server/server.py" npm run dev在Windows PowerShell上:
cd ts_client
$env:MCP_CMD="python"; $env:MCP_ARGS="..\\python_server\\server.py"; npm run dev______________________________________________________________________
故障排除
- 如果客户端无法生成服务器,请验证
MCP_CMD和MCP_ARGS指向有效的Python和脚本路径。 - 如果文件工具失败,请确认
ALLOWED_ROOT被适当地设置,并且路径在该根内。 - 如果
uv找不到,请安装它并重新运行Python服务器的安装步骤。
______________________________________________________________________
许可证
麻省理工学院
