@hitheo/mcp 有意設計成一個體量小、行為可預測的軟件。本頁將準確說明它做什麼、不做什麼,以及你還可以採取哪些措施來進一步加固安裝。
服務器運行在哪裏
該服務器是以你本地用戶身份運行的 Node.js 進程。它沒有守護進程,沒有共享套接字,也沒有跨 IDE 的協調機制。你關閉工作區時,該進程就會退出。
由於傳輸方式是 stdio 而非 HTTP,網絡上的任何東西都無法與它通信。唯一能夠調用工具的實體,是作為其父進程、生成了該子進程的那個 IDE 進程。在出站方向上,它使用與任何 SDK 或 curl 調用相同的 TLS 1.2+ 協議訪問同一個 Theo API。
API 密鑰保存在哪裏
- 你在 shell 中導出
THEO_API_KEY(或為 GUI 應用啓動持久化保存它)。 - IDE 讀取該值,並在生成
@hitheo/mcp子進程時將其作為環境變量傳遞過去。 - 服務器在啓動時讀取一次該值,並將其保存在進程內存中。
- 每一次出站調用都會簽名
Authorization: Bearer theo_sk_...。 - IDE 的智能體本身永遠看不到該密鑰——它只能看到工具的輸出結果。
@hitheo/mcp從不會把密鑰寫入磁盤。(你的 shell 配置文件或可選的~/.theo/credentials文件可能會持久化保存它,但那些是 CLI 產生的文件,與 MCP 無關。)- 該密鑰不會傳輸給 IDE 廠商、模型提供方或任何第三方。它是直接發送到
api.hitheo.ai的。 - 該密鑰不會被嵌入到智能體可以讀取的工具描述、schema 或資源內容中。
純 JSON 配置沙箱
@hitheo/mcp 在啓動時會從當前工作目錄讀取 theo.config.json。它默認不會讀取 theo.config.js 或 theo.config.ts。
這樣設計的原因在於威脅模型:IDE 會在你打開的任何項目內部隨意啓動 MCP 服務器,其中包括你從互聯網上克隆下來的項目。如果自動加載 JS/TS 配置,那麼一個惡意的 theo.config.js 就可能在工作區打開的瞬間通過 import() 執行任意代碼——在你還沒讀過一行文件內容之前,就已經以你的用戶身份實現了完整的任意代碼執行。
JSON 配置涵蓋了所有文檔中記錄的用例(persona、skills、defaultMode、tools、temperature、metadata),且不存在上述風險。
如果你確實需要在一個你信任的目錄中使用 JS/TS 配置:
theo.config.js,再加載 theo.config.ts,並保留同樣的 JSON 回退機制。
供應鏈
從版本0.1.4 起,npm 上每一個官方的 @hitheo/* 壓縮包——包括 @hitheo/mcp——都附帶簽名的 npm 來源證明(provenance)。每一份認證都會將該壓縮包關聯回生成它的具體公開 CI 工作流和 git commit。
在安裝或鎖定新版本之前先進行驗證:
security@opencharts.com(參見披露政策)。
鎖定一個已知可用的版本
npx -y @hitheo/mcp 會在每次安裝時解析最新發布的版本。如果你想在 CI 或共享的開發環境中鎖定某個特定版本,請在你的 IDE 配置中固定它:
theo init(或手動編輯配置)即可切換到新版本。
智能體能做什麼、不能做什麼
IDE 智能體所能看到的全部接口,就是那 8 個工具和 3 個資源。該 MCP 服務器不會暴露:- 你的文件系統
- 你的 shell
- 你本地的進程或環境變量
- 除已記錄的 HTTP 端點之外的任何 Theo 內部實現
theo_code 返回的是代碼本身,而不是一個運行時)都是由IDE自行提供執行能力的。是否執行由你以及 IDE 自身的權限模型決定——@hitheo/mcp 本身相對於你的機器而言是隻讀的。
密鑰輪換、作用域與撤銷
@hitheo/mcp 完全繼承了身份驗證文檔中記錄的密鑰模型:
- 靜態哈希存儲——Theo 只保存
theo_sk_*密鑰的 SHA-256 哈希值。 - 作用域權限——每個密鑰都可以被限制到特定的能力範圍(補全、技能、工具、連接器、賬單)。沒有
completions作用域的密鑰無法運行theo_complete;該工具會向智能體返回403 missing_scope錯誤。 - 按密鑰限流——限流是按密鑰生效的,因此一個失控的 IDE 智能體不會拖垮你其他的集成。
- 即時撤銷——在控制台撤銷密鑰後,MCP 服務器會在幾秒鐘內停止工作(下一次調用會返回
401 key_revoked)。
- 在控制台中創建新密鑰。
- 更新 IDE 啓動所在的環境變量 / shell 配置。
- 重啓 IDE。
- 在同一個 shell 中通過
theo verify進行確認。 - 撤銷舊密鑰。
報告安全漏洞
在@hitheo/mcp 或相關基礎設施中發現了安全問題?請參閱披露政策。請發送郵件至 security@opencharts.com,而不要提交公開的 GitHub issue。
