使用说明
TypeScript MCP服务器骨架
建筑骨架工程 模型上下文协议(MCP)服务器 在TypeScript中。此模板提供了一个功能齐全的MCP服务器,由 FastMCP 这可以作为构建自己的MCP集成的起点。
特性
- ✅ 支持HTTP流媒体的FastMCP服务器
- ✅ 文档搜索和检索的示例工具
- ✅ 内置身份验证和会话管理
- ✅ Docker容器化用于开发和测试
- ✅ TypeScript用于类型安全和开发人员体验
- ✅ 使用Jest的全面测试套件
- ✅ ESLint和Prettier用于代码质量
什么是MCP?
模型上下文协议(MCP)允许AI助手安全地连接到数据源和工具。此框架可帮助您构建可以为AI客户端提供工具和资源的MCP服务器。
快速开始
先决条件
- Node.js 18+(见
.nvmrc如果使用nvm) - Docker(可选,用于容器化)
地方发展
-
克隆和设置:
git clone https://github.com/your-username/mcp-typescript-skeleton.git cd mcp-typescript-skeleton npm install -
构建项目:
npm run build -
启动服务器:
# For development with live reload npm run start:dev # For production mode npm run start -
访问您的MCP服务器:
- FastMCP HTTP流媒体:
http://localhost:8081/mcp⭐ (适用于MCP客户) - 健康检查:
http://localhost:8080/health - 察看连接信息:
http://localhost:8080/info
- FastMCP HTTP流媒体:
-
测试您的服务器:
npm test -
打开你的代码:
npm run lint
Docker开发
你也可以在Docker容器中运行服务器:
-
构建Docker镜像:
./build.sh -
运行容器:
./container-run.sh服务器将在与上述相同的URL上可用。
项目结构
src/
├── index.ts # Main server entry point
├── router.ts # HTTP API routes
├── controllers/ # HTTP API controllers
│ └── McpProviderController.ts
├── mcp-server/ # FastMCP server implementation
│ └── index.ts # MCP tools and server setup
├── utils/ # Utility functions
│ ├── auth-context.ts # Authentication utilities
│ └── request-timeout.ts # Request timeout handling
└── __tests__/ # Test files
可用工具
骨架包括以下示例MCP工具:
add-添加两个数字(简单示例)
自定义您的MCP服务器
-
更新服务器配置 在
src/mcp-server/index.ts:- 更改服务器名称和描述
- 更新您的用例说明
-
添加您自己的工具 按照以下模式
src/mcp-server/index.ts:server.addTool({ name: 'yourToolName', description: 'What your tool does', parameters: z.object({ // Define your parameters with Zod schema }), execute: async (args, { session }) => { // Your tool logic here return 'Tool result'; }, }); -
更新package.json:
- 更改名称、描述和存储库URL
- 更新作者字段
认证
服务器包括基于会话的身份验证。API令牌可以通过 api-token header,并将按会话存储,以便在您的工具中使用。
环境变量
PORT-主服务器端口(默认:8080)MCP_PORT-FastMCP服务器端口(默认:8081)NODE_ENV-环境模式(开发/生产)
测试
该项目包括综合测试:
# Run all tests
npm test
# Run tests in watch mode
npm run test:watch
部署
建设生产项目:
npm run build
npm start
构建的文件将位于 dist/ 目录。
贡献
- 复刻仓库
- 创建要素分支
- 进行更改
- 添加新功能的测试
- 跑
npm run lint和npm test - 提交拉取请求
许可证
MIT许可证-有关详细信息,请参阅许可证文件
资源
- FastMCP框架 -支持此服务器的框架
- MCP协议规范 -MCP官方文件
- MCP TypeScript SDK -官方SDK
