maquina-app/rails-mcp-server
rails-mcp-server is hosted online, so all tools can be tested directly either in theInspector tabor in theOnline Client.
If you are the rightful owner of rails-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A Ruby implementation of a Model Context Protocol (MCP) server for Rails projects, allowing LLMs to interact with Rails projects.
Try rails-mcp-server with chat:
Tools
Functions exposed to the LLM to take actions
switch_project
Change the active Rails project to interact with a different codebase. Must be called before using other tools. Available projects are defined in the projects.yml configuration file.
project_info
Retrieve comprehensive information about the current Rails project, including Rails version, directory structure, API-only status, and overall project organization. Useful for initial project exploration and understanding the codebase structure.
list_files
List files in the Rails project matching specific criteria. Use this to explore project directories or locate specific file types. If no parameters are provided, lists files in the project root.
get_file
Retrieve the complete content of a specific file with syntax highlighting. Use this to examine implementation details, configurations, or any text file in the project.
get_routes
Retrieve all HTTP routes defined in the Rails application with their associated controllers and actions. Equivalent to running 'rails routes' command. This helps understand the API endpoints or page URLs available in the application.
analyze_models
Retrieve detailed information about Active Record models in the project. When called without parameters, lists all model files. When a specific model is specified, returns its schema, associations (has_many, belongs_to, has_one), and complete source code.
get_schema
Retrieve database schema information for the Rails application. Without parameters, returns all tables and the complete schema.rb. With a table name, returns detailed column information including data types, constraints, and foreign keys for that specific table.
analyze_controller_views
Analyze the relationships between controllers, their actions, and corresponding views to understand the application's UI flow.
analyze_environment_config
Analyze environment configurations to identify inconsistencies, security issues, and missing variables across environments.
load_guide
Load documentation guides from Rails, Turbo, Stimulus, Kamal, or Custom. Use this to get guide content for context in conversations.
Prompts
Interactive templates invoked by user choice
No prompts
Resources
Contextual data attached and managed by the client
Rails Guides List
URI: rails://guides
MIME: text/markdown
Access to available Rails guides
Stimulus Guides
URI: stimulus://guides
MIME: text/markdown
Access to available Stimulus guides
Turbo Guides
URI: turbo://guides
MIME: text/markdown
Access to available Turbo guides
Custom Guides
URI: custom://guides
MIME: text/markdown
Access to available custom imported guides
Kamal Guides
URI: kamal://guides
MIME: text/markdown
Access to available Kamal deployment guides