Skip to content
Developer API

Connect over MCP

SynovAI runs a hosted Model Context Protocol server at https://platform.synovai.net/api/v1/mcp (Streamable HTTP, JSON-RPC 2.0). Point any MCP-compatible client at it with your API key as a bearer token and an agent can plan retrosynthesis directly. You need a key first, see Account → API keys.

Claude Desktop

Claude Desktop connects to remote HTTP servers through the mcp-remote bridge. Open Settings → Developer → Edit Config (this opens claude_desktop_config.json) and add:

{
  "mcpServers": {
    "synovai": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote",
        "https://platform.synovai.net/api/v1/mcp",
        "--header", "Authorization:${SYNOVAI_AUTH}"
      ],
      "env": { "SYNOVAI_AUTH": "Bearer syn_your_key_here" }
    }
  }
}

Put your key in the SYNOVAI_AUTH env value, keeping the Bearer prefix there (the --header argument has no space after the colon on purpose, that avoids an mcp-remote quirk that splits header values on spaces). Restart Claude Desktop fully, then look for the SynovAI tools in the tools menu.

Cursor

Cursor supports streamable HTTP servers natively. Add this to ~/.cursor/mcp.json (global) or .cursor/mcp.json in your project, then enable the server under Settings → MCP:

{
  "mcpServers": {
    "synovai": {
      "url": "https://platform.synovai.net/api/v1/mcp",
      "headers": { "Authorization": "Bearer syn_your_key_here" }
    }
  }
}

Any client / direct JSON-RPC

The endpoint speaks JSON-RPC 2.0 over a single HTTP POST. The core methods are initialize, tools/list, and tools/call. List the tools directly with:

curl https://platform.synovai.net/api/v1/mcp \
  -X POST \
  -H "Authorization: Bearer $SYNOVAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "jsonrpc": "2.0", "id": 1, "method": "tools/list" }'

Tools exposed

submit_retrosynthesis

Submit a target SMILES and get a job id back.

get_job_status

Poll a job until it succeeds or errors.

get_job_references

Pull literature / patent references for a route.

get_job_convergence

Convergence analysis around a focal intermediate.

validate_smiles

Canonicalize and validate a SMILES string.

Verify it works

After restarting your client, ask the agent to “validate the SMILES CC(=O)Nc1ccc(O)cc1 with SynovAI”. It should call validate_smiles and return the canonical form. From there, ask it to submit a retrosynthesis and poll for routes. Usage is billed the same as the REST API and counts against your key's spend caps.