claudeers.
// MCP Servers

ruby-sdk

The official Ruby SDK for the Model Context Protocol servers and clients.

// MCP Servers[ api ][ claude ]#claude#mcp#mcp-client#mcp-server#ruby#mcp-servers◷ NOASSERTION$open-sourceupdated 29 days ago
Actively maintained
100/100
last commit 7 days ago
last release 8 days ago
releases 37
open issues 3
// star history

Install with your AI

Paste into Claude Code, Cursor, or any agent — it reads the repo and wires the tool into your project.

Install and set up ruby-sdk (release-binary project) into my current project.
Found on https://claudeers.com/ruby-sdk
Repo: https://github.com/modelcontextprotocol/ruby-sdk
Homepage/docs: https://ruby.sdk.modelcontextprotocol.io
Detected install method: release-binary → inspect the README
Category: mcp-servers. Platforms: api.
Read the repo's README for exact setup and env vars, then install it and wire it into my project.

Claudeers Health Verdict:
active; community-verified: false. Confirm the source before running anything.
// or install directly (release-binary)

Grab the latest release asset from GitHub.

# download a build from https://github.com/modelcontextprotocol/ruby-sdk/releases
// or clone
git clone https://github.com/modelcontextprotocol/ruby-sdk

// compatibility

Platformsapi
Operating systems—
AI compatibilityclaude
LicenseNOASSERTION
Pricingopen-source
LanguageRuby

Get your FREE $2.50 API credits to access TickAtlas financial data ↗

MCP Ruby SDK

The official Ruby SDK for Model Context Protocol servers and clients.

Detailed guides are available at https://ruby.sdk.modelcontextprotocol.io.

Features

  • Build MCP servers that expose tools, prompts, and resources to any MCP host
  • Build MCP clients that connect to any MCP server, with automatic lifecycle negotiation and OAuth 2.1 authorization
  • Speak every standard transport: stdio and Streamable HTTP (including SSE), with a Rails integration
  • Cover the full protocol surface: server-to-client requests, multi round-trip requests, notifications, progress, logging, cancellation, completions, and pagination

Installation

Add this line to your application's Gemfile:

gem "mcp"

And then execute:

$ bundle install

Or install it yourself as:

$ gem install mcp

You may need to add additional dependencies depending on which features you wish to access.

Quick Start

The following minimal programs show both sides of the protocol: a server that exposes a single tool, and a client that spawns such a server and drives it over stdio.

MCP Server

A minimal server defines a tool and serves it over the stdio transport:

require "mcp"

# Create a simple tool
class ExampleTool < MCP::Tool
  description "A simple example tool that echoes back its arguments"
  input_schema(
    properties: {
      message: { type: "string" },
    },
    required: ["message"]
  )

  class << self
    def call(message:, server_context:)
      MCP::Tool::Response.new([{
        type: "text",
        text: "Hello from example tool! Message: #{message}",
      }])
    end
  end
end

# Set up the server
server = MCP::Server.new(
  name: "example_server",
  tools: [ExampleTool],
)

# Create and start the transport
transport = MCP::Server::Transports::StdioTransport.new(server)
transport.open

Save the script as server.rb, run it, and send JSON-RPC requests via stdin:

$ ruby server.rb
{"jsonrpc":"2.0","id":"1","method":"ping"}
{"jsonrpc":"2.0","id":"2","method":"tools/list"}
{"jsonrpc":"2.0","id":"3","method":"tools/call","params":{"name":"example_tool","arguments":{"message":"Hello"}}}

The same server can also run over Streamable HTTP, including mounted inside a Rails application; see Server Transports.

MCP Client

A minimal client spawns a stdio server as a subprocess, connects, and lists and calls its tools:

stdio_transport = MCP::Client::Stdio.new(
  command: "bundle",
  args: ["exec", "ruby", "path/to/server.rb"],
  env: { "API_KEY" => "my_secret_key" },
  read_timeout: 30
)
client = MCP::Client.new(transport: stdio_transport)

# Perform the MCP initialization handshake before sending any requests.
client.connect

# List available tools.
tools = client.tools
tools.each do |tool|
  puts "Tool: #{tool.name} - #{tool.description}"
end

# Call a specific tool.
response = client.call_tool(
  tool: tools.first,
  arguments: { message: "Hello, world!" }
)

# Close the transport when done.
stdio_transport.close

The same client can connect to Streamable HTTP servers with MCP::Client::HTTP; see Client Transports.

Examples

Runnable examples are available in examples/, including a complete Rails application in examples/rails.

Documentation

License

This project is licensed under the Apache License 2.0 for new contributions, with existing code under MIT. See the LICENSE file for details.

// faq

What is ruby-sdk?

The official Ruby SDK for the Model Context Protocol servers and clients.. It is open-source on GitHub.

Is ruby-sdk free to use?

ruby-sdk is open-source under the NOASSERTION license, so it is free to use.

What category does ruby-sdk belong to?

ruby-sdk is listed under mcp-servers in the Claudeers registry of Claude-compatible tools.

8 views
★ 920 stars
unclaimed
updated 29 days ago

// embed badge

ruby-sdk on Claudeers
[![Claudeers](https://claudeers.com/api/badge/ruby-sdk.svg)](https://claudeers.com/ruby-sdk)

// retro hit counter

ruby-sdk hit counter
[![Hits](https://claudeers.com/api/counter/ruby-sdk.svg)](https://claudeers.com/ruby-sdk)

// reviews

// guestbook

0/500

// related in MCP Servers

🔓

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete…

// mcp-serversf/⟨HTML⟩★ 171,127◷ NOASSERTION[ claude ]
🔓

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Gemini CLI & Hermes Agent. Only official website: ccswitch.io

// mcp-serversfarion1231/⟨Rust⟩★ 136,484◷ MIT[ claude ]
🔓

🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman

// mcp-serversJuliusBrussee/⟨JavaScript⟩★ 107,719◷ MIT[ claude ]
🔓

An open-source AI agent that brings the power of Gemini directly into your terminal.

// mcp-serversgoogle-gemini/⟨TypeScript⟩★ 107,167◷ Apache-2.0[ claude ]

// built by

1 of its contributors also build on official projects — claude-plugins-official, knowledge-work-plugins

→ see how ruby-sdk connects across the ecosystem