使用说明
项目简介
本仓库是一个Rails应用,展示了如何使用Ruby实现一个简单的MCP服务器,并演示了Rails应用作为MCP客户端如何调用该服务器的功能。该示例包含一个内嵌的MCP服务器,用于提供问候语服务和简单的资源访问。
主要功能点
- 资源 (Resources): 提供一个名为 'hello://world' 的简单文本资源,客户端可以访问获取 "Hello, World!" 消息。
- 工具 (Tools): 注册一个名为 'greet' 的工具,接受客户端传入的 'name' 参数,并返回个性化的问候语 "Hello, [name]!"。
- 客户端调用示例: Rails应用通过 'mcp-rb' gem 作为MCP客户端,演示了如何调用 'greet' 工具。
安装步骤
- 安装依赖: 在项目根目录下运行 'bundle install' 安装Ruby依赖。
- 启动Rails应用: 运行 'rails s' 启动Rails服务器。内嵌的MCP服务器会随Rails应用一同启动。
服务器配置
本示例中的MCP服务器是内嵌在Rails应用中运行的,对于 外部MCP客户端,你需要配置以下信息以连接到 独立的 'hello_world.rb' MCP服务器 (假设你需要独立运行 'mcps/hello_world.rb'):
{ "server_name": "hello-world", "command": "ruby", "args": ["path/to/mcps/hello_world.rb"] // server_name: MCP服务器的名称,定义在 mcps/hello_world.rb 中 // command: 启动MCP服务器的命令,这里使用 ruby // args: 启动命令的参数,指向 mcps/hello_world.rb 脚本的路径。你需要将 "path/to/mcps/hello_world.rb" 替换为 mcps/hello_world.rb 脚本在你的系统中的实际路径 }
注意: 此配置是为 独立运行 'mcps/hello_world.rb' 服务器并供 外部MCP客户端 连接而提供的示例配置。在本示例Rails应用中,MCP服务器已通过 'config/initializers/mcp_hello_world.rb' 配置并内嵌启动,无需额外配置。
基本使用方法
- 启动Rails应用后,访问 'http://localhost:3000/hello?name=[你的名字]' (将 '[你的名字]' 替换为你想要问候的名字,例如 'http://localhost:3000/hello?name=Alice')。
- 页面将返回JSON格式的响应,内容为MCP服务器 'greet' 工具的调用结果,例如 '{"result":"Hello, Alice!"}'。
- 如果不传递 'name' 参数,则默认问候 "Guest"。
这个简单的示例展示了MCP服务器的基本功能,以及如何通过MCP客户端调用工具。你可以参考 'mcps/hello_world.rb' 文件了解MCP服务器的资源和工具是如何定义的。
信息
分类
开发者工具