The remote endpoint is POST /mcp on each LUCA agent host.
The MCP endpoint is public. It needs no Basic Auth password.
It uses JSON-RPC 2.0 over Streamable HTTP.
The server is stateless.
MCP and REST API calls share a limit of 100 requests per client IP in each fixed minute. After that, HTTP 429 includes Retry-After. If the limiter is unavailable, the endpoint returns HTTP 503.
It sends one JSON response for each request and does not send server events.
| Tool | Input | Result |
|---|---|---|
get_product_overview |
none | Sourced product topics |
search_knowledge |
query |
Matching facts and source URLs |
answer_question |
question |
Short answer, source URLs, and official next steps |
assess_fit |
goal, active_abn, gst_registered, accounting |
Nonbinding notes and official links |
get_next_steps |
optional goal |
Steps and official links |
get_topic |
id |
One source-backed fact, scope, and review state |
compare_paths |
none | Three product paths for a visitor goal |
get_source_conflicts |
none | Unresolved public claims to check with LUCA |
All tools are read-only.
The server accepts no personal or bank details.
For protocol 2026-07-28, send _meta in each request and matching HTTP headers.
Call server/discover before tools/list if the client needs the server description.
For a modern tool call, send these headers:
Content-Type: application/json
Accept: application/json, text/event-stream
MCP-Protocol-Version: 2026-07-28
Mcp-Method: tools/call
Mcp-Name: search_knowledge
Send this JSON body:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "search_knowledge",
"arguments": { "query": "GST requirements" },
"_meta": {
"io.modelcontextprotocol/protocolVersion": "2026-07-28",
"io.modelcontextprotocol/clientInfo": {
"name": "example",
"version": "1.0"
},
"io.modelcontextprotocol/clientCapabilities": {}
}
}
}
The JSON-RPC result includes resultType, content, structuredContent, and isError.
The tool returns source URLs in its structured result.
The result can say isError: true for a bad search query.
The server validates all tool arguments against the published schemas.
The get_topic result has topic_not_found when the ID is unknown on that brand.
The compatibility path accepts initialize for protocol 2025-03-26.
It also accepts tools/list and tools/call after that step.
The server does not use sessions.
Tool results include a text block with JSON.
They also include structuredContent for clients that use structured results.
The MCP server checks the Origin header when a client sends one.
Call the server from a trusted client or use the local CLI process.
The local process needs a network connection because it sends tool calls to the remote Worker.