Ferramenta gratuita

De OpenAPI a servidor MCP em Ruby

Você já tem uma especificação OpenAPI. Veja como ela vira um servidor MCP funcional em Ruby, e quais partes um conversor não faz por você.

SDK da comunidade community SDKs
Instalação
gem install mcp
Uma ferramenta MCP funcional em Ruby
# Community SDK; check the gem tracks a current spec revision before relying on it.
server = MCP::Server.new(name: "my-server")

server.register_tool(
  name: "get_order",
  description: "Look up one order by its id and return its current status.",
  input_schema: { type: "object",
                  properties: { orderId: { type: "string",
                                           description: "The order id to look up" } },
                  required: ["orderId"] }
) { |args| fetch_order(args["orderId"]) }

Gerado, rodando e ainda invisível.

Converter uma especificação te dá um servidor. Não te dá ninguém que queira usá-lo. O MCP Showcase transforma o mesmo endpoint em um playground ao vivo com documentação legível para cada ferramenta.

Como funciona

link
Converta a especificação

O conversor de OpenAPI transforma cada operação em uma definição de ferramenta MCP, no seu navegador e sem enviar a sua especificação.

play_circle
Ligue tudo em Ruby

Pegue as definições de ferramentas geradas e implemente-as contra a sua API com o SDK de Ruby, no formato mostrado acima.

checklist
Reduza a lista

Uma especificação convertida te dá uma ferramenta por operação, o que quase sempre é demais. Fique com as de que um agente precisa.

Da especificação para Ruby

A metade mecânica é mesmo mecânica: cada operação OpenAPI vira uma ferramenta MCP, a summary vira a descrição, e os parâmetros de caminho, query e corpo achatam em um único esquema de entrada. O conversor de OpenAPI faz essa parte no seu navegador, sem enviar a sua especificação.

O que sobra tem a forma de Ruby: implementar essas ferramentas contra a sua API com community SDKs (gem install mcp), no formato mostrado acima.

Nenhum SDK oficial único

Ruby não tem um SDK mantido sob modelcontextprotocol, então as opções são gems da comunidade com completude e atualidade variáveis. Confira quando a gem acompanhou uma revisão da especificação pela última vez antes de se comprometer: o protocolo andou mais rápido que a maioria dos ports da comunidade, especialmente em transportes.

O que nenhum conversor faz por você

  • A autenticação. O código gerado chama a sua API sem credenciais. Ligar o cabeçalho, o token ou o fluxo OAuth é com você.
  • Reescrever as descrições. Uma summary de OpenAPI é escrita para quem lê documentação. Uma descrição de ferramenta MCP é lida por um modelo que decide o que chamar. São trabalhos diferentes, e as summaries normalmente precisam de reescrita depois de convertidas.
  • Escolher o que expor. Um conversor te entrega uma ferramenta por operação. Para a maioria das APIs isso é uma ordem de grandeza demais.
  • Expandir corpos com $ref. Resolvê-los exige a sua seção components, então eles chegam como objeto genérico.

Por que o número de ferramentas importa tanto

As definições de ferramentas são enviadas ao modelo a cada requisição, não uma vez por sessão. Oitenta operações são oitenta descrições e oitenta esquemas na janela de contexto de cada turno — pagos continuamente, e mensuravelmente piores na escolha do que uma lista curta. A calculadora de tokens mostra quanto uma dada lista custa; o linter de esquemas mostra se as descrições sobreviveram à conversão em estado utilizável.

Ferramentas e guias relacionados

Gerado não é a mesma coisa que utilizável

Um servidor convertido prova que o mapeamento funcionou. Para um cliente em potencial ele não diz nada: essa pessoa não lê Ruby e não vai configurar um cliente para descobrir. O MCP Showcase transforma o mesmo endpoint em um playground ao vivo com documentação por ferramenta que qualquer um pode experimentar no navegador.

Perguntas frequentes

O mapeamento é mecânico: cada operação vira uma ferramenta, a summary vira a descrição e os parâmetros viram um único esquema de entrada plano. O que não é mecânico: autenticação, tratamento de erros e decidir quais operações merecem estar na lista de ferramentas.

A autenticação, que você adiciona. Os corpos de requisição atrás de um $ref, cuja resolução exige a sua seção components. E o julgamento: um conversor te dá alegremente oitenta ferramentas, o que é pior do que oito.

Porque as definições de ferramentas são enviadas ao modelo a cada requisição. Oitenta operações são oitenta descrições e oitenta esquemas no contexto de cada turno, pagos continuamente, e ao mesmo tempo deixam o modelo mensuravelmente pior para escolher entre elas.

Sim, e vale saber disso antes de converter. Uma summary de OpenAPI é escrita para quem lê documentação; uma descrição de ferramenta MCP é lida por um modelo que decide o que chamar. São trabalhos diferentes, e as summaries costumam precisar de reescrita depois.

Publique e passe a URL pelo MCP Inspector para confirmar o handshake e a lista de ferramentas, e depois pelo linter de esquemas para ver se as descrições sobreviveram bem o bastante para um modelo escolher direito.

Mais ferramentas MCP gratuitas