maquina-app/rails-mcp-server

A Ruby gem implementation of a Model Context Protocol (MCP) server for Rails projects. This server allows LLMs (Large Language Models) to interact with Rails projects through the Model Context Protocol.

解决的问题

本项目为大型语言模型 (LLM) 与 Ruby on Rails 项目的交互提供了一种标准化的方式。它解决了为 AI Agent 提供必要上下文(如数据库架构、路由和模型关系)的问题,从而无需用户手动将代码复制粘贴到提示词中,即可进行代码分析、探索和开发辅助。

工作原理

它实现了模型上下文协议 (MCP),使其能够充当 LLM 客户端(如 Claude Desktop 或 GitHub Copilot)与 Rails 代码库之间的桥梁。服务器可以以 STDIO 模式(用于直接集成)或 HTTP 模式(用于远程访问)运行。

为了最大限度地减少上下文窗口的使用,它采用了“渐进式工具发现”架构。它没有列出所有可能的动作,而是公开了三个主要的引导工具(switch_projectsearch_toolsexecute_tool),LLM 利用这些工具根据需求发现并调用更具体的内部分析器。

适用对象

使用 AI 编程助手并希望让 LLM 能够深入、结构化地访问其应用程序内部结构、文档和配置的 Rails 开发人员。

亮点

  • 深度 Rails 内省:包含针对 Active Record 模型(使用 Prism 静态分析)、Rails 路由、数据库架构和控制器-视图关系的专用分析器。
  • 文档集成:提供对 Rails、Turbo、Stimulus 和 Kamal 官方指南的内置访问,以及对自定义 Markdown 文档的支持。
  • 多项目管理:允许 LLM 在多个配置好的 Rails 项目之间进行切换。
  • 灵活部署:支持 STDIO 和 HTTP/SSE 模式,并与常见的 Ruby 版本管理器(mise, asdf, rbenv, rvm)集成。
  • 面向 Agent 设计:包含专用的配置工具 (rails-mcp-config),以便在 Claude Desktop 和 GitHub Copilot 中轻松设置。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目