rails-mcp-server

maquina-app/rails-mcp-server

4.1

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