Token导航 LogoToken导航TokenDH.com
MCP API Tester logo
开发工具未说明官方级别未说明来源级核验

MCP API Tester

MCP Server

mcp server for llm to test api

工具数

3

提示词数

0

GitHub Stars

0

资源数

0
开发工具API测试Go自动化测试LLM工具

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

TinyMurky

提供方

TinyMurky

最后核验

2026/5/18 02:51

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

mcp-api测试工具和接口

本文档总结了使LLM(大型语言模型)能够执行自动化API测试的潜在工具或接口。通过利用这些工具,LLM可以阅读API文档,使用 net/http,并帮助开发人员快速识别潜在问题。

核心工具(最小可行工具)

以下三个工具是最基本和最重要的接口,允许LLM进行 最小可行 自动化测试:

  1. listAllAPI来自文档

- 目的:列出文档中的所有可用API(名称、URL、HTTP方法等)。 - 示例示例返回值可能如下:

     [
       { "name": "getUser", "method": "GET", "url": "/users/{id}" },
       { "name": "createUser", "method": "POST", "url": "/users" }
       ...
     ]

- 当LLM使用它时:浏览可用的API并选择要测试的API。

  1. getSingleAPI详细信息

- 目的:按名称或路径检索特定API的详细文档,例如: - 请求参数(查询、路径、正文等) - 响应结构(模式) - 可能的状态代码和错误定义 - 示例示例返回值可能如下:

     {
       "name": "getUser",
       "method": "GET",
       "url": "/users/{id}",
       "parameters": [
         { "in": "path", "name": "id", "type": "string", "required": true }
       ],
       "responses": {
         "200": {
           "description": "Returns user data on success",
           "schema": { ... }
         },
         "404": {
           "description": "User not found"
         }
       }
     }

- 当LLM使用它时:为特定终点生成测试参数和预期响应。

  1. callNetHTTP

- 目的:允许LLM发送真实的HTTP请求并接收结果(状态代码、标头、正文)。 - 示例:

     {
       "request": {
         "method": "POST",
         "url": "/users",
         "headers": { "Content-Type": "application/json" },
         "body": { "name": "NewUser", "age": 30 }
       },
       "response": {
         "status": 201,
         "headers": { ... },
         "body": { "id": "123", "name": "NewUser", "age": 30 }
       }
     }

- 当LLM使用它时:执行测试调用,并将实际结果与预期结果进行比较。

______________________________________________________________________

高级建议工具(增强工具)

这些工具不是强制性的,但它们可以显著改善自动化测试、报告、环境设置等。

1.响应验证/解析工具

  1. 架构验证

- validateResponseWithSchema(responseBody, schemaInfo) -> (isValid, errorList) - 将返回的JSON正文与记录的模式进行比较,以检查字段一致性、数据类型和任何必需的字段。

  1. JSON解析

- parseJSON(responseBody) -> (parsedObject) - 使LLM能够方便地读取和检查响应中的特定字段(例如,确认某些字段不是空的)。

2.测试执行的上下文/日志工具

  1. 测试结果记录/存储

- storeTestResult(testCase, response, passOrFail, errorMessage) - 让LLM记录每个测试用例的执行细节、错误和结果,从而更容易编译报告。

  1. 历史测试结果

- getTestHistory(apiName or endpoint) -> (historyData) - 允许LLM(或其他系统)查询同一端点的过去测试结果,并了解随时间的回归或变化。

3.环境设置/管理工具

  1. 身份验证/凭据设置

- getAuthToken(username, password) -> token - 某些API需要令牌或cookie进行身份验证。LLM可能需要首先调用此工具以获取正确的凭据。

  1. 重置/初始化测试数据

- resetTestData()seedTestData() - 在测试开始之前,确保数据库或系统状态处于已知的默认状态。

4.模糊/边缘案例测试工具

  • generateFuzzyInput(字段类型,约束)
  • 返回用于压力测试和安全检查的极端或异常输入(例如负值、极大值、随机字符、特殊符号)。

______________________________________________________________________

推荐开发流程

  1. 整合最小可行工具

1. 实施 listAllAPIFromDocument, getSingleAPIDetail,以及 callNetHTTP 在您的系统中,LLM可以: - 获取可用端点列表 - 获取给定API的详细规范 - 发出真正的HTTP请求

  1. 连接LLM

- 使LLM能够使用上述三个工具。它可以列出潜在的端点,检索每个端点的详细信息,生成测试场景,最后通过以下方式运行它们 callNetHTTP.

  1. 添加验证工具(响应/架构)

- 提供实用程序,让LLM验证返回的数据是否与记录的模式和期望相匹配。

  1. 扩展测试日志和环境管理

- 提供用于存储测试结果、查询历史测试、重置环境和检索身份验证令牌的接口。 - LLM可以调用这些工具来维护测试过程的一致状态和文档。

  1. 模糊/边缘案例测试

- 集成一个工具来生成恶意或极端值,或者让LLM自动生成它们以进行深入的压力或安全测试。

______________________________________________________________________

重要提示

  • 安全和权限

- 当LLM调用API时,请确保这些测试在安全的环境(开发或沙箱)中运行,并且不会损害敏感数据。

  • LLM生成内容的准确性

- LLM可能会产生无效或不正确的参数。接口中可能需要额外的验证或错误处理。

  • 无法完全取代传统测试

- 虽然LLM可以快速生成边界和异常测试用例,但传统的单元测试对于全面覆盖仍然至关重要。

测试

readopenapidocument
curl -X POST --data '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
  "name": "ReadOpenAPIDocument",
  "arguments": {
    "openAPIPath": "/absolute/path/to/your/openAPI/file"
  }
}
}' http://localhost:8000/message?sessionId=9fa4fc8c-1799-4955-a0bb-4881258f13f9
文档中列出所有API
curl -X POST --data '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
  "name": "ListAllAPIFromDocument"
}
}' http://localhost:8000/message?sessionId=9fa4fc8c-1799-4955-a0bb-4881258f13f9

目录标签

目录标签

开发工具API测试Go自动化测试LLM工具developer-tools本地部署测试工具

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP