使用说明
mcp玩笑
模型上下文协议(MCP)服务器的自动测试。 使用类似Jest的语法测试您的AI代理工具,验证协议合规性,并与CI/CD集成。
- 🧪 测试工具、资源和提示 --MCP服务器功能的自动验证
- 📦 零配置 --适用于任何MCP服务器(stdio、HTTP、SSE)
- ✅ 协议验证 --检查MCP是否符合详细评分
- 🚀 CI/CD就绪 --GitHub Actions、Jenkins、CircleCI集成
- 📸 快照测试 --捕获并比较随时间变化的输出
安装
npm install mcp-jest # Project dependency
npm install -g mcp-jest # Or globally for CLI
用它
在30秒内测试您的MCP服务器:
mcp-jest node ./server.js --tools search,email
或者使用JavaScript API:
import { mcpTest } from 'mcp-jest';
const results = await mcpTest(
{ command: 'node', args: ['./server.js'] },
{ tools: ['search', 'email'] }
);
console.log(`${results.passed}/${results.total} tests passed`);
什么是MCP?
模型上下文协议(MCP) 是Anthropic的开放标准,允许AI助手(Claude、ChatGPT、Gemini)连接到外部工具、数据库和API。MCP Jest测试这些连接。
为什么选择MCP Jest?
您构建了一个MCP服务器。但你怎么知道它有效?
- 手动测试速度慢且容易出错
- 无声的失败破坏了人工智能工作流程
- MCP没有本机CI/CD集成
- 调试生产故障很困难
MCP Jest解决了这个问题 通过自动化、可重复的测试。
特征
核心测试
- 自动化测试 -编写一次测试,在任何地方运行它们
- 全面覆盖 -测试连接、工具、资源和提示
- 灵活的期望 -简单字符串或自定义验证函数
- CI/CD就绪 -适用于GitHub Actions、Jenkins、CircleCI等。
高级功能
- 快照测试 -捕获并比较MCP输出随时间的变化
- 测试过滤 -使用以下工具运行特定测试
--filter和--skip - 观看模式 -文件更改时自动重新运行测试
- HTML报告 -生成美观、可共享的测试报告
运输支持
- 标准 -本地服务器的默认传输
- HTTP流 -测试远程HTTP服务器
- 上海证券交易所 -服务器发送事件支持
开发者工具
- 自动发现 -自动发现并生成所有功能的测试
- 协议验证器 -检查MCP是否符合详细评分
- GitHub行动 -本机CI/CD集成
CLI快速参考
| 命令 | 描述 |
|---|---|
mcp-jest node ./server.js --tools search |
测试专用工具 |
mcp-jest --config test.json |
使用配置文件 |
mcp-jest discover node ./server.js |
自动发现功能 |
mcp-jest validate node ./server.js |
检查协议合规性 |
mcp-jest watch node ./server.js --tools search |
观看模式 |
常用选项
| 选项 | 描述 |
|---|---|
-t, --tools <tools> |
逗号分隔的测试工具 |
-c, --config <file> |
配置文件路径 |
--timeout <ms> |
测试超时(默认值:30000) |
-u, --update-snapshots |
更新快照文件 |
--reporter html |
生成HTML报告 |
看 CLI参考 对于所有选项。
示例:CI/CD集成
# .github/workflows/test.yml
- name: Test MCP Server
run: |
npm install -g mcp-jest
mcp-jest node ./dist/server.js --tools "search,analyze"
示例:配置文件
{
"server": {
"command": "node",
"args": ["./server.js"]
},
"tests": {
"tools": {
"search": {
"args": { "query": "test" },
"expect": "content.length > 0"
}
},
"timeout": 30000
}
}
文档
| 指南 | 说明 |
|---|---|
| 入门指南 | 分步设置指南 |
| CLI参考 | 完整的CLI文档 |
| API 参考 | API库文档 |
| 例子 | 真实世界的例子 |
| 建筑 | MCP Jest的工作原理 |
| 故障排除 | 常见问题和解决方案 |
功能指南
需求
- Node.js 18+
- MCP服务器 实施 模型上下文协议
贡献
我们欢迎捐款!看 贡献.md 作为指导方针。
git clone https://github.com/josharsh/mcp-jest.git
cd mcp-jest
npm install
npm run dev
npm test
安全
看 安全.md 用于我们的安全策略和漏洞报告。
用例
MCP Jest非常适合:
- MCP服务器开发人员 -部署前测试您的工具、资源和提示
- AI应用团队 -确保您的MCP集成正常工作
- DevOps/SRE -将MCP服务器测试添加到CI/CD管道
- 开源MCP项目 -为社区贡献提供可靠的测试
与其他工具的比较
| 功能 | MCP Jest | 手动测试 | 通用测试框架 |
|---|---|---|---|
| MCP协议支持 | 本机 | 手动 | 需要自定义设置 |
| 自动发现 | 是 | 否 | 否 |
| 快照测试 | 是 | 否 | 各不相同 |
| 方案验证 | 是 | 否 | 否 |
| CI/CD集成 | 内置 | 手动 | 各不相同 |
支持
相关技术
- 模型上下文协议(MCP) -协议标准
- @模型上下文协议/sdk -官方MCP SDK
- 克劳德 -Anthropic的人工智能助手,支持MCP
- 玩笑 -JavaScript测试框架(MCP Jest的灵感来源)
许可证
MIT许可证-在商业和开源项目中自由使用。
项目状态
关键词:mcp测试、模型上下文协议测试、mcp服务器测试、ai代理测试、llm测试、claude mcp、chatgpt-mcp、mcp工具测试、mcp-validator、人因mcp、测试mcp服务器、mcp-ci-cd、自动化mcp测试
