Class: McpAuthorization::McpController
- Inherits:
-
ActionController::Base
- Object
- ActionController::Base
- McpAuthorization::McpController
- Defined in:
- app/controllers/mcp_authorization/mcp_controller.rb
Instance Method Summary collapse
-
#handle ⇒ Object
POST/GET/DELETE /mcp/:domain : () -> void.
Instance Method Details
#handle ⇒ Object
POST/GET/DELETE /mcp/:domain : () -> void
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'app/controllers/mcp_authorization/mcp_controller.rb', line 7 def handle server_context = build_server_context tools = McpAuthorization::ToolRegistry.tool_classes_for( domain: params[:domain], server_context: server_context ) server = MCP::Server.new( name: McpAuthorization.config.server_name, version: McpAuthorization.config.server_version, tools: tools, server_context: server_context ) transport = MCP::Server::Transports::StreamableHTTPTransport.new(server, stateless: true) server.transport = transport status, headers, body = transport.handle_request(request) headers.each { |k, v| response.set_header(k, v) } render json: body.first, status: status end |