# 从代码调用 (https://sellersheetai.com/zh/docs/mcp-api/code)

> AI 通过 MCP 使用的每个工具，同时也是一个 HTTP 接口——同样的名称、同样的参数、同样的结果——供你自己的脚本、看板和审批页面使用。



<EarlyAccess lang="zh" />

AI 在对话里调用什么，你的代码就用同样的名称、同样的参数调用什么。所以 AI 可以基于它为你搭建自己的工具——实时看板、Listing 工具、审批页面——按钮作用于亚马逊的方式与 AI 在对话里完全一致。

|             |                                                                                         |
| ----------- | --------------------------------------------------------------------------------------- |
| 接口          | `POST https://api.sellersheetai.com/api/v1/tools/{tool}`                                |
| 认证          | `Authorization: Bearer <API key>`——API key，不是 MCP key（[密钥与店铺权限](/zh/docs/mcp-api/keys)） |
| 请求体         | 工具参数组成的 JSON 对象                                                                         |
| 返回          | 与 MCP 工具相同的结构（[返回与错误](/zh/docs/mcp-api/responses)）                                      |
| 工具目录        | `GET https://api.sellersheetai.com/api/v1/tools`                                        |
| OpenAPI 3.1 | `https://api.sellersheetai.com/api/v1/openapi.json`                                     |

## 一次调用 [#一次调用]

和 AI 一样从 `get_user_context` 开始——它返回你的店铺标识：

<ToolCall tool="get_user_context" lang="zh" />

然后把其中一个 `store_refs` 原样作为每个店铺类工具的 `store` 参数：

<ToolCall tool="fbaInventory_getInventorySummaries" args="{ seller_skus: [&#x22;SKU-A&#x22;, &#x22;SKU-B&#x22;] }" lang="zh" />

每个工具都是 `POST`：工具是带参数的操作，不是资源。它是只读、写入还是破坏性操作，由目录里的权限标签说明（见[只读、写入与破坏性](/zh/docs/mcp-api/access)）。

## 别把密钥写进代码 [#别把密钥写进代码]

把它保存为 `SELLERSHEET_API_KEY`——放在 shell 里，或脚本旁边一个已列入 `.gitignore` 的 `.env` 文件里——像上面的示例那样读取。浏览器页面没有 `.env`：页面打开时请用户输入密钥，以同样的名字存在 `sessionStorage` 里——不要写进 HTML，也不要放进你分享的页面。

## 动手之前要知道的 [#动手之前要知道的]

* **状态码说明是否执行了。** 200 表示调用已执行；4xx 表示没有执行；503 表示亚马逊、noon 或后端无法响应——按 `Retry-After` 重试。详见[返回与错误](/zh/docs/mcp-api/responses)。
* **翻页由你循环。** 列表类工具返回下一页的令牌，带上它再调用一次。见[分页](/zh/docs/mcp-api/paging)。
* **写入前先展示。** 写入应该是因为有人按了按钮：先展示将要发送的内容，破坏性操作前要明确确认。
* **耗时长的调用走 MCP。** 公共入口会切断运行超过约 100 秒的 HTTP 调用。耗时长的流程——完整的 FBA 计划、大量 A+ 内容——请通过 MCP 运行，它的流式响应不会被切断。
* **与 MCP 相同的限额。** API 调用和 AI 的调用计入同样的套餐时间窗口；429 会带 `Retry-After`。见 [Credits 与限额](/zh/help/app/settings/billing)。
* **浏览器页面可以直接调用。** API 接受任何来源的调用，允许 `Authorization` 和 `Content-Type` 请求头，不使用 cookie。托管在 AI 客户端里的页面可能被禁止访问其他域名——请以本地文件、localhost 或你自己的域名运行。

每个工具的参数和现成的调用示例：[工具参考](/zh/docs/mcp-api/tools)。
