Apifox Filter MCP Server
Provides tools for filtering, searching, and retrieving API documentation from Apifox projects, including smart search, folder browsing, tag filtering, and batch operations.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Apifox Filter MCP Serverfind all endpoints related to user management"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Apifox Filter MCP Server
一个 MCP (Model Context Protocol) Server,用于从 Apifox 精准过滤和获取 API 文档,解决官方 MCP Server 加载全量接口导致的上下文膨胀问题。
支持两种数据源模式:
Apifox 模式:通过 Apifox API Token 获取项目接口文档
URL 模式:直接从任意 OpenAPI URL 获取接口文档(无需 Apifox 认证)
功能特点
🎯 精准过滤 - 根据 URL 模式搜索接口,支持通配符和模糊匹配
🧠 智能搜索 - 支持自然语言查询,自动提取关键词并按相关度排序
📁 文件夹检索 - 支持按 Apifox 文件夹目录浏览和筛选接口
📦 按需获取 - 只获取需要的接口详情,最小化上下文占用
🏷️ 标签筛选 - 支持按标签分类获取接口列表
⚡ 智能缓存 - 本地 JSON 缓存,支持定时刷新和 Miss 时自动刷新
🔄 批量操作 - 支持批量获取多个接口详情
Related MCP server: OpenAPI Search MCP Server
配置
配置模式
本工具支持两种互斥的配置模式:
模式 | 必需配置 | 可选配置 |
Apifox 模式 |
|
|
URL 模式 |
| 无 |
注意:如果同时提供了
openapiUrl和 Apifox 配置,URL 模式优先。
Apifox 模式配置
最小配置
{
"mcpServers": {
"apifox-filter": {
"command": "npx",
"args": [
"-y",
"apifox-filter-mcp-server@latest",
"--project-id=<your-project-id>"
],
"env": {
"APIFOX_ACCESS_TOKEN": "<your-access-token>"
}
}
}
}{
"mcpServers": {
"apifox-filter": {
"command": "npx",
"args": [
"-y",
"apifox-filter-mcp-server@latest",
"--project-id=<your-project-id>",
"--branch-id=<branch-id>",
"--module-ids=<module-id-1>,<module-id-2>"
],
"env": {
"APIFOX_ACCESS_TOKEN": "<your-access-token>"
}
}
}
}URL 模式配置
适用于从 Apifox 本地服务或任意 OpenAPI URL 获取接口文档(解决 Apifox 只有只读权限用户和非 Apifox 用户使用)
支持的协议:
http:///https://- 通过 HTTP 请求获取file://- 直接读取本地文件
HTTP 示例
{
"mcpServers": {
"apifox-filter": {
"command": "npx",
"args": [
"-y",
"apifox-filter-mcp-server@latest",
"--openapi-url=http://127.0.0.1:4523/export/openapi/11?version=3.0"
]
}
}
}本地文件示例
{
"mcpServers": {
"apifox-filter": {
"command": "npx",
"args": [
"-y",
"apifox-filter-mcp-server@latest",
"--openapi-url=file:///Users/xiaou/project/openapi.json"
]
}
}
}Windows 本地文件
{
"mcpServers": {
"apifox-filter": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"apifox-filter-mcp-server@latest",
"--openapi-url=file:///D:/project/openapi.json"
]
}
}
}或使用环境变量:
{
"mcpServers": {
"apifox-filter": {
"command": "npx",
"args": ["-y", "apifox-filter-mcp-server@latest"],
"env": {
"OPENAPI_URL": "http://127.0.0.1:4523/export/openapi/11?version=3.0"
}
}
}
}windows
最小配置
{
"mcpServers": {
"apifox-filter": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"apifox-filter-mcp-server@latest",
"--project-id=<your-project-id>",
],
"env": {
"APIFOX_ACCESS_TOKEN": "<your-access-token>"
}
}
}
}{
"mcpServers": {
"apifox-filter": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"apifox-filter-mcp-server@latest",
"--project-id=<your-project-id>",
"--branch-id=<branch-id>",
"--module-ids=<module-id-1>,<module-id-2>"
],
"env": {
"APIFOX_ACCESS_TOKEN": "<your-access-token>"
}
}
}
}缓存位置说明: 设置
PROJECT_DIR后,缓存文件会自动存放在${PROJECT_DIR}/.apifox-cache/目录下。 建议将.apifox-cache添加到项目的.gitignore中。
Antigravity 配置
CACHE_DIR 必须配置,否则会报错在 Antigravity 环境中获取不到项目目录
{
"mcpServers": {
"apifox-filter": {
"command": "npx",
"args": [
"-y",
"apifox-filter-mcp-server@latest",
"--project-id=<your-project-id>",
],
"env": {
"APIFOX_ACCESS_TOKEN": "<your-access-token>",
"CACHE_DIR": "项目目录"
}
}
}
}环境变量
变量 | 说明 | 默认值 |
| OpenAPI 文档 URL(URL 模式) | - |
| Apifox 访问令牌(Apifox 模式必填) | - |
| 项目 ID(也可通过命令行参数指定) | - |
| 模块 ID 列表(逗号分隔) | - |
| 分支 ID | - |
| Apifox API 基础地址(私有部署时使用) |
|
| 用户项目目录(缓存将放在此目录下) | 当前工作目录 |
| 缓存目录(覆盖默认位置) |
|
| 定时刷新间隔(分钟),0 禁用 | 30 |
| 找不到时自动刷新 | true |
| 自动刷新冷却(秒) | 60 |
命令行参数
参数 | 说明 |
| OpenAPI 文档 URL(URL 模式) |
| Apifox 项目 ID |
| 模块 ID 列表(逗号分隔) |
| 分支 ID |
多模块和分支支持
如果你的 Apifox 项目使用了多模块或分支功能,可以通过以下参数指定:
--branch-id=<id>或APIFOX_BRANCH_ID: 指定分支 ID,默认导出主分支--module-ids=<id1,id2,...>或APIFOX_MODULE_IDS: 指定模块 ID 列表(逗号分隔),默认导出默认模块
不同的 moduleIds 和 branchId 组合会缓存到不同的文件,互不影响。
获取 Apifox Access Token
登录 Apifox
进入 账户设置 → API 访问令牌
创建新的访问令牌
可用工具
smart_search_api(推荐)
根据自然语言描述智能搜索接口,AI 的首选搜索工具。
核心能力:
自动提取中英文关键词并映射到接口路径
支持中英文混合查询
按相关度评分排序返回结果
中英文关键词映射示例:
中文 | 映射英文 |
达人 | daren, influencer, kol |
列表 | list, page |
登录 | login, auth, sign-in |
用户 | user, member, account |
订单 | order |
商品 | product, goods, item |
评分权重:
匹配类型 | 权重 |
路径直接匹配 | +15 |
路径关键词匹配 | +10 |
名称匹配 | +8 |
文件夹匹配 | +7 |
标签匹配 | +5 |
描述匹配 | +3 |
search_api
根据 URL 模式搜索接口。
支持的匹配模式:
- 精确匹配: /api/users
- 通配符: /api/users/*
- 多级通配符: /api/**
- 模糊搜索: usersget_api_detail
获取单个接口的完整文档,包括参数、请求体、响应等详细信息。
list_api_by_tag
按标签筛选接口列表。
list_api_by_folder
按 Apifox 文件夹路径筛选接口列表,支持精确和模糊匹配(仅 Apifox 模式)。
list_api_folders
列出所有 Apifox 接口文件夹目录结构(仅 Apifox 模式)。
batch_get_apis
批量获取多个接口的详细信息。
list_all_endpoints
列出所有接口的路径、方法、标签和文件夹信息(仅返回摘要)。
refresh_cache
手动刷新接口缓存,从 Apifox 重新获取最新数据。
使用示例
智能搜索(自然语言)
# 搜索达人相关接口
smart_search_api query="达人管理"
# 搜索平台列表接口
smart_search_api query="获取平台列表"
# 中英文混合查询
smart_search_api query="influencer 详情"返回示例:
{
"query": "达人平台列表",
"count": 3,
"endpoints": [
{
"path": "/daren/influencer-info/platform-list",
"method": "GET",
"name": "获取平台枚举列表",
"score": 38,
"matchReason": "路径匹配: daren; 路径匹配: platform; 路径匹配: list"
}
]
}搜索用户相关接口
search_api pattern="/api/users/*"获取特定接口详情
get_api_detail path="/api/users/{id}" method="GET"按标签获取接口
list_api_by_tag tag="用户管理"按文件夹获取接口
# 查看所有文件夹目录
list_api_folders
# 按文件夹筛选(支持模糊匹配)
list_api_by_folder folder="用户管理"
list_api_by_folder folder="用户管理/登录注册"本地测试
1. 构建项目
npm install
npm run build2. 配置 MCP
在你的 MCP 配置文件中添加以下配置(根据你使用的工具选择配置文件位置):
Claude Code (claude_desktop_config.json):
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
本地测试配置:
{
"mcpServers": {
"apifox-filter": {
"command": "node",
"args": [
"D:/code/apifox-filter-mcp-server/dist/index.js",
"--project-id=<your-project-id>"
],
"env": {
"APIFOX_ACCESS_TOKEN": "<your-access-token>"
}
}
}
}注意:将
D:/code/apifox-filter-mcp-server替换为你的实际项目路径,<your-project-id>和<your-access-token>替换为真实值。
3. 获取 Apifox 配置信息
获取 Project ID:
登录 Apifox,打开你的项目
在项目设置或 URL 中可以找到项目 ID(通常是一个数字)
获取 Access Token:
登录 Apifox
点击右上角头像 → 账号设置
选择 API 访问令牌
创建新的访问令牌
4. 重启 Claude Code
配置完成后,重启 Claude Code 使配置生效。
开发
# 安装依赖
npm install
# 开发模式(监听文件变化)
npm run dev
# 构建
npm run build
# 类型检查
npm run typecheck技术栈
TypeScript
@modelcontextprotocol/sdk - MCP 官方 SDK
undici - HTTP 客户端
tsup - 构建工具
许可证
MIT
Available Tools
9 toolsbatch_get_apis批量获取接口C
批量获取多个接口的详细信息
| Name | Required | Description | Default |
|---|---|---|---|
| paths | Yes | 接口路径数组 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It offers no behavioral context beyond restating the function—no mention of read-only nature, path limits, or result structure. It is essentially a tautology.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundancy. It is front-loaded and appropriately sized for a simple tool, though it lacks supporting details that would make it more useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and sparse annotations, the description leaves significant gaps: it does not describe the return format, error behavior, or how it differs from getting a single API detail. The tool is simple, but the description is too thin to be complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100% for the single parameter 'paths', which is described as an array of interface paths. The description adds no additional semantics, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs a batch retrieval of detailed information for multiple APIs, using the specific verb '批量获取' and resource '多个接口的详细信息'. It distinguishes from get_api_detail which is singular, though it does not name alternatives explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like get_api_detail or smart_search_api. The batch nature is implied but there are no explicit exclusions or context for choosing this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_api_detail获取接口详情A
获取单个接口的完整文档。
使用指引:
已经知道接口路径时,直接传 path 获取详情
先用 search_api 查到候选,再用本工具精确查看参数/请求体/响应/示例
method 可选,未提供时返回该 path 下所有方法(如同时存在 GET/POST)
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | 接口路径,如 /api/users/{id} | |
| method | No | HTTP 方法,可选,不指定则返回所有方法 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that omitting method returns all methods for the path, and lists the returned content (参数/请求体/响应/示例). However, it doesn't mention errors or auth prerequisites, though the key behavioral nuance of the optional method is covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and structured: a one-sentence purpose followed by three clear bullets. Every sentence adds value, the main purpose is front-loaded, and there is no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 2 params, no output schema, and no annotations, the description covers core functionality, workflow with search_api, and optional method behavior. It could elaborate on response structure beyond listing content types, but it is sufficiently complete for a single-interface retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for both parameters, so baseline is 3. The description restates the optionality of method and the role of path, but adds little beyond schema. The note about using with search_api is more workflow than parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves complete documentation for a single API endpoint ('获取单个接口的完整文档'). It distinguishes itself from siblings by positioning it as the precise follow-up to search_api and emphasizing '单个' (single), contrasting with batch_get_apis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
A dedicated '使用指引' section gives explicit when-to-use instructions: direct use when path is known, use after search_api for precise details, and explains the optional method behavior. This clearly delineates the workflow and alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_all_endpoints列出所有接口A
列出所有接口的路径和方法(仅返回摘要信息)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It adds valuable behavioral context: 'only returns summary information' and implicitly indicates a read-only listing operation. It does not cover auth, pagination, or error behavior, but those are less critical for a simple non-mutating list tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the core action and resource, followed by a clarifying caveat about summary data. There is no waste or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool with no output schema, the description adequately explains the return value (paths and methods, summary only). It lacks details like pagination or limit behavior, but the simplicity of the tool makes this likely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty (0 parameters), so schema coverage is effectively 100%. Per guidelines, zero-parameter tools get a baseline score of 4; the description does not need to elaborate on parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action (list) and resource (all endpoints), further specifying the returned content (paths and methods) and scope (summary only). This distinguishes it from siblings like get_api_detail (details), list_api_by_tag (filtered), and list_api_by_folder (filtered).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'all endpoints' implies use when a complete, unfiltered list is needed, and the summary-info note suggests it's a lightweight overview. However, it does not explicitly mention alternatives or when not to use this tool compared to search/filter siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_api_by_folder按文件夹列出接口A
按 Apifox 文件夹路径筛选接口列表,支持精确和模糊匹配
| Name | Required | Description | Default |
|---|---|---|---|
| folder | Yes | 文件夹路径或关键词,如 "用户管理" 或 "用户管理/登录注册" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the filtering behavior and matching modes (exact and fuzzy), which is useful. However, it does not describe the return format, potential pagination, error behavior, or whether results are sorted or nested, leaving gaps for a read-only listing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the primary action (filter by folder path) and immediately adds the matching behavior. No redundant or extraneous text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (1 parameter, no output schema), and the description covers the core functionality and matching behavior. However, since there is no output schema, the description could have noted the return format or any limitations, but it does not, leaving some ambiguity for a complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description covers the folder parameter well (100% coverage), but the tool description adds value by specifying that matching supports exact and fuzzy modes, which clarifies how the 'folder' string is interpreted beyond the schema's example values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool filters an API list by Apofox folder path, using the verb '筛选' (filter) and the resource '接口列表' (API list). This distinguishes it from siblings like list_api_by_tag (filter by tag) and list_api_folders (list folders), making its purpose immediately apparent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the tool is used when you want to filter APIs by folder path, with support for exact and fuzzy matching. It does not explicitly name alternatives, but the folder-path focus provides clear contextual guidance without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_api_by_tag按标签列出接口B
按标签筛选接口列表
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | 要筛选的标签名称 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. However, '按标签筛选接口列表' essentially restates the tool's name and adds no information about return format, match semantics, data scoping, or errors. It provides minimal additional behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that is not verbose and efficiently conveys the core action. However, it is extremely brief and does not include any additional structured context, so it earns a 4 rather than a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description is adequate but incomplete: it omits any mention of the return value shape, whether matching is exact or partial, and does not point to alternatives. Without annotations, the description should at least hint at output behavior, but it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the single parameter 'tag' (description: '要筛选的标签名称'), so the baseline is 3. The description's 'by tag' adds nothing beyond what the schema already states, such as format, examples, or edge cases.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '按标签筛选接口列表' clearly identifies the action (filter), the resource (API list), and the specific criterion (by tag). This distinguishes it from sibling tools like list_api_by_folder and search_api, which target different dimensions or capabilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when you need APIs filtered by tag) but does not explicitly say when to prefer it over alternatives like smart_search_api or list_api_by_folder. No exclusions or fallback scenarios are mentioned, leaving the usage guidance only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_api_folders列出所有文件夹A
列出所有 Apifox 接口文件夹目录结构
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It does not disclose whether the operation is read-only, does not describe the return structure or pagination, and provides no information about authentication or side effects. The description adds minimal behavioral context beyond what the tool name implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately states the tool's purpose. Every word contributes value, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (zero parameters, no output schema), the description provides sufficient context for its core function. It fully explains what the tool does, and the absence of output details is acceptable for a simple listing operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4 per the rubric. The empty input schema is fully covered, and there is nothing for the description to add regarding parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all Apifox folder directory structures, using a specific verb ('list') and resource ('Apifox folders'). It distinguishes itself from sibling tools like list_api_by_folder, which likely lists APIs within a folder rather than the folders themselves.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied: one would use this tool when needing an overview of the folder hierarchy. However, it does not explicitly mention when to use it over alternatives or provide exclusions, so it lacks the explicit guidance of higher-scoring examples.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
refresh_cache刷新缓存A
刷新接口缓存,从 Apifox 重新获取最新数据
| Name | Required | Description | Default |
|---|---|---|---|
| force | No | 强制刷新,忽略冷却时间 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the refresh action and data source, but does not disclose side effects like cache overwriting, network dependencies, or the existence of a cooldown mechanism (though hinted by the force parameter).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It efficiently communicates the core purpose and source without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional parameter, no output schema), the description is minimally adequate. However, it omits any mention of cooldown/force behavior and potential side effects, which would be useful for complete context. The schema fills in the parameter gap, but overall completeness is moderate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with the single 'force' parameter clearly described in the schema. The description itself adds no parameter-level detail, but the schema already provides sufficient semantics, justifying the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool refreshes the interface cache and re-fetches latest data from Apifox. This distinct verb+resource combination sets it apart from sibling tools that are all search/list operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for updating stale cache but does not explicitly state when to use it or provide alternatives/exclusions. There is no mention of cooldown or when the force parameter should be used, leaving the agent to infer from the schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_api搜索接口A
根据 URL 模式搜索接口,这是查找接口的首选工具。
使用场景:
当用户提到任何 API 路径或 URL 时,自动调用此工具查询
当用户询问某个功能的接口时,根据关键词搜索
当需要了解某个模块有哪些接口时
支持的匹配模式:
精确匹配:/api/users
通配符:/api/users/* 匹配所有子路径
模糊搜索:users、influencer 等关键词
路径片段:daren/influencer 匹配包含该片段的所有接口
| Name | Required | Description | Default |
|---|---|---|---|
| pattern | Yes | URL 匹配模式,可以是完整路径、通配符模式或关键词 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses matching modes (exact, wildcard, fuzzy, path segment) with concrete examples like '/api/users/*' and 'daren/influencer', which is substantive behavioral information beyond the schema. However, it does not mention case sensitivity, pagination, error behavior, or result format, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with bullets and front-loaded purpose, making it easy to scan. It is slightly longer than minimal but every section (use cases, matching modes) adds necessary guidance. No redundant sentences found.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (1 parameter, no output schema, no annotations), but the description provides solid use-case triggers and matching behavior. However, it does not describe what the tool returns or its limitations (e.g., no results, ordering, pagination), and it fails to distinguish itself from smart_search_api. Given no output schema, some return-value context would complete the picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers the single parameter 'pattern' with a clear description, and schema coverage is 100%. The tool description adds extra value by enumerating specific matching modes and examples, enriching the meaning of the parameter beyond the schema's generic definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: searching APIs by URL pattern, and calls itself the preferred tool for finding APIs. It distinguishes from list-by-tag/folder sibling tools by focusing on URL patterns, but does not explicitly contrast with smart_search_api, so sibling differentiation is slightly incomplete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit use cases: automatically call when the user mentions an API path/URL, when asking about a feature's API, and when needing to know a module's APIs. This gives clear context on when to use, but it does not mention exclusions or alternatives like smart_search_api, so it lacks explicit comparison with overlapping siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
smart_search_api智能搜索接口A
根据自然语言描述智能搜索接口,AI 的首选搜索工具。
核心能力:
自动提取关键词并映射到接口路径
支持中英文混合查询
按相关度排序返回结果
使用场景:
用户描述功能需求:"查找用户登录接口" → 搜索 login/auth
用户询问模块接口:"达人管理有哪些接口" → 搜索 influencer/daren
用户描述业务场景:"获取订单列表" → 搜索 order/list
优先使用此工具进行语义搜索,再用 get_api_detail 获取详情
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | 自然语言描述的功能需求或业务场景 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must carry the burden. It discloses key behaviors: automatic keyword extraction, path mapping, mixed Chinese-English support, and relevance sorting. It does not discuss edge cases or output details, but for a simple search tool, this is sufficient transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (core capabilities, use cases, priority directive). It uses bullets and examples efficiently without fluff. Every sentence contributes to understanding the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema, this description is quite complete. It explains purpose, usage scenarios, behavioral mechanics, and next steps. It doesn't detail return format, but states relevance sorting, which adequately covers what the agent needs to know for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already defines 'query' as natural language, but the description adds meaningful examples and clarifies expected input types (e.g., '查找用户登录接口', '获取订单列表'). This goes beyond the schema's minimal description, giving the agent concrete grounding for what to provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it's an intelligent search tool that maps natural language queries to API paths, with explicit examples of query types. It distinguishes itself by calling itself the 'AI's preferred search tool' and positioning semantic search, differentiating from sibling tools like search_api.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit use cases (functional needs, module inquiries, business scenarios) and gives a direct directive: '优先使用此工具进行语义搜索,再用 get_api_detail 获取详情' (prefer this for semantic search, then use get_api_detail for details). This clearly tells the agent when to use it and what to use next.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v1.0.11- First observed
batch_get_apis - First observed
get_api_detail - First observed
list_all_endpoints - First observed
list_api_by_folder - First observed
list_api_by_tag - First observed
list_api_folders - First observed
refresh_cache - First observed
search_api - First observed
smart_search_api
TDQS
Scored across 9 tools
The two search tools (smart_search_api and search_api) have overlapping purposes—both find APIs by keywords—though descriptions attempt to differentiate semantic vs URL-pattern search. The 'preferred' vs 'primary' language adds confusion, but other tools are clearly distinct for detail, listing, and cache operations.
Most tools follow a snake_case verb_noun pattern (search_api, get_api_detail, list_api_folders, refresh_cache). Exceptions like smart_search_api and batch_get_apis deviate slightly in form but remain consistent in style and readability.
With 9 tools, the set is well-scoped for an API documentation server, covering search, detail retrieval, listing, filtering, and cache management without unnecessary bloat.
The tool surface fully covers the read-only filtering/retrieval domain: multiple search modes, single/batch detail, tag/folder filters, full endpoint listing, and cache refresh. No significant gaps for the stated purpose.
Maintenance
Related MCP Connectors
Point Gecko at an OpenAPI spec; get first-call-correct, auth-hidden agent tools.
Turn any task into the right API calls: discover, evaluate, and integrate public APIs.
Provide your AI coding tools with token-efficient access to up-to-date technical documentation for…
Query 17,000+ verified task routes with known gotchas and API drift alerts. Free keyless reads.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI assistants to fetch and understand API endpoint definitions from Apifox projects in real-time. Supports retrieving complete API specifications including request methods, parameters, headers, and response schemas to improve development efficiency and code generation quality.121 npm4MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to load, parse, and query OpenAPI/Swagger documentation from URLs with intelligent search across endpoints, schemas, and authentication methods. Provides 10 specialized tools for comprehensive API exploration including path details, operation lookups, and multi-criteria search capabilities.4-
- AlicenseNot gradedqualityDmaintenanceEnables AI tools to search and explore API documentation from Apidog projects or OpenAPI/Swagger specifications, providing endpoint details, schemas, and project statistics through natural language queries.735 npm1ISC
- AlicenseNot gradedqualityAmaintenanceEnables LLMs to manage Apifox API projects, including listing, creating, updating, and deleting API endpoints and schemas via natural language.30MIT