MCP协议服务器

一个实现模型上下文协议(MCP)的服务器,提供数学运算、GitHub API集成、文件资源访问和SQL查询解释等功能。

  • by souravrane
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 souravrane/sample-mcp

使用说明

第一台MCP服务器

模型上下文协议(MCP)服务器实现,演示工具、资源和提示。该服务器提供示例功能,包括数学运算、GitHub API集成、基于文件的资源和SQL查询解释。

特性

此MCP服务器包括:

  • 工具:用于执行操作的两个可执行工具
  • 资源:基于文件的资源访问
  • 提示词:生成内容的模板提示

工具

1. add-numbers

将两个数字相加。

参数:

  • a (number):第一个数字
  • b (number):第二个数字

例子:

{
  "a": 5,
  "b": 3
}

退货: 这两个数字的总和。

2. get-github-repos

获取GitHub用户的存储库及其描述。

参数:

  • username (string):GitHub用户名

例子:

{
  "username": "octocat"
}

退货: 存储库及其名称和描述的列表。

资源

apartment-rules

从当地文件中提供公寓生活规则的资源(src/data/rules.doc).

URI: mcp://apartment-rules/data/rules.doc

说明: 任何公寓的居住规则,包括噪音、清洁、客人和一般行为准则。

提示词

explain-sql

生成一个提示模板,用简单的术语解释SQL查询。

论据:

  • sql (string):要解释的SQL查询

例子:

{
  "sql": "SELECT * FROM users WHERE age > 18"
}

退货: 一条用户消息,以易于理解的方式提示对SQL查询的解释。

安装

  1. 克隆存储库:
git clone <repository-url>
cd first-mcp
  1. 安装依赖项:
npm install

建筑

将TypeScript编译为JavaScript:

npm run build

编译后的输出将在 build/ 目录。

用法

此MCP服务器旨在与MCP兼容的客户端(如Claude Desktop、Cursor或其他MCP客户端)一起使用。

运行服务器

构建后,服务器可以通过stdio传输运行。配置您的MCP客户端以使用:

{
  "mcpServers": {
    "first-mcp": {
      "command": "node",
      "args": ["build/index.js"]
    }
  }
}

项目结构

first-mcp/
├── src/
│   ├── data/
│   │   └── rules.doc          # Apartment rules data file
│   └── index.ts               # Main server implementation
├── build/                     # Compiled JavaScript output
├── package.json
├── tsconfig.json
└── README.md

依赖项

  • @模型上下文协议/sdk:用于构建服务器的MCP SDK
  • 黄道带:工具和提示参数的模式验证
  • TypeScript:类型安全的JavaScript开发

发展

该项目使用具有严格类型检查的TypeScript。源文件位于 src/,编译后的输出将转到 build/.

TypeScript配置

  • 目标:ES2022
  • 模块:Node16
  • 严格模式已启用
  • 输出目录: ./build
  • 源目录: ./src

许可证

国际协调委员会

版本

1.0.0