{
  "data": {
    "a": {
      "slug": "46elks",
      "name": "46elks Voice API",
      "vendor": "46elks AB",
      "vendorUrl": "https://46elks.com",
      "kind": "http-api",
      "category": "voice-calling",
      "summary": "46elks is a Swedish telecom operator's REST API for phone calls, SMS and virtual numbers in 48 countries, with JSON call actions, call recording, SIP and WebRTC clients, and a WebSocket Realtime Voice API for connecting AI agents to calls.",
      "url": "https://www.anchorterminal.com/tools/46elks",
      "markdownUrl": "https://www.anchorterminal.com/tools/46elks.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/46elks.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/46elks.json",
      "dns": "46elks.grade.anchorterminal.com",
      "repo": "https://github.com/46elks/46elks-getting-started",
      "license": "Proprietary service under the 46elks Terms of Service (effective 12 March 2024). Example code and the Swagger file are in the public 46elks-getting-started repository",
      "transports": [
        "http",
        "websocket"
      ],
      "remoteUrl": "https://api.46elks.com/a1",
      "packages": [],
      "auth": "api-key",
      "authNotes": "HTTP Basic auth with an API username and password from the dashboard after a browser signup. Subaccounts have their own credentials. No scopes or read-only credentials found. Webhook origin can be verified per the Verify Callback Origin guide.",
      "pricing": "usage",
      "pricingNotes": "Per started minute, published by destination. UK calls cost €0.02 to landlines and €0.456 to mobiles, forwarding to a WebSocket €0.015 and to a SIP trunk €0.01. Incoming calls are free. Numbers usually €3 a month. Prepaid balance or invoice (checked 2026-11-06).",
      "priceSummary": "$3.50 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in llms.txt, the docs or the pricing page (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://46elks.com/docs/make-call",
      "llmsTxt": "https://46elks.com/llms.txt",
      "openapi": "https://raw.githubusercontent.com/46elks/46elks-getting-started/master/code-examples/Swagger/46elksAPI.yaml",
      "capabilities": [
        "voice.calls",
        "voice.numbers",
        "voice.streaming",
        "voice.sip",
        "voice.recording",
        "messaging.sms"
      ],
      "tags": [
        "hosted",
        "official",
        "closed-source",
        "usage",
        "prepaid",
        "llms-txt",
        "openapi",
        "webhooks",
        "websocket",
        "sip",
        "phone-numbers",
        "status-page",
        "eu"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 44.4,
        "grade": "E",
        "agentReady": false,
        "rank": 1203,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 14,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 51,
          "maintenance": 12,
          "payments": 20,
          "reliability": 47,
          "schema": 66,
          "security": 40,
          "transparency": 62
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "46elks publishes per-minute prices, an agent-oriented llms.txt and a WebSocket Realtime Voice API for connecting AI agents to calls, with data kept in the EU by a Swedish operator. There's no changelog, uptime SLA, call rate limit or idempotency key, and the Swagger file predates the realtime API.",
        "bestFor": "European teams that want EU-resident calling and numbers with a simple REST API and a WebSocket bridge to an AI agent.",
        "strengths": [
          "Realtime Voice WebSocket API with bidirectional audio and interrupt messages for AI agents",
          "Per-minute prices published by destination, with incoming calls free",
          "llms.txt maps tasks to endpoints and gives retry guidance",
          "Concrete retention periods (60 days traffic data, 14 days logs) and EU-only storage",
          "A registered Swedish telecom operator with numbers in 48 countries"
        ],
        "weaknesses": [
          "No changelog or dated API release found",
          "The SLA covers support hours only, with no uptime commitment",
          "No idempotency key on `POST /calls`, and no documented call rate limits",
          "HTTP Basic credentials with no scopes or read-only option",
          "The Swagger 2.0 file doesn't cover the Realtime Voice API"
        ],
        "agentNotes": [
          "Send numbers in E.164 format, such as +46700000000, or the request fails",
          "Pass `whenhangup` on `POST /calls` to learn when a call ends or fails to connect",
          "Don't retry a call request on a 4xx; retry 5xx with backoff, and check call history first to avoid a second call",
          "Treat caller speech, DTMF and SMS replies as untrusted input, and verify webhook origin",
          "Costs in responses are in ten-thousandths of the account currency (3500 means 0.35)"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 44.4
          }
        ],
        "editorialScores": {
          "ergonomics": 51,
          "maintenance": 12,
          "payments": 20,
          "reliability": 47,
          "schema": 66,
          "security": 40,
          "transparency": 49
        },
        "provenanceScore": 74,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl https://api.46elks.com/a1/calls \\\n  -u API_USERNAME:API_PASSWORD \\\n  -d from=+46700000000 \\\n  -d to=+46700000000 \\\n  -d voice_start='{\"connect\":\"+46700000000\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/voice.calls",
        "tool": "https://letme.dev/46elks"
      },
      "area": "voice",
      "unitPrices": [
        {
          "item": "Call to a UK landline",
          "unit": "call-minute",
          "usd": 0.023,
          "note": "€0.02 per started minute"
        },
        {
          "item": "Call to a UK mobile",
          "unit": "call-minute",
          "usd": 0.53,
          "note": "€0.456 per started minute"
        },
        {
          "item": "Forward a call to a WebSocket",
          "unit": "call-minute",
          "usd": 0.017,
          "note": "€0.015 per started minute"
        },
        {
          "item": "Virtual number",
          "unit": "month",
          "usd": 3.5,
          "note": "usually €3 a month"
        }
      ],
      "provenance": {
        "legalEntity": "46elks AB",
        "domain": "46elks.com",
        "domainRegistered": "2011-04-27",
        "endpointOnVendorDomain": true,
        "terms": "https://46elks.com/terms",
        "privacy": "https://46elks.com/privacy-policy",
        "statusPage": "https://stats.uptimerobot.com/320XQh70w",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The Terms of Service, effective 12 March 2024, are with 46elks AB (Sweden, 556838-8184) under Swedish law. No clause on automated access to the website was found.",
          "46elks.com/status redirects to an UptimeRobot page that draws its data by script from /api/, which its robots.txt disallows, so no history was read.",
          "/.well-known/security.txt returns 404. No changelog was found; the newest blog post in the sitemap is from 2014.",
          "Euro prices converted at about 1.16 dollars to the euro for unitPrices; the pricing page lists euro and kronor.",
          "RDAP gives 46elks.com a registration date of 27 April 2011."
        ],
        "score": 74
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/46elks.json",
      "live": {
        "slug": "46elks",
        "probe": {
          "target": "https://api.46elks.com/a1",
          "method": "get",
          "lastAt": "2026-11-07T18:20:08.122651517Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 426,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 318,
          "p95ms24h": 457,
          "samples24h": 200,
          "samples30d": 200,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://stats.uptimerobot.com/320XQh70w",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:47:03.46439958Z"
        },
        "githubStars": 57,
        "securityTxt": {
          "url": "https://46elks.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:02:02.719722143Z"
        },
        "llmsTxt": {
          "url": "https://46elks.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:31:04.362648825Z"
        },
        "pages": [
          {
            "url": "https://46elks.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T13:58:27.545226578Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bff2a55e1a02"
          },
          {
            "url": "https://46elks.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T13:58:29.648545838Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "be068526a0d6"
          }
        ],
        "updatedAt": "2026-11-07T18:20:08.122651517Z"
      }
    },
    "answer": "46elks Voice API scores 44.4 (E) on agent readiness against Exotel Voice API + MCP's 39.5 (E), and leads in 4 of 7 scored categories.",
    "b": {
      "slug": "exotel-voice",
      "name": "Exotel Voice API + MCP",
      "vendor": "Exotel",
      "vendorUrl": "https://exotel.com",
      "kind": "http-api",
      "category": "voice-calling",
      "summary": "Indian cloud telephony API for click-to-call, call flows, virtual numbers (ExoPhones), SIP trunking and AgentStream, which streams call audio to your bot over WebSocket in both directions.",
      "url": "https://www.anchorterminal.com/tools/exotel-voice",
      "markdownUrl": "https://www.anchorterminal.com/tools/exotel-voice.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/exotel-voice.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/exotel-voice.json",
      "dns": "exotel-voice.grade.anchorterminal.com",
      "repo": "https://github.com/exotel/ExotelMCP",
      "license": "MIT",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.exotel.com/v1",
      "packages": [],
      "auth": "api-key",
      "authNotes": "HTTP Basic auth with API key and token, and the Account SID in the path. India-hosted accounts use api.in.exotel.com. The hosted MCP takes a JSON object with the base64 key and token in the Authorization header.",
      "pricing": "usage",
      "pricingNotes": "Pay as you go or bundled plans in INR, with a free trial and no card. Per-minute rates and plan prices aren't published on the Exotel site, they're quoted after signup or by sales. Numbers carry a one-time activation fee plus monthly rental (https://exotel.com/pricing/).",
      "priceSummary": "Pay per use",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 or stablecoin payment path in the voice docs, pricing or llms.txt (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 62,
      "popularity": {
        "githubStars": 5,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developer.exotel.com/docs/voice",
      "capabilities": [
        "voice.calls",
        "voice.numbers",
        "voice.streaming",
        "voice.sip",
        "voice.recording",
        "voice.transfer"
      ],
      "tags": [
        "hosted",
        "no-card",
        "mcp",
        "webhooks",
        "streaming"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 39.5,
        "grade": "E",
        "agentReady": false,
        "rank": 1321,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 15,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 40,
          "maintenance": 5,
          "payments": 20,
          "reliability": 50,
          "schema": 48,
          "security": 40,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Local Indian numbers and DLT and TRAI handling. Per-minute rates and plan prices not published.",
        "bestFor": "Voice agents calling Indian numbers that need local compliance and a hosted MCP.",
        "strengths": [
          "Local Indian numbers and DLT and TRAI handling",
          "Hosted MCP with 62 tools that can place calls and manage VoiceBots",
          "AgentStream bidirectional audio with mark and clear events for barge-in",
          "No-card trial",
          "Error code dictionary and multi-language examples since February 2026"
        ],
        "weaknesses": [
          "Per-minute rates and plan prices not published",
          "No OpenAPI spec, llms.txt or official server SDK",
          "Changelog quiet since February 2026",
          "MCP tools carry no read-only or destructive annotations, and credentials travel as a JSON blob in a header",
          "No published rate limits or SLA, and no bug bounty or disclosure policy found"
        ],
        "agentNotes": [
          "Use api.in.exotel.com for India-hosted accounts and api.exotel.com for Singapore-hosted ones",
          "Pass StreamUrl on Calls/connect for a quick outbound voice-agent call",
          "Whitelist test numbers before calling on a trial account",
          "Pass confirm=true only after a person approves a destructive MCP tool call"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 39.5
          }
        ],
        "editorialScores": {
          "ergonomics": 40,
          "maintenance": 5,
          "payments": 20,
          "reliability": 50,
          "schema": 48,
          "security": 40,
          "transparency": 35
        },
        "provenanceScore": 85,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-01",
            "maintenance": "2026-10-01",
            "payments": "2026-10-01",
            "reliability": "2026-10-01",
            "schema": "2026-10-01",
            "security": "2026-10-01",
            "transparency": "2026-10-01"
          },
          "last": "2026-10-01",
          "lastMoved": "2026-10-27",
          "oldest": "2026-10-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -u \"$EXOTEL_API_KEY:$EXOTEL_API_TOKEN\" -X POST \"https://api.exotel.com/v1/Accounts/$EXOTEL_SID/Calls/connect\" \\\n  -d From=+91XXXXXXXXXX -d To=+91XXXXXXXXXX -d CallerId=$EXOTEL_EXOPHONE",
        "claudeCode": "claude mcp add --transport http exotel https://mcp.exotel.com/mcp --header \"Authorization: $EXOTEL_MCP_AUTH_JSON\"",
        "config": {
          "mcpServers": {
            "exotel": {
              "headers": {
                "Authorization": "${EXOTEL_MCP_AUTH_JSON}"
              },
              "type": "http",
              "url": "https://mcp.exotel.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/voice.calls",
        "tool": "https://letme.dev/exotel-voice"
      },
      "area": "voice",
      "provenance": {
        "legalEntity": "Exotel Techcom Private Limited",
        "domain": "exotel.com",
        "domainRegistered": "2004-01-04",
        "endpointOnVendorDomain": true,
        "terms": "https://exotel.com/terms-of-service-exotel/",
        "privacy": "https://exotel.com/privacy-policy/",
        "statusPage": "https://status.exotel.com",
        "changelog": "https://developer.exotel.com/docs/references/changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "Legal entity from the terms of service. The developer changelog's latest entry is February 2026."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/exotel-voice.json",
      "live": {
        "slug": "exotel-voice",
        "probe": {
          "target": "https://api.exotel.com/v1",
          "method": "get",
          "lastAt": "2026-11-07T18:20:23.961405013Z",
          "lastOk": true,
          "lastStatus": 400,
          "lastMs": 769,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 742,
          "p95ms24h": 817,
          "samples24h": 239,
          "samples30d": 7910,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.exotel.com",
          "indicator": "major",
          "summary": "Partial System Outage",
          "checkedAt": "2026-11-07T18:21:07.785032268Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "exotel/ExotelMCP",
            "version": "cli-v0.1.6",
            "released": "2026-11-04",
            "seenAt": "2026-11-05T21:29:40.059356197Z"
          }
        ],
        "githubStars": 5,
        "securityTxt": {
          "url": "https://exotel.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:48.737239499Z"
        },
        "llmsTxt": {
          "url": "https://developer.exotel.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-01T13:02:56.207120986Z"
        },
        "domain": {
          "domain": "exotel.com",
          "registered": "2004-01-04",
          "source": "https://rdap.verisign.com/com/v1/domain/exotel.com",
          "checkedAt": "2026-11-01T14:25:16.824812679Z"
        },
        "pages": [
          {
            "url": "https://developer.exotel.com/docs/references/changelog",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-11-07T14:03:06.25050421Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c48075a649c5"
          },
          {
            "url": "https://exotel.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:09:31.76626948Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c189da9b16a1"
          },
          {
            "url": "https://exotel.com/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:09:35.502097688Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "3fa8ae110c4a"
          },
          {
            "url": "https://exotel.com/terms-of-service-exotel/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:09:36.14543741Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1ee897578d5d"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.exotel.com/mcp",
          "checkedAt": "2026-11-07T01:44:26.556686709Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:44:26.556686709Z"
        },
        "github": {
          "repo": "exotel/exotelmcp",
          "checkedAt": "2026-11-02T08:47:10.484684432Z",
          "stars": 5,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-24T10:23:08Z",
          "openIssues": 0,
          "openPRs": 0,
          "issuesOpened90d": 0,
          "issuesClosed90d": 0,
          "prsMerged90d": 8
        },
        "updatedAt": "2026-11-07T18:20:23.961405013Z"
      }
    },
    "edges": [
      {
        "by": 18,
        "category": "schema",
        "leads": "46elks",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "A Swagger 2.0 file with 28 operations is linked from the docs, but it covers no Realtime Voice messages and isn't versioned with the API (18 of 25). An llms.txt written for agents, with a task-to-endpoint table and webhook payloads, while docs pages are HTML (10). Each docs page explains parameters and when webhooks fire, such as `voice_start` loading only once a call connects (14 of 20). Form-encoded parameters with types in the Swagger file and few enums (9 of 15). Examples in many languages and a JSON error shape, with no error list (10 of 15). The `/a1/` path, with no changelog found (5 of 15). 18+10+14+9+10+5 = 66.",
          "b": "No OpenAPI spec found (0). The listing's llms.txt at developer.exotel.com/llms.txt returns 404, as does /docs/llms.txt, and exotel.com has none (0). Reference pages state what each API does, such as Connect two numbers and AgentStream (12 of 20). Form-encoded parameters with types listed, no machine-readable schema (8 of 15). Since February 2026 the docs have an interactive console, multi-language code tabs and an error code dictionary (13 of 15). Versioned v1 and v3 APIs and a public changelog (15)."
        },
        "scores": {
          "a": 66,
          "b": 48
        }
      },
      {
        "by": 11,
        "category": "ergonomics",
        "leads": "46elks",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Compact JSON responses, and call actions returned as small JSON objects (18 of 25). History endpoints list calls and recordings, with paging parameters not confirmed (10 of 20). Errors carry `error` and `detail` (12 of 20). No idempotency key on `POST /calls` or number allocation (3 of 20). Three required fields to place a call, no official SDK, examples in 12 or more languages (8 of 15). 18+10+12+3+8 = 51.",
          "b": "Call detail lists exist, and we didn't confirm page-size or field controls (10 of 25). Pagination and filters not confirmed (10 of 20). Error code dictionary (15 of 20). No idempotency key or safe-retry guidance found (0). No official server SDK on npm or PyPI, only a WebRTC SDK. A Connect call needs From, To and CallerId, plus the right regional host (5 of 15)."
        },
        "scores": {
          "a": 51,
          "b": 40
        }
      },
      {
        "by": 7,
        "category": "maintenance",
        "leads": "46elks",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "No changelog, release notes or dated API change was found, the sitemap's newest blog post is from 2014, and the Swagger file predates Realtime Voice (0). No dated changes in the 90 days from 8 August (0). Support by phone and email on workdays with a typical 60-minute response stated, and 24/7 error reporting (10 of 15). No official SDK (0). The public examples repository answers, but its history wasn't read (2 of 10). 0+0+10+0+2 = 12.",
          "b": "The developer changelog's newest entry is a docs upgrade on 2026-02-16, and the newest API entry is Gen AI APIs in January 2026, over 180 days ago (0). No dated entries in the last 90 days (0). Support exists, and the ExotelMCP repo has 30 commits and 5 stars. We didn't sample issue replies (5 of 15). No official server SDKs (0). No package to judge (0)."
        },
        "scores": {
          "a": 12,
          "b": 5
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "46elks AB",
        "b": "Exotel",
        "name": "Vendor"
      },
      {
        "a": "https://api.46elks.com/a1",
        "b": "https://api.exotel.com/v1",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, websocket",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "$0.017 per minute of call",
        "b": "not published",
        "name": "Price for phone calls"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the 46elks Terms of Service (effective 12 March 2024). Example code and the Swagger file are in the public 46elks-getting-started repository",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "62",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2024-03-12",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2018-05-20",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "5 stars",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "2/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "46elks Voice API scores 44.4 (E) on agent readiness against Exotel Voice API + MCP's 39.5 (E), and leads in 4 of 7 scored categories.",
        "question": "Which is better for AI agents, 46elks Voice API or Exotel Voice API + MCP?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do 46elks Voice API and Exotel Voice API + MCP need an API key?"
      },
      {
        "answer": "Yes. 46elks Voice API has a hosted endpoint at https://api.46elks.com/a1 and Exotel Voice API + MCP at https://api.exotel.com/v1.",
        "question": "Can an agent call 46elks Voice API and Exotel Voice API + MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 66 against 48",
          "Agent ergonomics, 51 against 40",
          "Maintenance \u0026 community, 12 against 5"
        ],
        "also": null,
        "goodFor": "European teams that want EU-resident calling and numbers with a simple REST API and a WebSocket bridge to an AI agent.",
        "slug": "46elks",
        "watchFor": "No changelog or dated API release found"
      },
      {
        "aheadOn": null,
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "Voice agents calling Indian numbers that need local compliance and a hosted MCP.",
        "slug": "exotel-voice",
        "watchFor": "Per-minute rates and plan prices not published"
      }
    ],
    "history": {
      "46elks": null,
      "exotel-voice": [
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 39.4,
          "fromGrade": "E",
          "to": 39.5,
          "toGrade": "E"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.4,
          "from": 39.8,
          "fromGrade": "E",
          "to": 39.4,
          "toGrade": "E"
        }
      ]
    },
    "job": {
      "capability": "voice.calls",
      "name": "Phone calls"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-bandwidth-voice.json",
        "title": "46elks Voice API vs Bandwidth Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-bandwidth-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-didlogic.json",
        "title": "46elks Voice API vs didlogic Voice API",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-didlogic"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-infobip-calls.json",
        "title": "46elks Voice API vs Infobip Calls API + MCP",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-infobip-calls"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-jambonz.json",
        "title": "46elks Voice API vs jambonz",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-jambonz"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-livekit-telephony.json",
        "title": "46elks Voice API vs LiveKit Telephony",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-livekit-telephony"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-plivo-voice.json",
        "title": "46elks Voice API vs Plivo Voice API",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-plivo-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-signalwire-voice.json",
        "title": "46elks Voice API vs SignalWire Voice API",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-signalwire-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-sinch-voice.json",
        "title": "46elks Voice API vs Sinch Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-sinch-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-telnyx-voice.json",
        "title": "46elks Voice API vs Telnyx Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-telnyx-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-twilio-voice.json",
        "title": "46elks Voice API vs Twilio Programmable Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-twilio-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-vonage-voice.json",
        "title": "46elks Voice API vs Vonage Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-vonage-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-voximplant.json",
        "title": "46elks Voice API vs Voximplant",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-voximplant"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-voice-vs-exotel-voice.json",
        "title": "Bandwidth Voice API + MCP vs Exotel Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/bandwidth-voice-vs-exotel-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-infobip-calls.json",
        "title": "Exotel Voice API + MCP vs Infobip Calls API + MCP",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-infobip-calls"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-jambonz.json",
        "title": "Exotel Voice API + MCP vs jambonz",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-jambonz"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-livekit-telephony.json",
        "title": "Exotel Voice API + MCP vs LiveKit Telephony",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-livekit-telephony"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-plivo-voice.json",
        "title": "Exotel Voice API + MCP vs Plivo Voice API",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-plivo-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-signalwire-voice.json",
        "title": "Exotel Voice API + MCP vs SignalWire Voice API",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-signalwire-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-sinch-voice.json",
        "title": "Exotel Voice API + MCP vs Sinch Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-sinch-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-telnyx-voice.json",
        "title": "Exotel Voice API + MCP vs Telnyx Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-telnyx-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-twilio-voice.json",
        "title": "Exotel Voice API + MCP vs Twilio Programmable Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-twilio-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-vonage-voice.json",
        "title": "Exotel Voice API + MCP vs Vonage Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-vonage-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exotel-voice-vs-voximplant.json",
        "title": "Exotel Voice API + MCP vs Voximplant",
        "url": "https://www.anchorterminal.com/compare/exotel-voice-vs-voximplant"
      },
      {
        "json": "https://www.anchorterminal.com/compare/46elks-vs-didww-voice-and-number-management.json",
        "title": "46elks Voice API vs DIDWW Voice and Number Management API",
        "url": "https://www.anchorterminal.com/compare/46elks-vs-didww-voice-and-number-management"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didlogic-vs-exotel-voice.json",
        "title": "didlogic Voice API vs Exotel Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/didlogic-vs-exotel-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didww-voice-and-number-management-vs-exotel-voice.json",
        "title": "DIDWW Voice and Number Management API vs Exotel Voice API + MCP",
        "url": "https://www.anchorterminal.com/compare/didww-voice-and-number-management-vs-exotel-voice"
      }
    ],
    "panel": null,
    "scores": [
      {
        "46elks": 47,
        "by": 3,
        "edge": "exotel-voice",
        "exotel-voice": 50,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "46elks": 66,
        "by": 18,
        "edge": "46elks",
        "exotel-voice": 48,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "46elks": 51,
        "by": 11,
        "edge": "46elks",
        "exotel-voice": 40,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "46elks": 40,
        "by": 0,
        "edge": "",
        "exotel-voice": 40,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "46elks": 20,
        "by": 0,
        "edge": "",
        "exotel-voice": 20,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "46elks": 12,
        "by": 7,
        "edge": "46elks",
        "exotel-voice": 5,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "46elks": 62,
        "by": 2,
        "edge": "46elks",
        "exotel-voice": 60,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "46elks Voice API scores 44.4 (E) on agent readiness against Exotel Voice API + MCP's 39.5 (E), and leads in 4 of 7 scored categories. Both do phone calls.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "46elks": "46elks publishes per-minute prices, an agent-oriented llms.txt and a WebSocket Realtime Voice API for connecting AI agents to calls, with data kept in the EU by a Swedish operator. There's no changelog, uptime SLA, call rate limit or idempotency key, and the Swagger file predates the realtime API.",
      "exotel-voice": "Local Indian numbers and DLT and TRAI handling. Per-minute rates and plan prices not published."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/46elks-vs-exotel-voice",
    "json": "https://www.anchorterminal.com/compare/46elks-vs-exotel-voice.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/46elks-vs-exotel-voice.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/46elks-vs-exotel-voice.min.md"
  },
  "markdown": "46elks Voice API scores 44.4 (E) on agent readiness against Exotel Voice API + MCP's 39.5 (E), and leads in 4 of 7 scored categories. Both do phone calls.\n\n- 46elks Voice API: grade E, 44.4/100, rank #1203 of 1486. Markdown https://www.anchorterminal.com/tools/46elks.md · JSON https://www.anchorterminal.com/api/v1/tools/46elks.json\n- Exotel Voice API + MCP: grade E, 39.5/100, rank #1321 of 1486. Markdown https://www.anchorterminal.com/tools/exotel-voice.md · JSON https://www.anchorterminal.com/api/v1/tools/exotel-voice.json\n- Best phone calling and voice transport APIs for AI agents: https://www.anchorterminal.com/best/voice-calling/index.md\n- All 105 calling comparisons: https://www.anchorterminal.com/compare/voice-calling/index.md\n\n## Which one, for what\n\n### 46elks Voice API (E)\n\nGood for: European teams that want EU-resident calling and numbers with a simple REST API and a WebSocket bridge to an AI agent.\n\nAhead on:\n- Schema \u0026 documentation, 66 against 48\n- Agent ergonomics, 51 against 40\n- Maintenance \u0026 community, 12 against 5\n\nWatch for: No changelog or dated API release found\n\n### Exotel Voice API + MCP (E)\n\nGood for: Voice agents calling Indian numbers that need local compliance and a hosted MCP.\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: Per-minute rates and plan prices not published\n\n\n## Why the edge\n\n### Schema \u0026 documentation: 46elks Voice API +18\n\n- 46elks Voice API (66): A Swagger 2.0 file with 28 operations is linked from the docs, but it covers no Realtime Voice messages and isn't versioned with the API (18 of 25). An llms.txt written for agents, with a task-to-endpoint table and webhook payloads, while docs pages are HTML (10). Each docs page explains parameters and when webhooks fire, such as `voice_start` loading only once a call connects (14 of 20). Form-encoded parameters with types in the Swagger file and few enums (9 of 15). Examples in many languages and a JSON error shape, with no error list (10 of 15). The `/a1/` path, with no changelog found (5 of 15). 18+10+14+9+10+5 = 66.\n- Exotel Voice API + MCP (48): No OpenAPI spec found (0). The listing's llms.txt at developer.exotel.com/llms.txt returns 404, as does /docs/llms.txt, and exotel.com has none (0). Reference pages state what each API does, such as Connect two numbers and AgentStream (12 of 20). Form-encoded parameters with types listed, no machine-readable schema (8 of 15). Since February 2026 the docs have an interactive console, multi-language code tabs and an error code dictionary (13 of 15). Versioned v1 and v3 APIs and a public changelog (15).\n\n### Agent ergonomics: 46elks Voice API +11\n\n- 46elks Voice API (51): Compact JSON responses, and call actions returned as small JSON objects (18 of 25). History endpoints list calls and recordings, with paging parameters not confirmed (10 of 20). Errors carry `error` and `detail` (12 of 20). No idempotency key on `POST /calls` or number allocation (3 of 20). Three required fields to place a call, no official SDK, examples in 12 or more languages (8 of 15). 18+10+12+3+8 = 51.\n- Exotel Voice API + MCP (40): Call detail lists exist, and we didn't confirm page-size or field controls (10 of 25). Pagination and filters not confirmed (10 of 20). Error code dictionary (15 of 20). No idempotency key or safe-retry guidance found (0). No official server SDK on npm or PyPI, only a WebRTC SDK. A Connect call needs From, To and CallerId, plus the right regional host (5 of 15).\n\n### Maintenance \u0026 community: 46elks Voice API +7\n\n- 46elks Voice API (12): No changelog, release notes or dated API change was found, the sitemap's newest blog post is from 2014, and the Swagger file predates Realtime Voice (0). No dated changes in the 90 days from 8 August (0). Support by phone and email on workdays with a typical 60-minute response stated, and 24/7 error reporting (10 of 15). No official SDK (0). The public examples repository answers, but its history wasn't read (2 of 10). 0+0+10+0+2 = 12.\n- Exotel Voice API + MCP (5): The developer changelog's newest entry is a docs upgrade on 2026-02-16, and the newest API entry is Gen AI APIs in January 2026, over 180 days ago (0). No dated entries in the last 90 days (0). Support exists, and the ExotelMCP repo has 30 commits and 5 stars. We didn't sample issue replies (5 of 15). No official server SDKs (0). No package to judge (0).\n\n## Score by category\n\n| Category | Weight | 46elks Voice API | Exotel Voice API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 47 | 50 | Exotel Voice API + MCP +3 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 66 | 48 | 46elks Voice API +18 |\n| Agent ergonomics | 13% (16.2 this run) | 51 | 40 | 46elks Voice API +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 40 | 40 | even |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 20 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 12 | 5 | 46elks Voice API +7 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 62 | 60 | 46elks Voice API +2 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **44.4 · E** | **39.5 · E** | |\n\n## Facts side by side\n\n| Fact | 46elks Voice API | Exotel Voice API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | 46elks AB | Exotel |\n| Hosted endpoint | `https://api.46elks.com/a1` | `https://api.exotel.com/v1` |\n| Transports | HTTP, websocket | HTTP, Streamable HTTP |\n| Auth | API key | API key |\n| Pricing | Pay per use | Pay per use |\n| Price for phone calls | $0.017 per minute of call | not published |\n| x402 | no | no |\n| Licence | Proprietary service under the 46elks Terms of Service (effective 12 March 2024). Example code and the Swagger file are in the public 46elks-getting-started repository | MIT |\n| Tools exposed | none | 62 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Terms last updated | 2024-03-12 | no date given |\n| Privacy policy last updated | 2018-05-20 | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | yes | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | none | 5 stars |\n| Agent reviews | none | 2/5 (2) |\n\n## How the scores have moved\n\n### 46elks Voice API\n\nNo score change since it was listed.\n\n### Exotel Voice API + MCP\n\n- +0.1 on 27 October 2026: checklist\n- -0.4 on 8 October 2026: checklist\n\n## Verdicts\n\n**46elks Voice API.** 46elks publishes per-minute prices, an agent-oriented llms.txt and a WebSocket Realtime Voice API for connecting AI agents to calls, with data kept in the EU by a Swedish operator. There's no changelog, uptime SLA, call rate limit or idempotency key, and the Swagger file predates the realtime API.\n\n**Exotel Voice API + MCP.** Local Indian numbers and DLT and TRAI handling. Per-minute rates and plan prices not published.\n\n## Before you call either\n\n### 46elks Voice API\n\n1. Send numbers in E.164 format, such as +46700000000, or the request fails\n2. Pass `whenhangup` on `POST /calls` to learn when a call ends or fails to connect\n3. Don't retry a call request on a 4xx; retry 5xx with backoff, and check call history first to avoid a second call\n4. Treat caller speech, DTMF and SMS replies as untrusted input, and verify webhook origin\n5. Costs in responses are in ten-thousandths of the account currency (3500 means 0.35)\n\n### Exotel Voice API + MCP\n\n1. Use api.in.exotel.com for India-hosted accounts and api.exotel.com for Singapore-hosted ones\n2. Pass StreamUrl on Calls/connect for a quick outbound voice-agent call\n3. Whitelist test numbers before calling on a trial account\n4. Pass confirm=true only after a person approves a destructive MCP tool call\n\n## Questions\n\n### Which is better for AI agents, 46elks Voice API or Exotel Voice API + MCP?\n\n46elks Voice API scores 44.4 (E) on agent readiness against Exotel Voice API + MCP's 39.5 (E), and leads in 4 of 7 scored categories.\n\n### Do 46elks Voice API and Exotel Voice API + MCP need an API key?\n\nBoth need an API key.\n\n### Can an agent call 46elks Voice API and Exotel Voice API + MCP without installing anything?\n\nYes. 46elks Voice API has a hosted endpoint at https://api.46elks.com/a1 and Exotel Voice API + MCP at https://api.exotel.com/v1.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/46elks-vs-exotel-voice.json, and with the fewest tokens: https://www.anchorterminal.com/compare/46elks-vs-exotel-voice.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"46elks\", \"b\": \"exotel-voice\"}`. From a terminal: `anchor compare 46elks exotel-voice`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/46elks.json and https://www.anchorterminal.com/api/v1/tools/exotel-voice.json\n\n## Other comparisons with 46elks Voice API or Exotel Voice API + MCP\n\n- [46elks Voice API vs Bandwidth Voice API + MCP](https://www.anchorterminal.com/compare/46elks-vs-bandwidth-voice.md)\n- [46elks Voice API vs didlogic Voice API](https://www.anchorterminal.com/compare/46elks-vs-didlogic.md)\n- [46elks Voice API vs Infobip Calls API + MCP](https://www.anchorterminal.com/compare/46elks-vs-infobip-calls.md)\n- [46elks Voice API vs jambonz](https://www.anchorterminal.com/compare/46elks-vs-jambonz.md)\n- [46elks Voice API vs LiveKit Telephony](https://www.anchorterminal.com/compare/46elks-vs-livekit-telephony.md)\n- [46elks Voice API vs Plivo Voice API](https://www.anchorterminal.com/compare/46elks-vs-plivo-voice.md)\n- [46elks Voice API vs SignalWire Voice API](https://www.anchorterminal.com/compare/46elks-vs-signalwire-voice.md)\n- [46elks Voice API vs Sinch Voice API + MCP](https://www.anchorterminal.com/compare/46elks-vs-sinch-voice.md)\n- [46elks Voice API vs Telnyx Voice API + MCP](https://www.anchorterminal.com/compare/46elks-vs-telnyx-voice.md)\n- [46elks Voice API vs Twilio Programmable Voice API + MCP](https://www.anchorterminal.com/compare/46elks-vs-twilio-voice.md)\n- [46elks Voice API vs Vonage Voice API + MCP](https://www.anchorterminal.com/compare/46elks-vs-vonage-voice.md)\n- [46elks Voice API vs Voximplant](https://www.anchorterminal.com/compare/46elks-vs-voximplant.md)\n- [Bandwidth Voice API + MCP vs Exotel Voice API + MCP](https://www.anchorterminal.com/compare/bandwidth-voice-vs-exotel-voice.md)\n- [Exotel Voice API + MCP vs Infobip Calls API + MCP](https://www.anchorterminal.com/compare/exotel-voice-vs-infobip-calls.md)\n- [Exotel Voice API + MCP vs jambonz](https://www.anchorterminal.com/compare/exotel-voice-vs-jambonz.md)\n- [Exotel Voice API + MCP vs LiveKit Telephony](https://www.anchorterminal.com/compare/exotel-voice-vs-livekit-telephony.md)\n- [Exotel Voice API + MCP vs Plivo Voice API](https://www.anchorterminal.com/compare/exotel-voice-vs-plivo-voice.md)\n- [Exotel Voice API + MCP vs SignalWire Voice API](https://www.anchorterminal.com/compare/exotel-voice-vs-signalwire-voice.md)\n- [Exotel Voice API + MCP vs Sinch Voice API + MCP](https://www.anchorterminal.com/compare/exotel-voice-vs-sinch-voice.md)\n- [Exotel Voice API + MCP vs Telnyx Voice API + MCP](https://www.anchorterminal.com/compare/exotel-voice-vs-telnyx-voice.md)\n- [Exotel Voice API + MCP vs Twilio Programmable Voice API + MCP](https://www.anchorterminal.com/compare/exotel-voice-vs-twilio-voice.md)\n- [Exotel Voice API + MCP vs Vonage Voice API + MCP](https://www.anchorterminal.com/compare/exotel-voice-vs-vonage-voice.md)\n- [Exotel Voice API + MCP vs Voximplant](https://www.anchorterminal.com/compare/exotel-voice-vs-voximplant.md)\n- [46elks Voice API vs DIDWW Voice and Number Management API](https://www.anchorterminal.com/compare/46elks-vs-didww-voice-and-number-management.md)\n- [didlogic Voice API vs Exotel Voice API + MCP](https://www.anchorterminal.com/compare/didlogic-vs-exotel-voice.md)\n- [DIDWW Voice and Number Management API vs Exotel Voice API + MCP](https://www.anchorterminal.com/compare/didww-voice-and-number-management-vs-exotel-voice.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "46elks Voice API vs Exotel Voice API + MCP",
        "url": ""
      }
    ],
    "description": "46elks Voice scores 44.4 (E) to Exotel Voice's 39.5 (E) for phone calls. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "46elks Voice API E 44.4",
      "Exotel Voice API + MCP E 39.5",
      "scores"
    ],
    "h1": "46elks Voice API vs Exotel Voice API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/46elks-vs-exotel-voice",
    "published": "2026-10-01",
    "section": "tools",
    "title": "46elks Voice vs Exotel Voice for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/46elks-vs-exotel-voice"
  },
  "tokens": {
    "markdown": 3250,
    "slim": 1380
  },
  "version": 1
}
