MCP协议自动化测试工具

一个用于自动化测试Model Context Protocol (MCP)服务器的工具,支持Jest-like语法、协议验证和CI/CD集成。

  • by ReallyArtificial
  • TypeScript
  • 本地部署
  • 18 星标
  • 更新于
在 GitHub 查看 josharsh/mcp-jest

使用说明

mcp玩笑

模型上下文协议(MCP)服务器的自动测试。 使用类似Jest的语法测试您的AI代理工具,验证协议合规性,并与CI/CD集成。

  • 🧪 测试工具、资源和提示 --MCP服务器功能的自动验证
  • 📦 零配置 --适用于任何MCP服务器(stdio、HTTP、SSE)
  • ✅ 协议验证 --检查MCP是否符合详细评分
  • 🚀 CI/CD就绪 --GitHub Actions、Jenkins、CircleCI集成
  • 📸 快照测试 --捕获并比较随时间变化的输出

麻省理工学院许可· npm · GitHub


安装

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的工作原理
故障排除 常见问题和解决方案

功能指南

需求

贡献

我们欢迎捐款!看 贡献.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集成 内置 手动 各不相同

支持

相关技术

许可证

MIT许可证-在商业和开源项目中自由使用。


项目状态


专为MCP生态系统打造 | 文档 | 例子 | 贡献


关键词:mcp测试、模型上下文协议测试、mcp服务器测试、ai代理测试、llm测试、claude mcp、chatgpt-mcp、mcp工具测试、mcp-validator、人因mcp、测试mcp服务器、mcp-ci-cd、自动化mcp测试