mcpField
A
Apidog Tests Mcp

Apidog Tests Mcp

本地服务
github.com/acabala开发工具123 周前更新

关于 Apidog Tests Mcp

面向 Apidog API 测试管理的非官方 MCP 服务,可由 AI 助手读写测试用例、场景、套件和测试数据。它还提供环境、端点及覆盖率等只读查询工具。

主要功能

  1. 01增删改查测试用例
  2. 02创建多步骤测试场景
  3. 03管理测试套件与文件夹
  4. 04管理 CSV 测试数据
  5. 05查询端点与覆盖率信息

适用场景

  1. 01为 API 端点批量创建测试用例
  2. 02组织并维护可运行的测试套件
  3. 03构建包含多次 API 调用的测试场景
  4. 04查看环境及测试覆盖统计

MCP 相关

该 MCP 服务将 Apidog 测试管理功能作为工具提供给 MCP 客户端,支持测试对象的读写操作及环境、端点等只读查询。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"apidog-tests": {
"command": "npx",
"args": [
"-y",
"apidog-tests-mcp"
],
"env": {
"APIDOG_ACCESS_TOKEN": "<APIDOG_ACCESS_TOKEN>",
"APIDOG_PROJECT_ID": "<APIDOG_PROJECT_ID>",
"APIDOG_BRANCH_ID": "<APIDOG_BRANCH_ID>",
"APIDOG_DEVICE_ID": "<APIDOG_DEVICE_ID>"
}
}
}
}
启动命令npx -y apidog-tests-mcp
需要配置的环境变量
APIDOG_ACCESS_TOKEN密钥
APIDOG_PROJECT_ID
APIDOG_BRANCH_ID
APIDOG_DEVICE_ID

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmapidog-tests-mcp

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

apidog-tests-mcp

用于管理 Apidog 测试用例、场景、套件和测试数据的 MCP(Model Context Protocol)服务。为 AI 助手提供对 Apidog 测试管理功能的完整读写权限。

此项目并非 Apidog 官方集成。

功能

  • 测试用例 -- 为 API 端点创建、读取、更新、删除测试用例,也可批量创建
  • 测试场景 -- 构建由多个 API 调用串联而成的多步骤测试流程
  • 测试套件 -- 将测试整理为可在 CI/CD 中运行的套件
  • 测试数据 -- 使用 CSV 格式的数据管理数据驱动测试迭代
  • 文件夹 -- 将场景和套件整理到嵌套文件夹结构中
  • 只读工具 -- 列出环境、端点、类别、标签、运行器和覆盖率统计数据

文档

  • docs/PRACTICAL-USAGE.md -- 创建稳定的测试用例、场景和套件的成熟模式
  • SECURITY.md -- 漏洞报告和安全使用指南
  • CONTRIBUTING.md -- 贡献工作流
  • CHANGELOG.md -- 发行说明

安装

npm install -g @acabala/apidog-tests-mcp

或者使用 npx 直接运行:

npx @acabala/apidog-tests-mcp

配置

此服务需要设置以下环境变量:

