工程開發
mcp-rails avatar

mcp-rails

在 Rails 應用中實現完整的模型上下文協議 (MCP)。支援連接外部 MCP 伺服器、將 Rails 應用程式暴露為 MCP 伺服器、透過 Docker 管理子進程,以及 OAuth 2.1 PKCE 驗證。

簡介

mcp-rails 工具包為在 Ruby on Rails 應用程式中整合模型上下文協議 (MCP) 提供了強大的架構框架。它專為開發 AI 代理、工具整合應用程式以及需要與 Claude Desktop、VS Code 或自訂代理環境進行標準化通訊的 LLM 服務而設計。此技術抽象化了 JSON-RPC 2.0 通訊、傳輸層處理與驗證的複雜性,使您的應用程式能夠在 MCP 生態系統中同時充當客戶端與伺服器。

  • 完整的 MCP 伺服器實現,包含工具註冊、資源支援與 JSON-RPC 控制器邏輯。

  • 先進的 MCP 客戶端,能夠透過 HTTP、SSE 串流或本地 Docker 子進程連接到遠端工具。

  • 支援 OAuth 2.1 PKCE 流程,確保與受保護的 MCP 工具與服務進行安全互動。

  • 強大的 Docker 監控器,用於管理子進程 MCP 伺服器,具備健康檢查、多執行緒協調與資料庫後端的工作階段管理。

  • 內建傳輸回退邏輯,根據可用性與環境限制自動切換 HTTP 與 SSE 策略。

  • UI 小工具管線,可輕鬆在工具回應中嵌入視覺元素與互動式組件。

  • 請確保您的開發環境滿足核心要求:Rails 7+、Ruby 3.2+ 與 PostgreSQL,以獲得穩定的工作階段與鎖定管理。

  • 使用鷹架產生器快速啟動客戶端設定並建立標準的 JSON-RPC 通訊路徑。

  • 根據部署延遲需求與網路拓撲選擇合適的傳輸策略(HTTP-first 或 SSE-first)。

  • 使用提供的 Docker 監控器來隔離外部 MCP 工具,這有助於防止資源爭用並提高系統可靠性。

  • 對於依賴驗證的工具,確保資料庫安全儲存權杖,並確保應用程式能有效處理 WWW-Authenticate 401 挑戰序列。

  • 本技術涵蓋從客戶端核心到複雜子進程管理的詳細參考資料,確保您可以根據特定代理工作流程或企業級整合需求自訂堆疊。

倉庫統計

Star 數
0
Fork 數
0
Open Issue 數
0
主要語言
Python
預設分支
main
同步狀態
閒置
最近同步時間
2026年5月3日 下午11:04
在 GitHub 查看