MCP状态示例
一个最小的、完全符合MCP的服务器和客户端设置,用于使用 模型上下文协议(MCP).
特性
- 玩具状态MCP服务器:实现具有会话处理功能的最小MCP服务器
- 测试工具:包括
imagine和isLessThan用于测试会话状态的工具 - 集成测试:基于Python的测试,用于验证服务器行为和会话持久性
- 健康检查:内置
/health用于监视服务器状态的端点
先决条件
- Node.js 18+
- Python 3.8+(用于集成测试)
- npm或纱线
入门指南
- 克隆存储库
- 安装Node.js依赖项:
npm install- 安装Python依赖项以进行集成测试:
pip install -r test/integration/requirements.txt- 创建一个
.env.test项目根目录中的文件,内容如下:
PORT=3088- 启动开发服务器:
npm run dev运行测试
单元测试
npm test集成测试
# Run all integration tests
npm run itest
# Or run a specific test
cd test/integration
python test_initialize.py项目结构
src/-源代码
- server/ -MCP服务器实现 - tools/ -工具定义 - client/ -测试客户端实现
test/-测试文件
- integration/ -基于Python的集成测试
scripts/-构建和实用程序脚本
可用工具
imagine
在指定的下限和上限之间选择一个随机数,并将其存储在会话中。
参数:
lower:下限(含)upper:上限(含)
isLessThan
检查当前会话中的数字是否小于之前想象的数字。
参数:
number:要与想象中的数字进行比较的数字
API终点
GET /health
返回服务器状态的健康检查终结点。
POST /mcp
用于处理MCP兼容请求的主MCP协议端点。
环境变量
PORT:服务器将侦听的端口号(默认值:3000)NODE_ENV:环境模式(例如“开发”、“生产”)
许可证
国际协调委员会
