Espone API JSON e MCP HTTP per far lavorare gli agenti sul CRM.
Gli agenti autenticati con token Bearer possono leggere today/pipeline e annotare attività, con host MCP allineati a quelli di produzione. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
class McpController < Api::BaseController
|
||||
def handle
|
||||
request.body.rewind if request.body.respond_to?(:rewind)
|
||||
|
||||
server = EminuxCrmMcp.server_for(user: current_user)
|
||||
transport = MCP::Server::Transports::StreamableHTTPTransport.new(
|
||||
server,
|
||||
stateless: true,
|
||||
serve_subscriptions_listen: false,
|
||||
enable_json_response: true,
|
||||
allowed_hosts: EminuxCrmMcp.allowed_hosts,
|
||||
dns_rebinding_protection: !Rails.env.test?
|
||||
)
|
||||
|
||||
status, headers, body = transport.handle_request(request)
|
||||
headers.each { |key, value| response.set_header(key, value) }
|
||||
self.status = status
|
||||
self.response_body = body
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user