MCP零基础学习(2):开发环境配置指南

举报
ceshiren001 发表于 2025/08/14 09:29:42 2025/08/14
【摘要】 本文提供MCP开发的完整环境配置指南,涵盖Python(FastMCP服务端)和Node.js(客户端)双环境搭建,推荐使用UV超高速包管理器和镜像加速方案。包含Mock服务端创建、客户端调用测试、VS Code调试配置及常见问题解决方案,助您快速构建跨平台MCP应用并集成AI能力。

2025全新实战指南:10分钟搭建跨平台MCP开发环境,兼容Python与Node.js双生态

一、环境准备:跨平台兼容方案

在开始MCP开发前,确保你的系统满足以下条件:

0813企业微信截图_跨平台兼容方案.png

💡 避坑提示
Windows用户需启用开发者模式解决长路径问题
macOS需运行 xcode-select --install 安装命令行工具

二、核心工具安装:UV替代传统包管理

1. 安装UV(超高速Python包管理器)

# 一键安装脚本(跨平台)  
curl -LsSf https://astral.sh/uv/install.sh | sh  

# 验证安装  
uv --version  
# 预期输出: uv 0.2.0 (2025-07更新)


2. 配置UV镜像加速(国内用户必做)

# 设置清华镜像源  
uv config set registry.index-url "https://pypi.tuna.tsinghua.edu.cn/simple"  

# 永久生效(写入.zshrc/.bashrc)  
echo 'export UV_INDEX_URL="https://pypi.tuna.tsinghua.edu.cn/simple"' >> ~/.zshrc


三、Python环境配置(MCP服务端)

1. 创建隔离虚拟环境

# 新建mcp-dev目录并进入  
mkdir mcp-dev && cd mcp-dev  

# 使用UV创建虚拟环境  
uv venv .venv  

# 激活环境  
# Windows: .\.venv\Scripts\activate  
source .venv/bin/activate  # Linux/macOS


2. 安装MCP核心库

# 安装官方工具包  
uv pip install "fast-mcp>=1.5" mcp-toolkit anthropic-mcp  

# 验证安装  
python -c "from fast_mcp import __version__; print(f'FastMCP v{__version__}')"


四、Node.js环境配置(MCP客户端)

1. 初始化项目

npm init -y  

# 安装TypeScript(推荐)  
npm install -D typescript @types/node


2. 添加MCP客户端SDK

# 安装Anthropic官方客户端  
npm install @anthropic/mcp-client @mcp-tools/cli  

# 创建tsconfig.json  
npx tsc --init --target es2022 --module commonjs


五、双环境联动测试

1. 启动Mock MCP服务端

创建 demo_server.py:
from fast_mcp import FastMCP, MCPTool  

@MCPTool(name="greet")  
def greet(name: str, context: dict) -> str:  
    return f"你好, {name}! 当前用户: {context.get('user')}"  

if __name__ == "__main__":  
    server = FastMCP(port=8080)  
    server.register_tool(greet)  
    server.run()  
启动服务:
uv pip install uvicorn  # 安装Web服务器  
uvicorn demo_server:server --port 8080


2. Node.js客户端调用测试

创建 client_test.tsimport { MCPClient } from'@anthropic/mcp-client';  

const client = new MCPClient('http://localhost:8080');  

asyncfunction testGreet() {  
const response = await client.execute({  
    tool_name: 'greet',  
    parameters: { name: 'MCP开发者' },  
    context: { user: 'test@example.com' }  
  });  

console.log(response.result);  
// 预期输出: 你好, MCP开发者! 当前用户: test@example.com  
}  

testGreet();  
运行客户端:
npx ts-node client_test.ts


六、开发环境增强配置

1. VS Code推荐插件

0813企业微信截图_vscode推荐.png



2. 调试配置(.vscode/launch.json)

{  
  "configurations": [  
    {  
      "name": "启动MCP服务",  
      "type": "python",  
      "request": "launch",  
      "module": "uvicorn",  
      "args": ["demo_server:server", "--port=8080"]  
    },  
    {  
      "name": "执行客户端测试",  
      "type": "node",  
      "request": "launch",  
      "runtimeArgs": ["-r", "ts-node/register"],  
      "args": ["${workspaceFolder}/client_test.ts"]  
    }  
  ]  
}


七、常见问题排障指南

问题1:UV安装超时
解决方案

# 手动下载二进制(Linux示例)  
curl -LO https://github.com/astral-sh/uv/releases/download/v0.2.0/uv-linux-x86_64  
chmod +x uv-linux-x86_64  
sudo mv uv-linux-x86_64 /usr/local/bin/uv


问题2:跨域请求被拦截
修复方案:在服务端添加CORS支持

# 在demo_server.py中添加  
from fast_mcp.middleware import CORSMiddleware  

server = FastMCP(port=8080)  
server.add_middleware(CORSMiddleware, allow_origins=["*"])


问题3:Node客户端类型错误
处理步骤

# 1. 确保安装TypeScript  
npm install -D typescript  

# 2. 生成类型声明  
npx mcp-tools generate-types --output src/mcp-types.d.ts


八、下一步学习建议

完成环境配置后,推荐实践路径:

  • 修改greet工具:添加多语言支持
  • 连接真实AI模型:集成Claude/DeepSeek API
  • 部署到云服务:尝试Vercel一键部署
    npm install -g vercel  
    vercel deploy --env MCP_URL=http://localhost:8080
    


🚀 效率提示:使用Anthropic提供的环境检测工具快速验证:

npx @mcp-tools/check-env  
# 输出结果应全部为绿色[PASS]

推荐阅读
MCP零基础学习(1)| MCP 协议核心原理解析

精品文章
国产模型Qwen3-32B本地化实战:LangChain + vLLM 构建企业智能引擎
2025大语言模型部署实战指南:从个人开发到企业落地全栈解决方案


【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。