MCP服务器开发学习工具

一个基于TypeScript的MCP服务器开发学习项目,支持HTTP和Stdio两种传输模式,包含Echo和计算器等示例工具,适用于协议开发学习和研究。

  • by fupingyezi
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 fupingyezi/MCP-Server-Study

使用说明

MCP-Server-Study

MCP Server Study

这是一个用于学习和研究 Model Context Protocol (MCP) 服务器开发的 TypeScript 项目。

功能特性

  • 基于 TypeScript 的 MCP 服务器实现
  • 支持 HTTP 和 Stdio 两种传输模式
  • 包含示例工具:Echo 和计算器
  • 完整的开发环境配置
  • 代码结构清晰,采用面向对象的继承机制

内置工具

1. Echo 工具

  • 名称: echo
  • 描述: 回显输入的消息
  • 参数:
    • message (string): 要回显的消息

2. 计算器工具

  • 名称: calculate
  • 描述: 执行基本数学计算
  • 参数:
    • expression (string): 数学表达式(支持 +, -, *, /, 括号)

开发环境设置

安装依赖

npm install

编译项目

npm run build

开发模式(热重载)

npm run dev

启动生产服务器

HTTP 模式

npm run start:http

Stdio 模式

npm run start:stdio

测试服务器功能

npm test

测试 HTTP 模式

npm run test:http

测试 Stdio 模式

npm run test:stdio

项目结构

src/
├── index.ts              # 入口文件
├── test-client.ts        # 测试客户端
├── server/
│   ├── BaseMcpServer.ts  # MCP 服务器基类
│   ├── HttpMcpServer.ts  # HTTP 传输模式服务器
│   └── StdioMcpServer.ts # Stdio 传输模式服务器
└── types/                # 类型定义

使用方法

作为独立服务器运行

npm start

在 Claude Desktop 中使用

将以下配置添加到 Claude Desktop 的配置文件中:

{
  "mcpServers": {
    "study-server": {
      "command": "node",
      "args": ["E:/project/arc/AI/protocol/MCP-Server-Study/dist/index.js"],
      "env": {}
    }
  }
}

技术栈

  • 语言: TypeScript
  • MCP SDK: @modelcontextprotocol/sdk
  • 数据验证: Zod
  • 构建工具: TypeScript Compiler
  • 开发工具: nodemon, ts-node

学习资源

许可证

ISC