Token导航 LogoToken导航TokenDH.com
MCP rails template logo
开发工具stdio官方级别未说明来源级核验

MCP rails template

MCP Server

@modelcontextprotocol/inspector

A minimal Rails API template for creating MCP (Model Context Protocol) servers with robust tool execution capabilities and examples.

工具数

0

提示词数

0

GitHub Stars

42

资源数

0
Ruby集成工具JavaScriptClaude开发工具Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

seuros

提供方

seuros

最后核验

2026/5/18 02:16

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @modelcontextprotocol/inspector --url http://localhost:8080/mcp

详细介绍

动作MCP示例🚀

一个简单的Ruby on Rails应用程序,演示如何集成和使用 行动MCP 宝石。gem源代码可以在GitHub上找到,网址为 .

此应用程序展示了如何在Rails项目中定义和使用MCP组件。

______________________________________________________________________

需求

  • Ruby(参见 .ruby-version 对于推荐版本)
  • PostgreSQL(或Docker)

______________________________________________________________________

入门指南

1.克隆和设置

git clone https://github.com/seuros/mcp_rails_template.git
cd mcp_rails_template
bin/setup

2.环境配置

复制提供的 .env.example 文件:

cp .env.example .env

编辑 .env 并根据您的设置填写必要的值(尤其是像这样的工具所需的任何API密钥 fetch_weather_by_location_tool).

3.数据库设置

您可以使用Docker快速启动一个临时PostgreSQL实例:

make up

这将在端口上启动PostgreSQL 5466.

或者,通过编辑配置自己的PostgreSQL数据库 config/database.yml.

4.运行应用程序

启动Rails服务器:

bin/rails s

该应用程序将在 http://localhost:3002.

______________________________________________________________________

ActionMCP服务器

ActionMCP作为 独立服务器 在港口 62770 (通过 mcp.ru).Nginx代理 /mcp 请求到此服务器。

Client → nginx:8080/mcp → ActionMCP:62770

______________________________________________________________________

认证

此应用程序通过以下方式使用基于JWT的身份验证 ApplicationGateway 类。

测试用户(来自夹具)

电子邮件密码角色
test@example.com密码123测试用户
admin@example.com密码123管理员用户

装载夹具

bin/rails db:fixtures:load FIXTURES=users

生成JWT令牌

# In Rails console
user = User.find_by(email: 'test@example.com')
token = user.generate_jwt(expires_in: 10.years)  # Long-lived for demo

MCP客户端配置

A. .mcp.json 文件提供了一个预配置的长期令牌:

{
  "mcpServers": {
    "mcp_rails_template": {
      "url": "http://localhost:8080/mcp",
      "headers": {
        "Authorization": "Bearer "
      }
    }
  }
}

或者用curl手动测试:

curl -H "Authorization: Bearer " http://localhost:8080/mcp

网关配置

网关已在中配置 config/mcp.yml:

development:
  authentication: ["jwt"]
  gateway_class: "ApplicationGateway"

在工具中访问用户

class MyTool < ApplicationMCPTool
  def perform
    render text: "Hello #{current_user.name}!"
  end
end

______________________________________________________________________

MCP组件(app/mcp/)

此应用程序包括ActionMCP组件的几个示例:

提示(app/mcp/prompts/)

  • epic_adventure_prompt.rb:根据提供的英雄姓名和冒险类型(幻想、科幻、神秘)生成一个简短的叙事冒险故事。它可以选择性地包含一个占位符图像数据串。

资源模板(app/mcp/resource_templates/)

  • gemfile_template.rb:以JSON资源的形式提供对项目Gemfile依赖关系的访问。它使用Bundler根据指定的环境获取宝石(production, test, development,或 default).资源URI遵循以下模式 gemfile://{environment}.

工具(app/mcp/tools/)

工具定义了语言模型可以请求执行的特定操作。

  • dependency_info_tool.rb:使用Bundler从中检索依赖关系信息 GemfileGemfile.lock。它还检查是否存在 .gemspec 运行时依赖关系的文件。它为输出单独的JSON资源 production, test,以及 runtime 依赖性。
  • fetch_weather_by_location_tool.rb:从Open-Meteo API获取天气预报数据(https://api.open-meteo.com)基于所提供的纬度和经度坐标。它返回来自API的原始JSON响应。
  • rubocop_tool.rb:使用RuboCop gem的API分析提供的Ruby代码片段。它报告任何检测到的样式或代码质量违规,包括规则名称、消息、行号和列号。
  • ruby_code_analyzer_tool.rb:对项目目录中的Ruby代码执行基本的静态分析。它通过解析对类、模块和方法进行索引 .rb 文件夹。可以查询它以列出所有找到的类、模块或方法,或获取特定类/模块的详细信息(包括源代码片段)(constant)或方法(method_details).

______________________________________________________________________

用法

要交互式测试和检查MCP功能,您可以使用MCP检查器:

npx @modelcontextprotocol/inspector --url http://localhost:8080/mcp

确保Docker正在运行(docker compose up)在执行检查器命令之前。

______________________________________________________________________

贡献

请随时贡献!打开问题或提交pull请求以帮助改进此示例。

______________________________________________________________________

快乐编码! ✨🚀

目录标签

目录标签

Ruby集成工具JavaScriptClaude开发工具developer-toolsagentsrails-apimcp-server本地部署RubyonRails开发辅助API工具

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

@modelcontextprotocol/inspector

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP