模型上下文协议服务器

使用JavaScript设置和运行模型上下文协议(MCP)服务器,支持工具和资源的注册与通信。

  • by sankettank66
  • JavaScript
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 sankettank66/mcp-presentation

使用说明

使用JavaScript设置MCP服务器

本指南将引导您使用JavaScript设置模型上下文协议(MCP)服务器。

先决条件

  • Node.js(v16或更高版本)
  • npm或yarn包管理器
  • 最新VS代码

安装说明

1.初始化您的项目

npm init -y

2.安装依赖项

npm install @modelcontextprotocol/sdk zod

3.创建项目结构

mkdir src
# or on Windows: md src

touch src/index.js
# or on Windows: new-item src\index.js

4.创建您的MCP服务器

将以下代码添加到 src/index.js:

#!/usr/bin/env node

const { McpServer } = require("@modelcontextprotocol/sdk/server/mcp.js");
const { StdioServerTransport } = require("@modelcontextprotocol/sdk/server/stdio.js");
const { z } = require("zod");

// Create an MCP server
const server = new McpServer({
  name: "demo-server",
  version: "1.0.0"
});

// Add an addition tool
server.registerTool(
  "add",
  {
    title: "Addition Tool",
    description: "Add two numbers",
    inputSchema: { a: z.number(), b: z.number() }
  },
  async ({ a, b }) => ({
    content: [{ type: "text", text: String(a + b) }]
  })
);

// Start receiving messages on stdin and sending messages on stdout
const transport = new StdioServerTransport();
server.connect(transport);

运行服务器

使用以下命令运行MCP服务器:

node src/index.js

项目结构

your-project/
├── src/
│   └── index.js          # Main server implementation
├── package.json          # Project configuration
└── README.md            # This file

后续步骤

  • 使用以下命令向MCP服务器添加更多工具 server.registerTool()
  • 利用资源实施 server.registerResource()
  • 添加错误处理和日志记录
  • 使用MCP客户端测试您的服务器

额外资源

故障排除

常见问题

  1. Linux/macOS上的权限被拒绝:确保脚本文件可执行: chmod 755 src/index.js
  2. 模块分辨率错误:确保在require/import语句中使用了正确的文件扩展名
  3. 导入错误:使用 .js require/import语句中的扩展