概述 · 特性 · 安装 · 使用MCP Inspector进行测试 · 设置测试环境变量 · 与Cursor AI集成 · 在Cursor中使用MCP工具(代理模式) · 代码概览 · 参考资料及资源 · 许可证
MCP(模型上下文协议) 是一个框架,允许您将自定义工具集成到AI辅助的开发环境中——例如Cursor AI。MCP服务器暴露功能(如数据检索或代码分析),以便基于LLM的IDE可以根据需要调用这些工具。更多关于MCP的信息,请参阅 模型上下文协议介绍。
本项目演示了一个使用JavaScript和Node.js实现的MCP服务器。它定义了两个工具:add,接受两个数值输入并返回它们的和;以及getApiKey,从API_KEY环境变量中检索API密钥。此外,还提供了一个预定义提示add_numbers,允许AI模型推断加法工具的使用方法。
StdioServerTransport连接以集成到开发环境中。克隆仓库
git clone <repository_url>
cd <repository_directory>
安装依赖
您可以通过两种方式之一安装项目依赖:
选项1: 使用现有的package.json安装
只需运行:
npm install
选项2: 手动安装依赖
如果您更喜欢,可以删除现有的package.json并手动安装所需包:
npm install @modelcontextprotocol/sdk zod
然后,更新新生成的package.json文件,包括以下行,这将启用ES模块并添加mcp inspector命令:
"type": "module",
"scripts": {
"inspector": "npx @modelcontextprotocol/inspector node ./mcp-server.js"
}
MCP Inspector是一个调试工具,让您可以在集成到IDE之前交互式地测试服务器的工具。
选项1: 直接使用npx运行
npx @modelcontextprotocol/inspector node ./mcp-server.js
选项2: 使用npm脚本
npm run inspector
这将:
在浏览器中打开MCP服务器检查器: http://localhost:6274/
为了使用不同的API密钥测试getApiKey工具,您可以在运行检查器之前设置环境变量:
Linux/macOS (Bash/Zsh):
# 临时(仅限当前会话)
export API_KEY="your-test-key"
npm run inspector
# 或为单个命令设置
API_KEY="your-test-key" npm run inspector
Windows (命令提示符):
# 设置为当前会话
set API_KEY=your-test-key
npm run inspector
Windows (PowerShell):
# 设置为当前会话
$env:API_KEY="your-test-key"
npm run inspector
# 或为单个命令设置
$env:API_KEY="your-test-key"; npm run inspector
要将此MCP服务器与Cursor IDE集成,您需要通过Cursor的设置界面添加配置:
重要: 如果您已经配置了其他MCP服务器,请不要覆盖整个配置。相反,将"MCP Server Boilerplate"对象添加到现有的"mcpServers"对象中。
示例配置文件: 本项目包含一个位于./cursor/mcp.json的示例配置文件,您可以参考或复制该文件。
以下是您需要添加的配置:
Linux/macOS 示例:
{
"MCP Server Boilerplate": {
"command": "node",
"args": ["/home/john/mcp-server-node/mcp-server.js"],
"env": {
"API_KEY": "abc-1234567890"
}
}
}
Windows 示例:
{
"MCP Server Boilerplate": {
"command": "node",
"args": ["C:\\Users\\john\\mcp-server-node\\mcp-server.js"],
"env": {
"API_KEY": "abc-1234567890"
}
}
}
如果您已配置其他MCP服务器,您的完整配置可能如下所示:
{
"mcpServers": {
"existing-server": {
"command": "python",
"args": ["/path/to/existing/server.py"]
},
"MCP Server Boilerplate": {
"command": "node",
"args": ["/home/john/mcp-server-node/mcp-server.js"],
"env": {
"API_KEY": "abc-1234567890"
}
}
}
}
MCP Server Boilerplate:
这是您服务器配置的关键。您可以根据喜好命名。
command:
运行您的服务器的Node.js可执行文件。您可以使用:
"node"(如果Node.js在您的PATH中)查找您的Node.js路径:
Linux/macOS:
which node
# 示例输出: /home/john/.nvm/versions/node/v22.13.1/bin/node
Windows (命令提示符):
where node
# 示例输出: C:\Program Files\nodejs\node.exe
Windows (PowerShell):
Get-Command node
# 示例输出: C:\Program Files\nodejs\node.exe
args:
包含您的MCP服务器文件绝对路径的数组。
Linux/macOS 示例:
["/home/john/mcp-server-node/mcp-server.js"]
Windows 示例:
["C:\\Users\\john\\mcp-server-node\\mcp-server.js"]
env: (可选)
定义您的MCP服务器进程的环境变量。在此示例中,API_KEY被设置为"abc-1234567890"。根据您的环境调整此值。
该项目包含以下关键部分:
MCP服务器初始化:
使用来自MCP SDK的McpServer实例化MCP服务器,并通过StdioServerTransport连接。
工具定义:
a和b)并返回它们的和作为文本。API_KEY中检索API密钥并将其作为文本返回。提示定义:
重要说明: 工具不一定需要有定义的提示。这个例子只是展示了提示能力的一个方面,允许AI模型根据输入推断应使用哪个工具。当AI确定任务需要时,也可以直接使用工具。
将MCP服务器集成到Cursor IDE并启用代理模式后,您可以多种方式使用工具:
方法1: 自然语言提示 只需使用自然语言提示,例如:
3 加 5
或
7 加 12 是多少?
方法2: 基于提示的工具调用 在聊天中键入以下提示:
/add_numbers
键入此提示后按Enter,Cursor将自动:
add工具add工具来计算结果加法工具的参数:
a: 第一个要相加的数字b: 第二个要相加的数字对于getApiKey工具,您可以使用:
我的API密钥是什么?
或
获取我的API密钥
AI代理将根据您的请求自动推断出适当的工具。
本项目根据MIT许可证授权。