UStackUStack
Hyperterse icon

Hyperterse

Hyperterse 是開源框架,用宣告式設定建立 MCP 工具伺服器;定義工具一次,內建認證、快取與 OpenTelemetry 可觀測性。

Hyperterse

Hyperterse 是什麼?

Hyperterse 是開源框架,用宣告式設定建立 MCP (Model Context Protocol) 工具伺服器。它不會暴露眾多個別 MCP 工具端點,而是將您的工具定義編譯成符合標準的 MCP 伺服器,讓代理程式透過一致介面使用。

框架的核心目的是讓您「定義工具一次」(包含資料庫連線與認證規則),由 Hyperterse 處理執行階段需求—例如認證執行、結果快取與可觀測性—無需為每個工具端點撰寫與維護膠水程式碼。

主要功能

  • 從目錄與宣告檔案的宣告式工具定義app/tools/ 下的每個目錄自動成為工具,因此您無需為每個工具撰寫註冊程式碼。
  • 雙工具 MCP 介面 (search + execute):代理程式與暴露僅兩個 MCP 工具—searchexecute—的伺服器互動,而 Hyperterse 會動態探索並路由至正確的底層工具實作。
  • 內建 api_key 外掛認證:使用內建 api_key 外掛(或自行實作)為工具附加認證,於每次 execute 呼叫前自動執行認證。
  • 全域或每工具 TTL 快取:啟用結果快取,讓相同 execute 呼叫可回傳快取結果,而非再次存取資料庫;快取規則可全域或每工具設定。
  • 多資料庫支援,含管理式連線集區與生命週期:使用適配器連線 PostgreSQL、MySQL、MongoDB 與 Redis;Hyperterse 管理連線集區、健康檢查與優雅關閉。
  • 使用 OpenTelemetry 的可觀測性:Hyperterse 包含 OpenTelemetry 追蹤、指標與結構化記錄,用以除錯端到端的 searchexecute 呼叫。
  • 用於處理器與轉換的 TypeScript 腳本:當宣告檔案不足時,可新增於沙箱執行階段運行的腳本,支援 fetchconsole
  • 編譯為單一部署工件:Hyperterse 將宣告檔案與腳本編譯成單一工件,可於 Docker、Kubernetes、光裸機或任何雲端環境提供服務。

如何使用 Hyperterse

  1. 安裝 Hyperterse,使用提供的指令(cURL、NPM、Bun 或 Homebrew)。
  2. 建立工具與適配器定義
    • 將資料庫適配器置於 app/adapters/
    • 將工具宣告置於 app/tools/,每個工具以目錄名稱表示,並包含宣告檔案(含 SQL 陳述式、類型化輸入,以及選用認證與快取規則)。
  3. (選用) 新增 TypeScript 處理器/轉換,當需要宣告檔案無法支援的邏輯時。
  4. 建置/編譯伺服器工件,將工具、腳本與設定打包在一起。
  5. 於目標環境提供編譯後的 MCP 伺服器;代理程式接著使用 search 尋找工具,並以結構化輸入使用 execute 執行選定工具。

使用案例

  • 資料庫後端的研發或分析工具:在 app/tools/ 定義眾多 SQL 工具,讓代理程式使用 search 找到正確查詢工具,並以類型化輸入使用 execute 執行。
  • 多租戶或存取控制的工具執行:為特定工具附加 API 金鑰認證規則,讓每次 execute 呼叫前自動執行認證。
  • 成本或延遲敏感的查詢工作流程:啟用全域或每工具 TTL 快取,讓重複 execute 呼叫回傳快取結果,而非重新查詢資料庫。
  • 團隊標準化 MCP 伺服器行為:使用 Hyperterse 內建認證、快取與 OpenTelemetry 追蹤,維持不同工具伺服器一致性,無需為每個工具端點維護獨立樣板程式碼。
  • 跨基礎設施類型的生產部署:編譯為單一工件,部署至 Docker、Kubernetes、光裸機或雲端環境,無需變更工具定義方式。

常見問題

  • Hyperterse 是用來做什麼的? Hyperterse 用於從宣告檔案建置 MCP 工具伺服器,編譯並提供內建認證、快取與可觀測性支援。

  • Hyperterse 可以免費使用嗎? 可以。它是 Apache 2.0 授權下的免費開源軟體,且可自行託管。

  • 宣告檔案如何對應到工具? 工具定義於 app/tools/ 下;每個工具目錄對應一個工具名稱,目錄中的宣告檔案指定 SQL 陳述式、類型化輸入,以及選用的認證/快取規則。

  • 支援哪些資料庫? Hyperterse 原生支援 PostgreSQL、MySQL、MongoDB 和 Redis,使用專用適配器。

  • Hyperterse 對代理暴露什麼 MCP 介面? Hyperterse 無論包含多少工具定義,都僅暴露兩個 MCP 工具—searchexecute

替代方案

  • 自訂 MCP 工具伺服器與明確端點:建置暴露每個功能的單一工具端點的 MCP 伺服器。這可提供細粒度控制,但通常需要撰寫並維護更多註冊、驗證、認證、快取與可觀測性程式碼。
  • 專注路由/發現而非編譯的框架:使用代理或路由器將請求對應到後端函式/工具的方法。相較 Hyperterse,您仍需一致實作驗證、認證、快取與追蹤。
  • 僅資料庫工具函式庫與應用程式管理的中介軟體:使用類型化資料庫存取函式庫,並在應用程式層實作認證、快取與追蹤的中介軟體。這將責任移出 MCP 框架,可能增加每個工具的整合工作。
  • 通用工作流程引擎用於工具執行:基於設定執行任務的協調器。這些替代方案可能支援工具鏈接,但 Hyperterse 專注於 MCP 伺服器行為與宣告式工具編譯至標準相容介面。
Hyperterse | UStack