MCP 客户端与服务端使用教程
MCP 是一种标准化协议,用于连接大模型与外部工具(如数据库、API 等),通过客户端-服务器架构实现统一调用。以下是客户端与服务端的配置和使用详解:

一、服务端创建与部署
服务端负责提供工具能力(如 API 调用、数据查询等),需提前配置工具并生成访问端点。
1. 创建 MCP 服务
阿里云平台创建
登录阿里云 OpenAPI Explorer → 创建 MCP 服务 → 填写名称(如 mcp-demo)、选择文档语言 → 添加云产品 API(单个服务不超过 30 个 API) → 生成 Streamable HTTP Endpoint 和 SSE Endpoint。
自建本地服务(Python 示例)
使用 FastMCP 库创建工具(如网络搜索):
2. 服务端类型
Stdio 模式
本地进程间通信,无需网络(命令示例:npx -y exa-mcp-server)。
SSE 模式
远程服务,通过 HTTP 传输(需配置 SSE Endpoint)。
二、客户端(MCP Client)配置
客户端是集成 MCP 服务的应用(如 IDE、聊天工具),需连接服务端端点。
1. 主流客户端配置
通义灵码(VS Code/JetBrains)
→ 插件设置 → 添加 MCP 服务 → 类型选 STDIO → 命令填 npx mcp-remote ${SSE Endpoint} → 完成 OAuth 授权。
Cherry Studio
→ 模型服务设置 → 添加 MCP 服务器 → URL 填入 Streamable HTTP Endpoint → 授权并启动服务。
Windsurf
→ 设置 → 粘贴 MCP 服务的 JSON 配置(含命令和环境变量) → 保存后显示绿点即成功。
2. 通用配置参数

三、使用流程与调优
1. 调用示例
自然语言指令
在客户端输入:查询成都地域的 ECS 实例列表,设置 x_mcp_region_id 为 cn-chengdu。
结果返回
客户端显示 API 调用结果(如实例列表)或错误提示。
2. 常见调优技巧
参数传递问题
若未正确传递地域参数(如 x_mcp_region_id),需在服务端修改 API 描述:
→ 编辑 API 概述 → 补充“必须传递 RegionId 和 x_mcp_region_id”。
简化非必填参数
删除 API 文档中冗余参数,减少 Token 消耗并提高准确性。
权限控制
确保 RAM 用户有 API 调用权限,避免授予删除等高危权限。
四、进阶场景与生态
1. 工具扩展案例
本地文件操作
配置 Filesystem MCP Server,支持读写桌面文件(命令:npx @modelcontextprotocol/server-filesystem)。
AI 搜索整合
组合时间服务(uvx mcp-server-time)和 Exa 搜索(npx exa-mcp-server),实现时效性检索。
数据库管理
Neon MCP Server 连接 GitHub Copilot,直接生成 PostgreSQL 查询代码。
2. 开发框架支持
Java/Spring 生态
使用 @Tool 注解暴露业务方法,通过 ToolCallbackProvider 注册服务。
容器化部署
Docker 封装 MCP Server 增强安全性(防止远程代码执行风险)。
五、常见问题
服务无法连接
检查 Endpoint 是否正确、OAuth 是否授权、网络是否通畅。
API 调用失败
确认 RAM 用户权限,或检查参数是否符合 API 文档要求。
性能限制
单个 MCP Server 建议不超过 30 个 API,过多会降低模型选择准确性。
评论