MCP 课程文档
构建 MCP 客户端
并获得增强的文档体验
开始使用
构建 MCP 客户端
在本节中,我们将创建可以使用不同编程语言与 MCP 服务器交互的客户端。我们将实现一个使用 HuggingFace.js 的 JavaScript 客户端和一个使用 smolagents 的 Python 客户端。
配置 MCP 客户端
有效部署 MCP 服务器和客户端需要适当的配置。MCP 规范仍在不断发展,因此配置方法也会随之演变。我们将重点介绍当前的配置最佳实践。
MCP 配置文件
MCP 主机使用配置文件来管理服务器连接。这些文件定义了哪些服务器可用以及如何连接到它们。
这些配置文件非常简单,易于理解,并且在主要的 MCP 主机上保持一致。
mcp.json 结构
MCP 的标准配置文件名为 mcp.json
。以下是基本结构
{
"servers": [
{
"name": "MCP Server",
"transport": {
"type": "sse",
"url": "https://:7860/gradio_api/mcp/sse"
}
}
]
}
在此示例中,我们配置了一个服务器,它使用 SSE 传输,连接到在端口 7860 上运行的本地 Gradio 服务器。
我们通过 SSE 传输连接到 Gradio 应用程序,因为我们假设 Gradio 应用程序正在远程服务器上运行。但是,如果您想连接到本地脚本,stdio
传输而不是 sse
传输是更好的选择。
HTTP+SSE 传输配置
对于使用 HTTP+SSE 传输的远程服务器,配置包括服务器 URL
{
"servers": [
{
"name": "Remote MCP Server",
"transport": {
"type": "sse",
"url": "https://example.com/gradio_api/mcp/sse"
}
}
]
}
此配置允许您的 UI 客户端使用 MCP 协议与 Gradio MCP 服务器通信,从而实现前端和 MCP 服务之间的无缝集成。
配置 UI MCP 客户端
在使用 Gradio MCP 服务器时,您可以配置 UI 客户端以使用 MCP 协议连接到服务器。以下是设置方法
基本配置
创建一个名为 config.json
的新文件,其中包含以下配置
{
"mcpServers": {
"mcp": {
"url": "https://:7860/gradio_api/mcp/sse"
}
}
}
此配置允许您的 UI 客户端使用 MCP 协议与 Gradio MCP 服务器通信,从而实现前端和 MCP 服务之间的无缝集成。
在 Cursor IDE 中配置 MCP 客户端
Cursor 提供内置的 MCP 支持,允许您将已部署的 MCP 服务器直接连接到您的开发环境。
配置
打开 Cursor 设置 (Ctrl + Shift + J
/ Cmd + Shift + J
) → MCP 选项卡 → 添加新的全局 MCP 服务器
macOS
{
"mcpServers": {
"sentiment-analysis": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://YOURUSENAME-mcp-sentiment.hf.space/gradio_api/mcp/sse",
"--transport",
"sse-only"
]
}
}
}
Windows
{
"mcpServers": {
"sentiment-analysis": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"mcp-remote",
"https://YOURUSENAME-mcp-sentiment.hf.space/gradio_api/mcp/sse",
"--transport",
"sse-only"
]
}
}
}
为什么我们使用 mcp-remote
大多数 MCP 客户端,包括 Cursor,目前只支持通过 stdio 传输的本地服务器,尚不支持带 OAuth 认证的远程服务器。mcp-remote
工具充当了一个桥接解决方案,它
- 在您的机器上本地运行
- 将来自 Cursor 的请求转发到远程 MCP 服务器
- 使用熟悉的配置文件格式
配置完成后,您可以要求 Cursor 使用您的情感分析工具来分析代码注释、用户反馈或拉取请求描述等任务。
< > 在 GitHub 上更新