Skip to Content
文件AI 與自動化本機 MCP 伺服器

本地 MCP 服務器

應用可以開一個只監聽本機的 JSON-RPC 服務,讓本地 Agent 讀取倉庫狀態。默認關閉,需要時在「設置 → 高級 → 本地自動化(MCP)」裏啓用。

網絡邊界

  • 只綁定 127.0.0.1,不接受外部網卡連接;
  • 只接受 POST /mcp;請求體上限 1 MiB;
  • Host 必須是 127.0.0.1、localhost 或 ::1;
  • 未知方法、未知工具直接拒絕。

端點與端口在設置裏可見,默認端口 47123,可改為 1024–65535 之間的值;改端口會重啓服務器。

令牌

  • 每個請求都必須帶 Authorization: Bearer <token>;
  • 令牌由加密隨機數生成,保存在系統憑據庫,不寫入設置文件,也不進日誌;
  • 可以在設置裏顯示、複製與輪換;輪換後舊令牌立即失效。

讀取工具

讀取工具不改變倉庫狀態,可以隨時調用:

狀態、diff、日誌、分支、遠端、Stash、文件搜索、文件讀取、blame、標籤、提交詳情,以及兩個版本之間的 diff。

每次調用都有邊界:

項目上限
單次調用時限30 秒
diff512 KiB
單文件讀取256 KiB
日誌100 條提交
blame1000 行
搜索500 條匹配

超出部分會被截斷,而不是讓響應無限增長。

寫操作需要逐次批准

目前只有三個變更動作:git.fetch、index.stage、index.unstage。

調用它們時不會立即執行,而是返回 approval_required 與一個審批 ID,並把動作排隊最多兩分鐘:

  • 應用在主線程彈出確認框,寫明倉庫、動作與路徑或遠端;
  • Agent 也可以用 approval.resolve 回答同一個請求;
  • 拒絕、超時、未知 ID 與重放都不會執行任何操作;
  • 動作與結果會寫進日誌,令牌不會。

能拿到令牌的 Agent 也能用 approval.resolve 自行回答同一個請求,所以彈窗只是讓你看見調用,不是阻止 Agent 自我確認。令牌只應交給你信任的 Agent。

當前不提供

  • 創建或修改文件的工具;
  • 按客戶端劃分的令牌權限;
  • 流式響應(返回單個 JSON 響應)。

與其他功能的區別

MCP 是給本地 Agent 的接口,不是給 ACP Agent 用的通道;兩者互不依賴。ACP 的只讀策略見 ACP Agent。

最後更新於