变量必需描述
APIDOG_ACCESS_TOKEN是你的 Apidog 访问令牌
APIDOG_PROJECT_ID是Apidog 项目 ID
APIDOG_BRANCH_ID是要使用的分支 ID
APIDOG_BASE_URL否覆盖 API 基础 URL(默认值:https://api.apidog.com/api/v1)
MCP 客户端配置

添加到 MCP 客户端配置中(例如 Claude Desktop 的 claude_desktop_config.json):

{
	"mcpServers": {
		"apidog-tests": {
			"command": "npx",
			"args": ["@acabala/apidog-tests-mcp"],
			"env": {
				"APIDOG_ACCESS_TOKEN": "your-token",
				"APIDOG_PROJECT_ID": "your-project-id",
				"APIDOG_BRANCH_ID": "your-branch-id"
			}
		}
	}
}
推荐的令牌实践
  • 使用专用令牌进行自动化操作。
  • 将访问范围限制为所需的最少 Apidog 项目。
  • 定期轮换令牌。
  • 将 MCP 客户端配置文件保存在本地并妥善保管。

可用工具

只读
工具描述
list_environments列出所有环境及其基础 URL
list_api_endpoints列出 API 端点树(可按模块和名称筛选)
list_test_case_categories列出测试用例类别
list_test_case_tags列出可用标签
list_runners列出可自托管的测试运行器
get_endpoint_statistics获取测试覆盖率统计数据
测试用例
工具描述
list_test_cases列出所有测试用例(可按端点筛选)
get_test_case获取完整的测试用例详情
create_test_case为端点创建测试用例
create_test_cases_bulk一次创建多个测试用例
update_test_case更新测试用例(先 GET 再合并)
delete_test_case删除测试用例
测试场景
工具描述
list_test_scenarios列出场景及其文件夹结构
get_test_scenario_steps获取场景的步骤
create_test_scenario创建多步骤测试场景
update_test_scenario_steps设置/替换场景步骤
delete_test_scenario删除场景
测试套件
工具描述
list_test_suites列出套件及其文件夹结构
get_test_suite获取套件完整详情
create_test_suite创建测试套件
update_test_suite_items设置套件项(静态/动态分组)
delete_test_suite删除套件
测试数据
工具描述
list_test_data列出测试用例的测试数据记录
get_test_data获取包含 CSV 行和列的测试数据
create_test_data为测试用例创建测试数据
update_test_data更新测试数据(先 GET,再合并)
delete_test_data删除测试数据记录
文件夹
工具描述
create_scenario_folder创建场景文件夹
delete_scenario_folder删除场景文件夹
create_suite_folder创建套件文件夹

开发

# Install dependencies
npm install

# Run in development mode
npm run start:dev

# Type check
npm run typecheck

# Format
npm run format

# Run tests
npm test

# Run tests with coverage
npm run test:coverage

# Build for production
npm run build

安全

  • 使用具有最低所需权限的专用自动化令牌。
  • 切勿提交 APIDOG_ACCESS_TOKEN 或特定于环境的 ID。
  • 妥善保管本地 MCP 客户端配置文件。
  • 有关报告和响应政策,请参阅 SECURITY.md。

发布和版本管理

此代码库使用 Changesets 和 GitHub Actions 发布工作流:

  • 对用户可见的更改,请添加一个 changeset:npm run changeset
  • 发布自动化会在 main 上创建/更新版本 PR
  • 合并发布 PR 后,会通过 npm 发布并附带来源证明

开源指南

  • 贡献指南:CONTRIBUTING.md
  • 行为准则:CODE_OF_CONDUCT.md
  • 更新日志:CHANGELOG.md

实用技巧

  • 创建包含路由参数的测试用例时,始终提供 path 和 parameters.path。
  • 对于更新操作,优先使用此服务的合并式工具,而不是原始的完整替换负载。
  • 使用 customScript 后处理器进行断言,避免声明式断言导致运行器问题。
  • 完整示例请参阅 docs/PRACTICAL-USAGE.md。

项目结构

src/
  index.ts          Entry point, registers tools and starts MCP server
  client.ts         ApidogClient HTTP wrapper with auth headers
  types.ts          Shared TypeScript interfaces and MCP result helpers
  errors.ts         Custom error classes (ApidogApiError, ApidogConfigError)
  schemas.ts        Shared Zod schemas for request parameters
  tools/
    read.ts         Read-only tools (environments, endpoints, categories, etc.)
    test-cases.ts   Test case CRUD tools
    test-scenarios.ts  Test scenario CRUD tools
    test-suites.ts  Test suite CRUD tools
    test-data.ts    Test data CRUD tools
    folders.ts      Folder management tools

许可证

MIT 许可证

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。