Six tools: list_domains, get_domain_status, run_audit, create_redirect_rule_proposal, list_ai_workflows, run_ai_workflow
The MCP endpoint is JSON-RPC 2.0 over POST {api}/v1/mcp — initialize the session, list the tools, then call them by name with JSON arguments.
The shape of a call#
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": { "name": "list_domains", "arguments": {} }
}Supported methods are initialize (returns protocol version 2024-11-05 and server name weboptiva-mcp), tools/list, tools/call, resources/list, and resources/read; anything else answers JSON-RPC -32601 Unknown method: …. A body that is not a JSON-RPC envelope is rejected with -32600, and rate limiting is 60 requests per minute per token (Too many MCP requests. Please wait Ns before trying again.). A missing name answers "name" is required. and an unknown tool Unknown tool: <name> (both -32602).
The six tools#
| Tool | Arguments | Notes | |---|---|---| | list_domains | — | every domain with onboarding/operational status | | get_domain_status | domainId (required) | one domain's onboarding, deployment, and operational status | | run_audit | domainId or url | fresh image/performance/SEO audit, result returned inline | | create_redirect_rule_proposal | domainId, sourcePattern, targetUrl (+ optional statusCode 301/302) | mutation — saves an unapplied draft only | | list_ai_workflows | — | latest version of each workflow definition | | run_ai_workflow | workflowId (+ optional dryRun) | mutation unless dryRun: true |
Read-only tokens can call the first four-minus-proposal freely. Attempting a mutation without allowMutations returns an in-band tool error: This MCP token is read-only. Enable "allowMutations" on the token in the dashboard to call <name>. The exception is run_ai_workflow with dryRun: true, which simulates the run with every action/approval step as a no-op and therefore works on any token. Real runs still pass through each workflow's own approval steps — the tool never bypasses them.
Staying observable#
Every tools/call is logged as activity mcp.tool_call with the tool name, token label, ok flag, and a mutation marker. That surfaces in the dashboard's Recent MCP activity table (Tool, Token, Result OK/Failed, (mutation) suffix, When) — screenshot below. The AI workflows screen behind list_ai_workflows/run_ai_workflow shows what a real run will drive.

