MCP: Custom Clients
The OpenX MCP server is a standard Streamable HTTP MCP endpoint, so any MCP client or agent framework can drive it.
https://openx.fathym.com/oi-api/mcp
Auth: Authorization: Bearer YOUR_TOKEN on every request (token under APIs -> API Keys).
List the tools
curl -X POST 'https://openx.fathym.com/oi-api/mcp' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{ "jsonrpc": "2.0", "method": "tools/list", "id": 1 }'
Call a tool
curl -X POST 'https://openx.fathym.com/oi-api/mcp' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "run_warm_query",
"arguments": { "lookup": "signups-per-hour" }
},
"id": 2
}'
Tool schemas
tools/list returns each tool's inputSchema (JSON Schema), so your client can discover arguments at
runtime. The tools: list_data_connections, run_warm_query, run_adhoc_warm_query, tail_telemetry,
get_workspace_flow (read) and manage_proposals (build - proposes; you accept in the portal).
Agent frameworks
Any MCP-aware framework (LangChain, custom agents) can point at the endpoint and use the tools. Proposals created over MCP wait for human acceptance in the portal - there is no accept tool, by design.
Errors
JSON-RPC errors come back in the standard envelope (error.code / error.message); auth failures
return 401/403. Prefer plain HTTP for reads? Every warm query is also a REST endpoint - see the
REST API.