本指南将详细介绍如何开发和运行 MCP 服务器,帮助你快速将服务器集成到 MCP 生态系统中。
要开始使用 MCP 服务器,首先需要安装所需的依赖,然后就可以启动服务器进行开发和测试了。
要开始使用 MCP 服务器,请先安装所需的依赖:
npm install @modelcontextprotocol/sdk zod
MCP 服务器可以通过以下命令启动:
npx ts-node src/servers/addition/addition.ts
要添加一个新的 MCP 服务器,请按照以下步骤操作:
src/servers/ 目录下创建一个新目录:mkdir -p src/servers/my-new-server
// src/servers/my-new-server/my-new-server.ts
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
const server = new McpServer({
name: "My New Server",
version: "1.0.0",
});
server.tool(
"my-tool",
{
param1: z.string().describe("参数描述"),
param2: z.number().describe("参数描述"),
},
async ({ param1, param2 }) => {
return {
content: [{ type: "text", text: `结果:${param1} ${param2}` }],
};
}
);
async function startServer() {
const transport = new StdioServerTransport();
await server.connect(transport);
console.log("我的新服务器已启动并准备处理请求");
}
if (process.argv[1] === new URL(import.meta.url).pathname) {
startServer();
}
export default server;
src/index.ts 和 src/run-all.ts 中添加你的服务器:const servers = [
// 现有的服务器列表
{
name: "my-new-server",
displayName: "我的新服务器",
path: join(__dirname, "servers/my-new-server/my-new-server.ts"),
},
];
package.json 中的脚本(可选):"scripts": {
// 现有的脚本
"dev:my-new-server": "ts-node --esm src/servers/my-new-server/my-new-server.ts"
}
在连接到 Cursor IDE 之前,可以测试 MCP 服务器的功能:
npm run build
npm run start:addition
{
"type": "request",
"id": "test1",
"name": "add",
"params": { "num1": 5, "num2": 7 }
}
服务器应返回:
{
"type": "response",
"id": "test1",
"content": [
{ "type": "text", "text": "5 和 7 的和是 12。" },
{
"type": "text",
"text": "{\n \"num1\": 5,\n \"num2\": 7,\n \"sum\": 12\n}"
}
]
}
npm test
完成以上步骤后,你的 MCP 服务器应该可以正常运行并集成到 MCP 生态系统中。