# @extenshi/mcp 中文文档

规范地址：https://npmcn.com/package/%40extenshi/mcp/

版本：0\.28\.0
npm 元数据更新时间：2026-11-13T00:57:51.626Z
中文译文更新时间：2026-11-14T05:55:55.707Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40extenshi/mcp
原文对照：https://npmcn.com/package/%40extenshi/mcp/?lang=original
项目主页：https://github.com/Extenshi-io/extenshi-io/tree/main/tools/extenshi-mcp#readme
源码仓库：https://github.com/Extenshi-io/extenshi-io

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：1.6 MB，196 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=20
- 运行依赖：10 个
- 首次发布：2026-06-06T14:33:33.277Z
- 最新版本发布：2026-11-13T00:57:51.477Z
- 近 30 天下载量：6453（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：48（近 12 个月 48 个）

## 中文简介

Extenshi MCP 服务器——将扩展目录(搜索、安全、市场研究)和预印扫描带入您的AI工具

## 安装

```sh
npm install @extenshi/mcp
```

也可以使用：`pnpm add @extenshi/mcp`、`yarn add @extenshi/mcp`、`bun add @extenshi/mcp`

## README

# @ extenshi/ mcp

A 类 [示范背景协议](https://modelcontextprotocol.io/) 带来 **Extenshi 扩展目录** - 搜索、安全分析、市场研究 预印扫描——进入你的AI工具(Claude Code, Claude Desktop, Cursor,.).

跑到当地去了 **静态**,所以没有什么可以容纳。 它重用你现有的 Extenshi API 密钥( 同一个) `@extenshi/cli` 对公众的演讲 代表您的后端.

## 获取 API 密钥

对目录和自有项目工具需要一个 API 密钥. 文件、模板和静态 工作流程指南,包括 `get_development_guide`没有钥匙的工作 后端强制访问 以及经认证的业务项目应享权利.

1.  报名到 **[https://auth.extenshi.io/ signup\* (英语)](https://auth.extenshi.io/signup*)\* 联合国**
2.  创建密钥于 **[https://dojo.extenshi.io/api-keys\* (英语)](https://dojo.extenshi.io/api-keys*)\* 联合国**
3.  通过 `EXTENSHI_API_KEY` 环境变量(或运行) `npx @extenshi/cli@latest login`,MCP服务器从中读取 `~/.extenshi/config.json`) (中文(简体) ).

## 配置您的 MCP 客户端

```json
{
  "mcpServers": {
    "extenshi": {
      "command": "npx",
      "args": ["-y", "@extenshi/mcp@latest"],
      "env": { "EXTENSHI_API_KEY": "ek_…" }
    }
  }
}
```

## 计划整个生命周期

打电话 `get_development_guide` 关于此连接的完整工具目录, Extenshi 服务目录、先决条件和文档链接、 GitHub 源/ CI 指南以及命令 通过实施、测试、储存释放和维护进行规划。 盘点来自 已注册的工具。 远程连接器共享此指南并引导本地的文物操作到 斯特迪奥或CLI. 见 [发展工作流程](https://docs.extenshi.io/developers/development-workflow)。 。 。 .

## 工具

| 工具 | 它会做什么 | 费用 |
| --- | --- | --- |
| `search_extensions` | 用过滤器(商店、类别、定价、评级、风险、权限)在Chrome/Firefox/Edge进行混合搜索 | 1个改为 |
| `get_extension` | 一个扩展的完整目录细节——通过数字目录ID **或者说** (见下文) | 1个改为 |
| `get_reviews` | Paginated Firefox/Edge用户评审(评分,短节选,日期,语言)+一个存储级汇总(评分,计分,评分链接) — Chrome Web Store评审行被排除在外(汇总为Chrome唯一的公开内容); 评审员身份被省略; 按近期或评分排序 | 1个改为 |
| `get_security` | 风险分数 + 查找数 + 最高分组的发现(读取现有扫描) | 3个读取 |
| `get_risk_by_store_ids` | 安全分数 **不超过40人** 一个呼叫中的扩展, 通过 store id 来审计一个已安装的扩展列表而不是呼叫 `get_security` 每个扩展名 | 每通电话1个 |
| `market_overview` | 全目录的市场情报没有参数(总数、储存分拆、分类树和扩展分解——MV2/MV3、敏感许可、风险等级、交易商地位、重新处理、审查);通过a `query` 搜索的范围; `facets` 选择组合和 `top_n` (默认 10) 修剪长列表 | 1个改为 |
| `get_credit_balance` | 每个游泳池(读取/扫描/图标/库存)的剩余信用值,所以一个代理在运行之前可以大小一个批次,而不是打入中标限制 | 免费 |
| `get_approval` | 如果通过主机连接器提出的更改(待决、应用、拒绝、失败、过期);只读,由所有者在道场决定 | 免费; 需要身份 |
| `get_development_guide` | 完整的连接工具目录、服务目录、 GitHub 指南和命令的开发到维护计划; 默认情况下的紧凑概览, 完整部件通过 `sections` | 免费( 无密钥) |
| `list_extension_templates` | 扩展形状、最小权限和特定浏览器的显示要求 | 免费( 无密钥) |
| `connection_diagnostics` | 认证、范围、后端工作空间合同和能力 | 免费; 需要身份 |
| `import_manifest` | 进口列表 JSON(加上 `_locales` 消息通过 `messagesByLocale`)进入道场编辑器,翻译和项目标签;预览更改并应用状态散列. | 需要为 OAuth 编写工程 |
| `get_project_workspace` | 经修订的存储器元数据、来源/构建的运单、范围和发布快照 | 免费; 需要身份 |
| `diff_project_state` | 对照服务器控件基础修订版进行三向元数据预览 | 免费; 项目读取访问 |
| `apply_project_patch` | 应用带有冲突、墓碑和一能的输入元数据补丁 | 需要为 OAuth 编写工程 |
| `create_ci_ingest_secret` | 创建或旋转 CI 证据摄入秘密( 一次显示, 在动作中存储秘密) | 需要为 OAuth 编写工程 |
| `upsert_hosted_page` | 注册项目主页/支持 URL( HTTPS, 可达, 散列) | OAuth 需要 host. write 吗 |
| `verify_hosted_artifact` | 将主机页面与其记录进行比较(核实/更改/无法获取) | OAuth 需要 host. write 吗 |
| `remove_hosted_page` | 忘记已注册的主页/ 支持 URL( 公共页面继续工作) | OAuth 需要 host. write 吗 |
| `list_hosted_pages` | 有核查状态的注册主机页面 | 免费; 需要身份 |
| `publish_landing_page` | 以 page.extenshi.io/{code}(或自定义域名根)的形式从 page 生成器形式, v1 或 schema v2( 已编辑; 默认登记为主页); `live.status` 表示公共 URL 是否服务) | OAuth 需要 host. write 吗 |
| `get_landing_page` | 主机登陆页码,活版,URL和表格摘要; 3; `view: "full"` (可选) `fields` 编号 : `locales`返回窗体 | 免费; 需要身份 |
| `unpublish_landing_page` | 将主机登陆页面下线( 在下次发布时使用相同的 URL) | OAuth 需要 host. write 吗 |
| `draft_landing_page` | 起草项目状态的 schema-v2 主页( 章节、 主题、 SEO 、 地方), 以及来源和待办事宜 | 免费; 需要身份 |
| `preview_landing_page` | 核实和制作与公布内容完全一样的表格;每个问题都与路径和修复有关 | 免费; 需要身份 |
| `list_landing_page_versions` | 主机登陆页面版本历史 | 免费; 需要身份 |
| `rollback_landing_page` | 将先前的版本恢复为新版本 | OAuth 需要 host. write 吗 |
| `get_custom_domain` | 自定义域状态, 准确的 DNS 记录和下一步 | 免费; 需要身份 |
| `set_custom_domain` | 为主页和主页添加自定义域(CNAME + TXT 记录) | Pro 工程; 主机. write |
| `verify_custom_domain` | 验证所有者和 HTTPS; 在 ACTIVE 上, 主页服务于域根 | Pro 工程; 主机. write |
| `remove_custom_domain` | 停止服务自定义域; cononical and HomePAGE URL 返回到 page.extenshi.io | OAuth 需要 host. write 吗 |
| `get_install_instructions` | 主机安装指令页面( 代码、 URL、 已发布格式) 和已保存的草稿 | 免费; 需要身份 |
| `publish_install_instructions` | Dojo.extenshi.io/教程/{code}的安装指令主机,步骤为11种语言 | OAuth 需要 host. write 吗 |
| `unpublish_install_instructions` | 将主机安装指令下线( 下一次发布时相同的 URL) | OAuth 需要 host. write 吗 |
| `get_page_translations` | 开发者在未安装表格/反馈表格/欢迎页/安装具有每种语言翻译状态的指令上撰写的文本 | 免费; 需要身份 |
| `set_page_translations` | 保存一个未安装表/回馈表/欢迎页/安装指令页的一款语言 | OAuth 需要 host. write 吗 |
| `get_legal_translations` | 已出版的隐私政策或许可条款的翻译副本(英文版装订):每种语言翻译的剩余内容 | 自由; 需要身份( 许可证名词: pay. read) |
| `get_license_terms_questionnaire` | 许可证条款( V) 将问题作为数据退后( 类型、 选择、 限制, 需要时); 没有保存的答案 | 免费; 需要身份( 不付费. read) |
| `draft_license_terms` | 许可使用调用中发送的答覆中的术语文本, 并有阻断出版的漏洞; 无保留 | 免费; 需要身份( 不付费. read) |
| `get_license_terms` | 已保存草稿、已公布的版本和散列、版本、开放和只有所有者的答案 | 需要付费,读取 |
| `save_license_terms_draft` | 将答案保存为草稿; 身份答案保留给主人; `dryRun`, (中文(简体) ), `expectedDraftHash` | 需要付费. write |
| `request_license_terms_publication` | 请所有者公布草稿(批准链接);也可以决定销售者。 术语 | 需要付费. write |
| `publish_license_terms` | 直接以密钥发布 `pay.legal.publish`; 只缩写 | 要求支付. write + 支付. legal.publish |
| `verify_license_terms_live` | 页面、散列、付费墙链接和卖方 | 免费; 需要身份 |
| `rollback_license_terms` | 早期版本作为新版本,通过批准或直接 | 需要付费. write |
| `list_uninstall_forms` | 该项目的未安装调查:URL、启用、初级、响应 | 免费; 需要身份 |
| `get_uninstall_form` | 一项全面调查: `updatedAt`,标题及其来源,翻译状态 | 免费; 需要身份 |
| `update_uninstall_form` | 部分更新检查如道场编辑器; `dryRun` 迪夫,你说什么, `expectedUpdatedAt`, (中文(简体) ), `idempotencyKey`; URL 和回复保留 | OAuth 需要 host. write 吗 |
| `get_uninstall_offer` | 调查的折扣报价:显示的原因,每个计划一个折扣,修订,什么仍然阻碍它,项目的计划,计数 | 免费; 需要身份 |
| `update_uninstall_offer` | 确定整个报价; `dryRun` 检查一下; `expectedRevision`; Pro项目. 在主机的连接器上,这是业主同意的建议 | 要求支付. write for OAuth |
| `preview_uninstall_form` | 调查的文字用一种语言,每个答案后面的屏幕;不算什么 | 免费; 需要身份 |
| `list_uninstall_responses` | 调查的答案, 首先是最新答案, 按版本和日期过滤, 按理由和版本计数; 邮件只针对 API 密钥 | 免费; 需要身份 |
| `list_feedback_forms` | 项目的反馈表(feedback.extenshi.io):URL,启用了,初级,响应 | 免费; 需要身份 |
| `get_feedback_form` | 一份完整的反馈表,即 `updatedAt`,标题及其来源,翻译状态 | 免费; 需要身份 |
| `update_feedback_form` | 部分更新检查如道场编辑器; `dryRun` 迪夫,你说什么, `expectedUpdatedAt`, (中文(简体) ), `idempotencyKey`; URL 和答案保留 | OAuth 需要 host. write 吗 |
| `preview_feedback_form` | 表格的文字用一种语言, 和每类的感谢屏幕; 没有记录 | 免费; 需要身份 |
| `list_feedback_responses` | 表格的答案, 最新的答案, 按类别、 来源、 版本和日期过滤; 邮件仅针对 API 密钥 | 免费; 需要身份 |
| `find_brand_mentions` | 每个主机字段都有一个名称(例如旧的扩展名),并带有修正它的工具 | 免费; 需要身份 |
| `set_legal_translations` | 保存隐私政策的一种语言或许可术语翻译(编辑章节和自由文本答案). 在主机连接器上,一个翻译是所有者在道场批准的提案;有API密钥,它立即启动 | 需要host.write + Pro( 政策) 或 pay.write( terms) 为 OAuth 撰写 |
| `upload_project_media` | 上传一个 PNG/JPEG/WebP 标志或截图到项目的公共媒体商店并获得一个稳定的 URL `publish_landing_page` (每个项目的元数据被剥去; `filePath` 在stdio的工作空间里, `dataBase64` 到处都是) | OAuth 需要 host. write 吗 |
| `record_project_evidence` | 将元数据存储到精确的文物、输入散列、浏览器和源码修订版 | 需要证据。 write for OAuth |
| `get_release_readiness` | 由浏览器和地块解释当前, Stale和缺失的放行检查. 使用链接的Pay应用程序,付款支票取自Extenshi的付款分类账(来源: `platform`); 现场模式购买,达到安装通过 | Pro 项目; 项目读取权限 |
| `list_my_projects` | 您的项目、 寄存器绑定和声称的列表 | 免费; 需要身份 |
| `create_project` | 通过 Dojo 向导 服务创建一个工程; 每名密钥的 idepotent; 返回 id, 下一步和打开所有者的决定; 本地服务器添加 `buildMap` | 需要为 OAuth 编写工程 |
| `get_decisions` | 所有者决定(AMO加码、许可证、卖方身份、定价、指标):状况、建议违约、每个区块是什么 | 免费; 需要身份 |
| `propose_decision` | 提出具有理由的决定价值;所有者在道场决定,决定的密钥被拒绝 | 需要为 OAuth 编写工程 |
| `get_project_state` | 突出摘要(进口或生成、摘要、不同于所导入文件的密钥)、所选类型、保存状态索引、托管的URL和精确的集成文件; `manifests: "full"` 返回显示对象;本地服务器添加 `buildMap` (构建图是否开放,地址,作者是否拒绝) | 免费; 需要身份 |
| `get_project_scaffold` | 一个工程和目标浏览器的启动文件 | 免费; 需要身份 |
| `list_privacy_policy_versions` | 主机政策版本历史 | Pro 项目;无读取信用 |
| `get_privacy_policy_version` | 一个托管策略的标记和 HTML | Pro 项目;无读取信用 |
| `update_privacy_policy_with_ai` | 提出政策更新,供作者审查; `aiStep` 说明AI步骤是否运行,否则提议是合并部分 | Pro 项目; 应用每日更新限制 |
| `publish_privacy_policy` | 在项目主机 URL 上发布策略 。 在主机连接器上,文本作为提案被存储,主人在道场批准(见下文);带有API密钥,它立即启动. 对于一个文件, `extenshi privacy publish <file.md>` 发送精确的字节并检查存储的内容 | Pro 工程; 更改活页 |
| `search_docs` | 搜索 Extenshi 文档 + `@extenshi/cli` 引用使助手能够引用精确的命令;返回顶部 `limit` 段落封顶 `max_chars` 每个 | 免费( 无密钥) |
| `localize_workflow` | 当地信息翻译合同、CLI验证和人工审查闸门 | 免费( 无密钥) |
| `generate_icon_workflow` | 图标设计要求+本地代理-draws-SVG → `npx @extenshi/cli@latest icon preview` • 出口工作流程 | 免费( 无密钥) |
| `generate_welcome_page_workflow` | 安装后欢迎页面的设计简报:它必须驱动的动作,它要制作的插图,在哪里放置点击标记,以及返回的块 JSON | 免费( 无密钥) |
| `generate_pin_guide` | 用于Chrome、Edge和Firefox的平到工具栏步骤,作为欢迎页的离线工具包,捆绑在扩展名中:带有图标和标记的 SVG, CSP- safe HTML, 11种语言的字幕作为 `chrome.i18n` 信件和脚本读取 `action.getUserSettings().isOnToolbar`默认概览; `part` 返回时 `html` 编号 : `messages` 编号 : `script` 编号 : `css` | 免费( 无密钥) |
| `generate_landing_page` | 静态登陆页(主页) HTML 没有 JavaScript — 与柜式生成器相同的生成器; 返回 `{html, bytes, warnings, nextSteps}`。在 HTTPS 源头上主机并注册 URL `upsert_hosted_page` (饲料) `HOMEPAGE_URL`(中文(简体) ) | 免费( 无密钥) |
| `scan_extension` | 对本地文物(.zip/.crx/.xpi)进行预印安全扫描,并有现场进展 | 1个扫描 |
| `publish_extension` | 向Chrome/Firefox/Edge发布,并附上自己的商店证书(完全本地) | 免费 |
| `get_build_map` | 作者的建筑地图 `projectDir` (单位:千美元)`npx @extenshi/cli map`:进步,步骤等待作者,步骤现在可以开始,每个步骤当前的任务,以及随作者的回答而提供的变体. 仅本地服务器 | 免费( 无密钥) |
| `show_build_map` | 在一个显示 MCP Apps (Claude) 的客户端中绘制谈话中的构建图,可选择一步打开,作者选择变体,标记自己的任务或跳过一步;其他部分则返回作者地图的链接. 仅本地服务器 | 免费( 无密钥) |
| `report_build_step` | 关于构建地图步骤的报告(启动、进展、用散列文件证明完成、停止),或记录作者在聊天中的答复(`choice` 编号 : `redo`) (中文(简体) ). 仅本地服务器 | 免费( 无密钥) |
| `request_build_review` | 向作者提供1–8个变体,从地图上选择(icon概念,截图,列出副本),在工程中每个预览页或图像;返回与步骤的链接. 仅本地服务器 | 免费( 无密钥) |

在客户端显示 [MCP 应用程序](https://modelcontextprotocol.io/extensions/apps/overview), (中文(简体) ), `show_build_map` 在对话中绘制地图( 页面) `ui://extenshi/build-map`) (中文(简体) ). 该页面称三个只应用工具, `build_map_view`, (中文(简体) ), `build_map_answer` 财务报告和审定财务报表 `build_map_file`; 服务器不让任何客户端发布广告 `io.modelcontextprotocol/ui`。 。 。 .

### 以存储 ID 识别扩展名

`get_extension`, (中文(简体) ), `get_reviews`, (中文(简体) ), `get_security` 财务报告和审定财务报表 `scan_extension` 接受 **无论是** 数字 目录 `extension_id` **或者说** 扩展名 `store_id` 直接从商店 URL 的 id 通常是唯一精确的标识符:

```jsonc
{ "store_id": "cjpalhdlnbpafiamejdnhcphjbkeiagm", "store": "CHROME" }  // Chrome/Edge: `store` required
{ "store_id": "dark-reader" }                                          // Firefox: unambiguous
```

`store` c. 需要Chrome/Edge ID,因为两个仓库都使用相同的32个特性格式; Firefox ids(slug,GUID,或电子邮件式)路由自动. 解析商店 ID 是免费的——只有 读取如下:.

### 贷项

每个账户都可获得10个读取和3个扫描(不需要卡片)的一次性免费津贴. 超越 购买从未到期的预付信用包(最多10 000个读取和每包1000个扫描). 打电话 `get_credit_balance` (免费)在运行大批量前检查所剩的. 管理信用 [https://dojo.extenshi.io/biling (英语)](https://dojo.extenshi.io/billing)。 。 。 .

## 配置

后端端点被编译入包并始终指向生产——只有API 键从环境读取.

| 新闻 var | 目的 |
| --- | --- |
| `EXTENSHI_API_KEY` |  `ek_…` 开发者密钥( 需要) |

## 开发

```bash
yarn build            # tsc -> dist/
# Inspect locally:
EXTENSHI_API_KEY=ek_… npx @modelcontextprotocol/inspector node dist/index.js
```

释放由CI在npm上进行,并由拥有2FA的维护者手动批准; `./scripts/publish.sh` 是本地中继倒计时(`DRY_RUN=1 ./scripts/publish.sh` (以验证)。 断层需要节点22.14和npm11.15.

见 [项目同步工作流程](https://docs.extenshi.io/developers/project-sync) 用于CLI命令,修订冲突,证据新鲜和OAuth恢复.

### 独立支付应用程序

这些工具需要一个有独立薪酬支持的后端。 发展项目是可选的。 明确要求 `pay.read` 和(或) `pay.write` OAuth 范围,或给予本地 API 密钥付费权限 [API 密钥](https://dojo.extenshi.io/api-keys). 年长的证书没有薪酬。 工具注册不会证明后端推出或SDK npm 发布.

| 工具 | 权限 | 行为 |
| --- | --- | --- |
| `list_pay_apps` | `pay.read` | 列出您的独立付费申请 。 不需要发展项目。 跟着下一位导师取得更多结果. |
| `create_pay_app` | `pay.write` | 创建独立的付费应用程序;连接一个开发项目是可选的。 可选 `trialDays` 进行免费审判。 在每个呼叫中创建新应用程序: 超时后不要盲目重试 . |
| `get_pay_app` | `pay.read` | 阅读您的薪酬申请、其可选项目链接和免费试用(`trialDays`) (中文(简体) ). |
| `get_pay_readiness` | `pay.read` | 检查当前退出并启动先决条件 。 通关验收不能证明现场外部购买或SDK出版物. |
| `get_pay_payment_evidence` | `pay.read` | 阅读Extenshi的付款分类账所证明的应用程序的付款路径,每个模式:结账,发放许可证,一个安装收到签名的许可证,第二次安装时恢复,退款被撤销. 不透明身份证和时间戳。 只有现场采购满足了释放的付款要求. |
| `link_pay_app` | `pay.write` | 将您的工资申请与您的开发项目链接。 现有采购仍然附在 " 支付 " 申请之后. |
| `unlink_pay_app` | `pay.write` | 删除可选的开发项目链接,而不删除付费数据. |
| `archive_pay_app` | `pay.write` | 归档您的应用程序并停止新的检出 。 保存付款记录和现有应享权利. |
| `export_pay_data` | `pay.read` | 导出您的应用程序数据一页 。 跟随下一条 Cursor 直至完全导出无效 。 提供行包括 `sortOrder`提议在付费墙上的位置。 客户/付款数据很敏感:只保存到作者控制的目的地;不粘贴在公共问题上. |
| `get_pay_seller` | `pay.read` | 阅读销售者连接、公众简介、报价(与 `sortOrder`)和可公布的SDK密钥. 协议签署和KYC要求作者在浏览器中. |
| `connect_pay_seller` | `pay.write` | 开始上线并返回浏览器动作 URL 。 提交人必须完成KYC和法律认可;绝不代表他们这样做. |
| `refresh_pay_seller` | `pay.write` | 刷新当前付款提供者入职状态 。 这不能完成KYC或接受协议. |
| `set_pay_seller_profile` | `pay.write` | 保存作者确认的公共销售者身份,支持和名词链接. 永远不要发明法律身份或条件. |
| `upsert_pay_offer` | `pay.write` | 通过稳定的 SKU 创建或更新要约 。 在现有报价中,省略了保留所存储值的字段:只更改标题或描述,发送SKU和新文本,以及价格、特征和付费墙顺序(`sortOrder`保持原样。 需要一个新的 SKU `kind`, (中文(简体) ), `amountMinor`, (中文(简体) ), `currency` 财务报告和审定财务报表 `title`价格为小额货币单位。 只使用作者核准的价格,计费间隔和特性. |
| `archive_pay_offer` | `pay.write` | 停止提供新离职的 SKU; 保存历史购买 . |
| `get_pay_offer_translations` | `pay.read` | 这些要约的标题、说明和特征按键 `<sku>/<field>`,每个项目语言都有翻译状态;当项目交付时,付费墙会显示买方浏览器语言的报价. |
| `set_pay_offer_translations` | `pay.write` | 保留要约译文中的一种语文;但自阅读以来原已更改的语文除外。 用保存的语言翻译和每种语言的状态回答;通过 `view: "all_locales"` 获取每种语言的翻译。 价格和SKU不变. |
| `set_pay_enabled` | `pay.write` | 明确允许或禁用新的付款。 赋能是一种实事求是的商业变革:只有在作者授权和检查准备状态后才能这样做。 后端的先决条件仍然得到执行. |
| `set_pay_trial` | `pay.write` | 设置免费审判 : `trialDays` (0-365)每次安装,从第一张许可证读取算入服务器; `null` 关掉 新的长度也使已经进行的审判移动. |
| `rotate_pay_key` | `pay.write` | 生成一个新的可发布 SDK 密钥 。 先前的密钥仍然为已安装的扩展构建所接受; 这不是秘密撤销 。 永远不要盲目重试. |

### 主机连接器上的所有人批准

在主机连接器(OAuth sign-in)上,移动资金或向公众发布内容的更改是提议,而不是立即编辑: `set_pay_enabled`, (中文(简体) ), `upsert_pay_offer`, (中文(简体) ), `archive_pay_offer`, (中文(简体) ), `archive_pay_app`, (中文(简体) ), `set_pay_seller_profile`, (中文(简体) ), `set_pay_trial`, (中文(简体) ), `update_uninstall_offer`, (中文(简体) ), `publish_privacy_policy` 财务报告和审定财务报表 `set_legal_translations` (隐私政策和许可证条款)。 每个返回 `status: "pending_approval"` 带有 `approvalId` 还有一个 `approvalUrl`。除非所有者在道场打开链接并批准,否则不会改变; `get_approval` 报告结果。 一项提案在24小时后失效(政策为72小时),关于同一事项的更新的提案取代了更旧的提案。 对于一项政策或翻译,文本与提案一起被存储,因此所有者完全批准被公布的单词;如果其英文文本在两者之间被更改,翻译也会被拒绝. 提议编辑后,只有一些字段的名字被存储在提议时的其他术语中,包括价格和付费墙订单,因此所有者会批准它会保存的每一个术语.

当地人 `ek_` API 密钥从 [API 密钥](https://dojo.extenshi.io/api-keys) 直接行动,和以前一样:持有它的人是主人自己的工具. 有了钥匙,这些工具立刻改变活状态,不返回 `approvalId`,而他们在本地软件包上的描述是这么说的。 唯一的例外是 `request_license_terms_publication`,它询问所有者的任何连接。 没有工具删除工程或扩展名 .

作者在浏览器中完成法律接受和Frade KYC. 读取 `get_pay_readiness` ; 启用、密钥旋转和提供更改需要明确的作者授权。 导出页载有私人金融数据,必须留在作者控制的目的地. 只有可公布的 SDK 密钥属于扩展名,从不包含开发者 API 密钥或 Frede 密钥.

## 常见问题

### @extenshi/mcp 是什么？

Extenshi MCP 服务器——将扩展目录\(搜索、安全、市场研究\)和预印扫描带入您的AI工具

### 如何安装 @extenshi/mcp？

在项目目录运行 npm install @extenshi/mcp，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 extenshi-mcp，可以用 npx extenshi-mcp 直接运行。

### @extenshi/mcp 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @extenshi/mcp 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @extenshi/mcp 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=20。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @extenshi/mcp 可以商用吗？

@extenshi/mcp 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @extenshi/mcp 的下载量有多少？

根据 npm 官方下载统计，@extenshi/mcp 在 2026/10/14 – 2026/11/12 这 30 天内被下载 6,453 次，日均约 215 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @extenshi/mcp 还在维护吗？

最新版本 0\.28\.0 发布于 2026/11/13（1 天前）；至今共发布 48 个版本，其中过去 12 个月发布了 48 个；首次发布于 2026/06/06。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

