使用说明
🔌 MCP工具服务器-AI代理工具包
一个强大且可扩展的模型上下文协议(MCP)服务器,使AI代理能够与外部工具和服务进行交互。该实现提供了一个任务管理系统,演示了如何为AI助手构建和部署MCP兼容的工具。
🌟 什么是MCP?
模型上下文协议(MCP)是一种标准,允许AI模型与外部工具、数据源和服务进行交互。该服务器实现了MCP规范,使Claude和GPT等AI助手能够通过标准化的接口执行现实世界的操作。
✨ 特性
- MCP兼容工具:即用型AI助手工具
- 任务管理系统:创建、列出和完成任务
- 双接口:同时使用MCP stdio模式和HTTP API
- 可扩展架构:轻松添加新工具和功能
- 开发者友好:清晰的文件和示例
- 轻量级:内存存储,用于快速设置和测试
🛠️ 可用工具
1.创建任务
创建一个带有标题和描述的新任务。
参数:
title:String(必填)-任务的标题description:String(必填)-任务的描述
2.列出任务
列出当前存储在内存中的所有任务。
参数:
status:String(可选)-按状态筛选:“全部”、“待处理”或“已完成”
3.未决任务
列出所有待处理的任务。
参数: 无
4.完成任务
将特定任务标记为已完成。
参数:
id:String(必填)-要标记为已完成的任务的ID
🚀 入门指南
先决条件
- Node.js(v18或更高版本)
- npm或纱线
安装
- 克隆存储库:
git clone https://github.com/yourusername/mcp-server.git
cd mcp-server
- 安装依赖项:
npm install
- 构建TypeScript代码:
npm run build
🏃♂️ 运行服务器
MCP模式(适用于AI助手)
npm start
这将在stdio模式下运行服务器,使其与Claude for Desktop等MCP客户端兼容。
HTTP模式(适用于Web应用程序)
npm run http
默认情况下,HTTP服务器在端口3000上运行。您可以在以下网址访问它 http://localhost:3000.
使用自定义端口 PORT 环境变量:
PORT=8080 npm run http
🌐 HTTP API终结点
任务
POST /api/tasks
请求正文:
{
"title": "Task title",
"description": "Task description"
}
列出所有任务
GET /api/tasks?status=[all|pending|completed]
列出待处理任务
GET /api/tasks/pending
完成任务
PATCH /api/tasks/:id/complete
直接执行MCP工具
POST /api/mcp/execute
请求正文:
{
"tool": "tool-name",
"params": {
"param1": "value1",
"param2": "value2"
}
}
🔮 构建自己的MCP工具
此服务器提供了一个模板,用于创建自己的MCP兼容工具。要添加新工具,请执行以下操作:
- 在中定义您的工具
src/tools目录 - 在工具注册表中注册
- 执行必要的逻辑
- 如果需要,请更新HTTP API
查看现有工具,了解如何构建实现的示例。
🧪 使用AI助手进行测试
- 在MCP模式下启动服务器:
npm start - 使用MCP兼容的AI助手连接到服务器
- 人工智能现在可以使用可用的工具来管理任务:
- 创建任务:
create-task带有标题和描述 - 列出所有任务:
list-tasks - 完成任务:
complete-task带有任务ID
- 创建任务:
🔄 与Web客户端集成
此服务器与 agent-client-example 该项目提供了一个与人工智能助手和MCP工具交互的web界面。
📋 未来的增强功能
- 持久存储选项(MongoDB、PostgreSQL)
- 认证与授权
- 其他工具类别(文件管理、网络搜索等)
- WebSocket支持实时更新
- 工具执行指标和日志记录
📄 许可证
麻省理工学院
赋予人工智能代理真实世界的能力 🤖✨