dosco/graphjin
One governed graph for AI agents — GraphQL + MCP over your databases, files, APIs, and code
解決的問題
GraphJin 為 AI Agent 與企業現有資料系統的互動提供了一個受控的統一介面。透過將資料庫、資料倉庫、檔案及原始碼暴露為單一、可稽核的 GraphQL 與 Model Context Protocol (MCP) 介面,防止 Agent 需要原始資料庫憑證或猜測結構。
工作原理
GraphJin 作為一個編譯器與執行階段,連接各種資料來源——包括 PostgreSQL、MySQL、MongoDB、Snowflake、S3 與本地檔案——並自動發現其結構與關聯。它將 GraphQL 查詢轉換為優化的 SQL 或原生查詢,消除了對手動解析器或 ORM 的需求。
對於 AI Agent,它提供了一個探索迴圈,讓 Agent 在採取行動前可以查詢可用資料與程式碼的目錄。它還包含 "CodeSQL",利用 tree-sitter 對原始碼進行索引,允許 Agent 像查詢資料庫一樣查詢程式碼庫。所有操作都會根據執行日誌進行檢查,並受安全策略約束。
適用對象
專為構建需要對營運資料庫、資料倉庫及原始碼進行安全讀寫存取之 AI Agent 的開發人員,以及需要高效能 GraphQL-to-database 閘道器的開發人員而設計。
亮點
- 統一的資料介面:透過單一 GraphQL/MCP 介面存取資料庫、物件儲存 (S3/GCS) 及原始碼。
- 內建 Agent 模式:包含一個伺服器端 Agent,可以透過單一 API 呼叫執行探索迴圈並回傳有證據支持的答案。
- CodeSQL:允許像查詢資料庫資料表一樣查詢原始碼符號、引用與匯入。
- 受控存取:具備查詢白名單、唯讀邊界與感知策略的 MCP 工具,以確保 Agent 的安全性。
- 高效能:將請求編譯為單一優化查詢,以避免 N+1 問題。
- 廣泛的相容性:支援從 PostgreSQL 與 MongoDB 到 BigQuery 與 Snowflake 的廣泛後端。