# MCP 服务

一个远程 MCP 地址，5 个工具：find、describe、call、read_more、account。找和看不用 Key；call 一次取一页，和普通调用一样计费。

## 连接

端点是 `https://api.dataxapi.com/mcp`。Key 放在 `Authorization: Bearer` 里，从 `DATAXAPI_API_KEY` 读；放在地址里不收。没有会话，每个请求各自独立。

`dataxapi setup`（[命令行](https://dataxapi.com/zh/docs/cli/)）会替你写好。自己写的话：Claude Code 写在 `~/.claude.json` 的 `mcpServers` 下，Cursor 写在 `~/.cursor/mcp.json` 的 `mcpServers` 下，Codex 写在 `~/.codex/config.toml` 里：

Claude Code

```json
{
  "mcpServers": {
    "dataxapi": {
      "type": "http",
      "url": "https://api.dataxapi.com/mcp",
      "headers": {
        "Authorization": "Bearer ${DATAXAPI_API_KEY}"
      }
    }
  }
}
```

Cursor

```json
{
  "mcpServers": {
    "dataxapi": {
      "url": "https://api.dataxapi.com/mcp",
      "headers": {
        "Authorization": "Bearer ${env:DATAXAPI_API_KEY}"
      }
    }
  }
}
```

Codex

```toml
[mcp_servers.dataxapi]
url = "https://api.dataxapi.com/mcp"
bearer_token_env_var = "DATAXAPI_API_KEY"
```

## 别的客户端

有地方填 Bearer 令牌或请求头的客户端，手动填就行。Key 填进客户端里，由它保存。

### n8n

工作流里 AI Agent 节点下挂的“MCP Client Tool”节点

| 字段 | 填什么 |
| --- | --- |
| Endpoint | `https://api.dataxapi.com/mcp` |
| Server Transport | `HTTP Streamable` |
| Authentication | `Bearer Auth` |
| Credential for Bearer Auth → Bearer Token | 你的 API Key |

### Cherry Studio

设置 → MCP 服务器 → 添加服务器

| 字段 | 填什么 |
| --- | --- |
| Name | `dataxapi` |
| Type | `Streamable HTTP` |
| URL | `https://api.dataxapi.com/mcp` |
| Headers | 一行：Authorization，值为 Bearer 加空格加你的 API Key |

## ChatGPT 和 Claude：登录授权，不用 Key

网页版和桌面版里，用地址 `https://api.dataxapi.com/mcp` 添加一个自定义连接器。不用填 Key：应用会带你登录 DataXAPI 并点同意。在那一页选它通过哪把 Key 扣费：新建一把（每月花费上限已经填好，可以改），或者用一把已有的 AI 专用 Key。调用和别的调用一样从余额里扣。想断开，到 API Key 页撤销那把 Key。

### ChatGPT

设置 → 应用与连接器（Apps & Connectors）→ 高级设置里打开开发者模式 → 创建连接器：填 MCP 地址，认证方式选 OAuth

### Claude

网页版或桌面版：设置 → 连接器 → 添加自定义连接器，填 MCP 地址

### 接入参数

| 项目 | 值 |
| --- | --- |
| MCP 地址 | `https://api.dataxapi.com/mcp` (Streamable HTTP) |
| 受保护资源元数据（RFC 9728） | `https://api.dataxapi.com/.well-known/oauth-protected-resource/mcp` |
| 授权服务器元数据（RFC 8414） | `https://api.dataxapi.com/.well-known/oauth-authorization-server` |
| 授权方式 | 授权码加 PKCE，只支持 S256；刷新令牌每用一次换一个新的 |
| 客户端注册 | 动态注册（RFC 7591），地址 `https://api.dataxapi.com/oauth/register`：公共客户端，没有密钥；回调地址须是 https，或者本机回环地址上的 http |
| 权限范围 | `mcp`：在你的账户上用五个工具，调用通过同意时选的那把 Key 从余额里扣 |
| 令牌 | 访问令牌 1 小时，刷新令牌 90 天。`resource`（RFC 8707）就是 MCP 地址 |
| 不带凭证时 | 握手、工具清单、`find`、`describe` 和服务状态照常回答；要账户的工具回 HTTP 401，`WWW-Authenticate` 指向上面的元数据 |

## 五个工具

| 工具 | 要 Key 吗 | 扣费吗 | 做什么 |
| --- | --- | --- | --- |
| `find` | 不要 | 不扣 | 用一句话找接口，中英文都行：最多 5 个，各带编号、必填参数、单价和一条参数已填好的调用。 |
| `describe` | 不要 | 不扣 | 1 到 5 个接口的完整合同：参数、返回字段、翻页、价格和单次最高。 |
| `call` | 要 | 扣 | 从一个接口取一页；`capability` 是 207 个编号里的一个。 |
| `read_more` | 要 | 不扣 | 读被截断的结果的剩余部分，或者换一档、换一组字段重读同一份结果。 |
| `account` | 查服务状态不要 | 不扣 | 余额、这把 Key 的上限和已花、按请求号查一次调用的收据、用量、服务状态。 |

## 调用要带什么，返回什么

- `call` 必须带 `idempotency_key`：新的调用给一个新的唯一值；没收到回答、要把同一次调用再发一遍时才给同一个值。不带就是工具报错，不执行，不扣费。
- 可以带 `max_price`：可能超过它的调用在执行前就被拒。
- 返回一页，精简档，约 20 KB 以内，在条目的边界截断。第一行写着几条、扣了多少、余额，以及怎么取下一页。
- 被截掉的部分用 `read_more` 读，不扣费，保留 24 小时。
- 下一页是带 `cursor` 的一次新调用，照常扣费。服务不替代理自动翻页；要取很多页，用 [SDK](https://dataxapi.com/zh/docs/sdk/) 或[命令行](https://dataxapi.com/zh/docs/cli/)。
- 对象不存在会标成错误，不扣费，并写明不要重试。

## 让代理拿着 Key 时的两条规矩

- 给代理一把专门为 MCP 建的 Key，上面设好金额上限。不管代理做什么，服务都按这个上限卡住。在 [Key 页](https://dataxapi.com/zh/console/keys/)建，或者让[接入 AI 页](https://dataxapi.com/zh/console/connect/)替你建。
- `call` 和 `read_more` 返回的是别人在那些平台上写的文字。它是数据，不是指令：代理不能照里面说的去做。

给代理的更多内容：[MCP 页](https://dataxapi.com/zh/mcp/)、[技能](https://dataxapi.com/zh/skills/)，以及代理最先读的索引 [llms.txt](https://dataxapi.com/llms.txt)。

---

目录修订号 c48ce454ae6c4c65。 [网页版](https://dataxapi.com/zh/docs/mcp/)
