项目简介
template-mcp-server 是一个用于快速创建 Model Context Protocol (MCP) 服务器的模板项目。它提供了一个基础框架,帮助开发者轻松构建自定义的 MCP 服务器,以便为 AI 智能体提供上下文信息和功能扩展。
主要功能点
- 双传输协议支持: 同时支持标准输入输出 (stdio) 和 HTTP 传输协议,满足不同应用场景的需求。
- 资源管理: 允许服务器托管和管理各种资源,并向客户端提供数据访问能力。
- 工具注册与执行: 支持注册和执行外部工具,使 LLM 客户端能够调用这些工具扩展功能。
- Prompt 模板: 提供 Prompt 模板定义和渲染能力,支持定制化的 LLM 交互模式。
- TypeScript: 使用 TypeScript 开发,提供类型安全和更好的开发体验。
- MCP SDK: 基于官方 Model Context Protocol SDK 构建,保证与 MCP 协议的兼容性。
- 易于扩展: 项目结构清晰,方便开发者添加自定义的工具、资源和 Prompt 模板。
安装步骤
-
创建项目: 使用 npm 或 npx 命令创建新的 MCP 服务器项目:
npx @mcpdotdirect/create-mcp-server # 或 npm init @mcpdotdirect/create-mcp-server按照提示操作,将在当前目录下生成一个新的项目文件夹。
-
安装依赖: 进入项目文件夹,并安装项目依赖:
cd <项目文件夹名称> npm install # 或 yarn install / pnpm install / bun install
服务器配置
MCP 客户端需要配置 MCP 服务器的启动命令才能连接。以下是针对本模板项目的配置信息示例 (JSON 格式),请根据您选择的运行方式配置客户端:
Stdio 传输 (默认)
{ "serverName": "template-mcp-server-stdio", // 服务器名称,可自定义 "command": "npm", // 启动命令,使用 npm "args": ["start"] // 命令参数,运行 npm start 脚本启动 stdio 服务器 }
HTTP 传输
{ "serverName": "template-mcp-server-http", // 服务器名称,可自定义 "command": "npm", // 启动命令,使用 npm "args": ["run", "start:http"] // 命令参数,运行 npm run start:http 脚本启动 HTTP 服务器 }
配置说明:
- 'serverName': MCP 服务器的名称,用于在客户端进行标识,可以自定义。
- 'command': 启动服务器的命令,通常是包管理器命令,如 'npm'、'yarn'、'pnpm' 或 'bun'。
- 'args': 传递给启动命令的参数,用于指定要执行的脚本或命令。请根据 'package.json' 文件中的 scripts 字段配置正确的启动脚本。
基本使用方法
-
启动服务器: 根据您选择的传输协议,运行相应的命令启动 MCP 服务器:
- Stdio: 'npm start' 或 'npm run dev' (开发模式,自动重启)
- HTTP: 'npm run start:http' 或 'npm run dev:http' (开发模式,自动重启)
-
配置 MCP 客户端: 在您的 MCP 客户端中,配置上述生成的服务器配置信息,指定连接到本地运行的 MCP 服务器。
-
扩展功能: 根据您的需求,修改 'src/core' 目录下的 'resources.ts', 'tools.ts', 'prompts.ts' 文件,添加自定义的资源、工具和 Prompt 模板。然后在 'src/server/server.ts' 中注册这些扩展功能。
-
与 LLM 客户端交互: 启动客户端后,客户端将通过 MCP 协议与服务器通信,利用服务器提供的资源、工具和 Prompt 模板与 LLM 进行交互。
信息
分类
AI与计算