
MCP Server Boilerplate (TypeScript)

2025.04.09
1
TypeScript开发工具模板项目开发效率
MCP Server Boilerplate 是一个基于 TypeScript 的模板项目,旨在加速 Model Context Protocol (MCP) 服务器的开发。它提供了结构良好、可维护且可扩展的代码基础,集成了现代开发工具和最佳实践,适用于快速构建 MCP 集成服务。
View on GitHub
Overview
基本能力
产品定位
MCP Server Boilerplate 是一个用于快速构建 MCP 服务器的模板项目,适用于开发人员快速搭建符合 MCP 协议的服务端应用。
核心功能
- TypeScript 支持:使用现代、类型安全的 JavaScript 开发。
- MCP SDK 集成:内置官方
@modelcontextprotocol/sdk
支持。 - 基础工具示例:包括
greet
(可配置前缀的问候工具)和add
(简单计算器工具)。 - 资源管理:提供
welcome
欢迎消息资源示例。 - 提示功能:包含
summarize
主题摘要提示示例。 - 配置管理:通过
.env
文件和环境变量加载配置。 - 输入验证:使用
zod
进行参数验证。 - 结构化日志:使用
pino
记录结构化日志,开发环境下日志可读性高。 - 错误处理:自定义错误类和一致的
try/catch
模式。 - 容器化支持:提供多阶段
Dockerfile
用于生产环境镜像构建。 - 代码质量工具:集成 ESLint 和 Prettier 进行代码格式化和检查。
- 测试支持:使用 Vitest 进行单元测试。
适用场景
- 快速开发符合 MCP 协议的服务端应用
- 为 AI 助手提供自定义工具
- 构建可扩展的后端服务
- 开发与 Cursor 等工具集成的服务
工具列表
greet
:可配置前缀的问候工具add
:简单计算器工具summarize
:主题摘要提示工具welcome
:欢迎消息资源
常见问题解答
- JSON-RPC 协议问题:所有调试日志必须写入 stderr,stdout 仅用于 JSON-RPC 消息。
- 工具名称前缀:Cursor 会自动为工具名称添加前缀,避免手动注册带前缀的工具名称。
- MCP 工具调用:工具由 AI 助手调用,用户无法直接在聊天界面调用。
使用教程
使用依赖
- Node.js (v18 或更高版本)
- npm (通常随 Node.js 一起安装)
- Docker (可选,用于容器化运行)
安装教程
- 克隆仓库:
git clone <repository-url>
cd mcp-server-boilerplate
- 安装依赖:
npm install
- 配置环境(可选):
cp .env.example .env
调试方式
- 开发模式(带热重载):
npm run dev
- 生产模式:
npm run build
npm start
- 使用 Docker 运行:
docker build -t mcp-server-boilerplate .
docker run -i --rm --name mcp-server-stdio mcp-server-boilerplate