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:
2026-09-02 22:43:46 +02:00
co-authored by Cursor
parent 1f946f63ba
commit 936930e691
44 changed files with 1693 additions and 4 deletions
+20
View File
@@ -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