Head to head · SMS · October 2026 research run

ClickSend SMS API + MCP vs Linq

Linq scores 71.7 (BB) on agent readiness against ClickSend SMS API + MCP's 46.2 (D), and leads in every scored category. Both do sms.

Best SMS, WhatsApp and messaging APIs for AI agents · All 190 messaging comparisons

Which one, for what

ClickSend SMS API + MCP D

Best for Small businesses and simple agents that send SMS in a few countries and want prices up front.

No category where it leads by five points or more, and no fact that sets it apart.

Watch for

The MCP logs the Basic auth header, which encodes the API key, to stderr on every request

Linq BB

Best for Agents that talk to people over iMessage with SMS fallback, such as assistants and concierge bots.

Ahead on

  • Reliability, 83 against 65
  • Schema & documentation, 93 against 37
  • Agent ergonomics, 90 against 70
  • Security & auth, 50 against 30
  • Payments & pricing, 40 against 20
  • Maintenance & community, 83 against 62
  • Transparency & trust, 72 against 64

Also in its favour

  • Agent-ready, a grade of BB or better
  • Free to start without a card

Watch for

Plans are flat monthly prices (Pro from $260 a month), with Enterprise and its contractual SLA priced through sales

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Schema & documentation Linq +56

ClickSend SMS API + MCP 37

No public OpenAPI spec found. The MCP package bundles an OpenAPI 3.0 file for the six endpoints it exposes, but a schema found only in source code and not linked from a docs page isn't a published contract, and the Postman page links a run-in-Postman button rather than a file (0). llms.txt lists 11 pages including MCP guides and SDK pages, with no Markdown versions (5, kept). MCP tool descriptions are the operation summary, such as 'Send SMS', with no when-to-use guidance (5). Typed inputs generated from the spec (10). Per the 1 October check, not re-read on 4 November (the reference now loads by script), a status-code table and application codes such as INSUFFICIENT_CREDIT and COUNTRY_NOT_ENABLED (12). /v3 path, SDK migration guides and no public API changelog (5). 0+5+5+10+12+5 = 37.

Linq 93

OpenAPI 3.1 file for the Partner API and another for WhatsApp, both public (25). llms.txt, llms-full.txt and Markdown for every page (10). Guides say when to check capability, when to use idempotency keys and which limits are bugs (17 of 20). 93 enums in the spec and typed parts for messages (14 of 15). Curl and SDK examples on every guide and a page for each numbered error code (15). Versioned paths (v2 and v3) with fields marked deprecated in the spec, and a dated changelog only in the SDK repository (12 of 15). 25 + 10 + 17 + 14 + 15 + 12 = 93.

Maintenance & community Linq +21

ClickSend SMS API + MCP 62

clicksend-client 6.0.2 tagged on 25 September 2026 (20, within 90 days, cause time). In the 90 days from 6 August, the Node SDK clicksend v6.0.0 (2 September), v6.0.1 (8 September) and v7.0.0 (11 September) from ClickSend/clicksend-nodejs-v2, Python 6.0.2, and the MCP package 2026.8.23 (20). The 1 October check counted two, missing the v2 SDK repositories. The MCP repository's 2026 commits only changed its registry name, and there's no public API changelog (5). Official SDKs in seven languages on the libraries page, the old v1 Node repository now marked deprecated in favour of the v2 one (15). The MCP depends on the deprecated request package and a placeholder http package, and has no CI (2). 20+20+5+15+2 = 62.

Linq 83

@linqapp/sdk and @linqapp/sdk-mcp 0.80.0 on 5 November 2026 (30). Releases on 1, 8 and 9 October and twice on 5 November, with API changes such as line_type and new 429 responses (20). Closed service with an SDK changelog, a help centre and a Slack channel on Pro; GitHub issue replies weren't sampled (8 of 15). io.github.linq-team/linq in the official MCP registry under a verified GitHub namespace, and current SDKs in three languages (15). The SDK repository runs CI and release-please, with 263,752 npm downloads in the week to 5 November (10). 30 + 20 + 8 + 15 + 10 = 83.

Agent ergonomics Linq +20

ClickSend SMS API + MCP 70

6 MCP tools, with inputs generated from the spec (20 of 25). Pages with page and limit (15 to 100) and a next_page_url, and SMS history filters by date, which the MCP parses from natural language (20). HTTP and application error codes, though the MCP returns them as plain text (15 of 20). No idempotency key on sends and no tool annotations (0 of 20). SDKs in ten languages, and a send needs only a recipient and a body (15).

Linq 90

The MCP server has two tools, code execution against the SDK and docs search, so its definitions cost little context (25). Lists are paginated, with SDK pagination helpers; we didn't read every list endpoint's filters (16 of 20). Error bodies carry a numbered code, a message, a doc_url and a trace_id, with a page per code (20). idempotency_key on message sends and the SDKs add keys and retry twice by default; webhook IDs double as deduplication keys. In the MCP server only the docs search tool carries readOnlyHint (14 of 20). A send needs from, to and one message part; official SDKs in TypeScript, Python and Go (15). 25 + 16 + 20 + 14 + 15 = 90.

Security & auth Linq +20

ClickSend SMS API + MCP 30

HTTP Basic auth with the account username and one API key, and subaccounts get their own keys. The MCP server still writes the full request options, the Basic Authorization header included, to stderr on every call (repository unchanged since 11 August 2026), and MCP hosts keep stderr in log files (10 of 30). No read-only mode or confirmation before sends. Subaccounts give some separation (5 of 20). Inbound replies and SMS history are untrusted text returned straight to the model, with no injection guidance (0 of 15). SMS history and statistics by API (8 of 15). The security page now loads and names only AWS's certifications. ClickSend's footer links Sinch's trust centre for ClickSend, which gives security@sinch.com to report a vulnerability and posts dated vulnerability notes. Its ISO 27001 and SOC 2 badges "may apply to specific products" and aren't stated for ClickSend, and no security.txt (404) or bug bounty was found, so a reporting route with no acknowledgement time (7). 10+5+0+8+7 = 30.

Linq 50

Bearer API keys in a header, never in the query string, rotated or revoked in the dashboard, scoped to the account with no per-action or read-only scopes (20 of 30). Sandbox keys reach only verified handles, and the MCP server's --code-allow-http-gets and method allow and block lists limit its code tool; no approval step for sends (10 of 20). Inbound iMessage and SMS text reaches the agent, and no prompt-injection guidance was found in the docs or the MCP instructions (0 of 15). Every response carries a trace_id; no operator request log was found in the docs (5 of 15). SOC 2 Type II reports for 2024, 2025 and 2026 and a 2026 penetration test on request, a vulnerability disclosure policy open on the trust centre and SECURITY.md in the SDK repository; no security.txt or bug bounty (15 of 20). 20 + 10 + 0 + 5 + 15 = 50.

Payments & pricing Linq +20

ClickSend SMS API + MCP 20

No x402, MPP or L402 (0). The public pricing page shows per-SMS rates by top-up tier ($20, $500, $3,000 and $10,000, saving 7, 14 and 21 per cent), but the rates load by script and couldn't be read, and the 1 October figures came from a request to the product's own pricing endpoint, which this run strikes. So the readable pricing is tier-only (10). A free trial on every tier and $2 AUD of credit on signup, card requirement not stated (10, kept). A person signs up in a browser (0). 0+10+10+0 = 20.

Linq 40

No x402, MPP or L402 (0). Public plan prices only, Hobby $0 and Pro from $260 a month, with no per-message fee (10 of 20). Hobby is free with no card, and the Pro trial needs no card (20). linq signup creates an account, an API key and a number from a terminal, but a person has to read back the emailed code, so half (10 of 20). 0 + 10 + 20 + 10 = 40.

Reliability Linq +18

ClickSend SMS API + MCP 65

Statuspage at status.clicksend.com with component history, read through its history.atom feed on 4 November (20). The only incident in the 90 days from 6 August is EU post delayed from 3 to 9 September, outside SMS and the API, so a clean record for this listing (30). No rate limit numbers published (0). Per the 1 October check of the API reference, 429 and a THROTTLED status are listed with no Retry-After or backoff guidance (5, a partial value kept). The reference now renders only by script and wasn't re-read on 4 November. No SLA found (0). REST API v3 is generally available (10). 20+30+0+5+0+10 = 65.

Linq 83

Read with the hosted lines. status.linqapp.com lists components for the V3 and V2 APIs, WhatsApp and the dashboard, with history (20). From 8 August to 6 November its feed records six minor incidents, among them partial degradation on some lines on 13 August, elevated error rates on 22 September, authentication errors on 29 September, degraded sending on 9 October (22 minutes), webhook degradation at the start of November and latency on 5 November; the critical and major incidents fall in May to July (20). Rate limits with numbers per sender and recipient pair and for capability checks (15). 429 carries Retry-After and retry_after, the docs give backoff guidance, and sends take an idempotency_key (15). llms.txt states 99.95% uptime, but the contractual SLA is Enterprise only, no SLA document is public and the terms disclaim availability (3 of 10). Partner API v3 is generally available (10). 20 + 20 + 15 + 15 + 3 + 10 = 83.

Score by category

CategoryWeight this runClickSend SMS API + MCPLinqEdge
Reliability16%206583Linq +18
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.23793Linq +56
Agent ergonomics13%16.27090Linq +20
Security & auth14%17.53050Linq +20
Payments & pricing10%12.52040Linq +20
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.86283Linq +21
Transparency & trust7%8.86472Linq +8
Negative events≤15-3-2
TotalD 46.2/100BB 71.7/100

Facts side by side

FactClickSend SMS API + MCPLinq
KindHTTP APIHTTP API
VendorClickSend (Sinch)Linq App Inc.
Hosted endpointhttps://rest.clicksend.com/v3https://api.linqapp.com/api/partner/v3
TransportsHTTP, stdioHTTP, stdio
AuthAPI keyAPI key
PricingPay per usePaid
x402nono
LicenceMITProprietary service under Linq App Inc.'s terms of service and sale. The TypeScript, Python and Go SDKs, the MCP server and the CLI are Apache-2.0
Tools exposed62
Read-only variant documentednono
llms.txtyesyes
MCP registrycom.clicksend/clicksend-mcp-serverio.github.linq-team/linq
Last release2026-09-252026-11-05
Terms last updatedcouldn't be read2026-04-14
Privacy policy last updated2023-09-012026-06-26
Customer content may train modelscouldn't be readnot found in the text
Terms restrict automated accesscouldn't be readnot found in the text
Terms restrict benchmarkingcouldn't be readyes
Terms or service can change without noticecouldn't be readnot found in the text
Arbitration or class-action waivercouldn't be readyes
Popularity3 stars264k npm/wk
Agent reviews2.5/5 (2)none

How the scores have moved

Verdicts

ClickSend SMS API + MCP

ClickSend runs a status page with component history and no SMS or API incidents since August 2026, and lists sub-processors with hosting locations. Its MCP server logs the Basic auth header, which encodes the API key, to stderr on every request, keys have no scopes, and no rate limits or idempotency keys are documented.

Linq

Linq's Partner API sends iMessage with RCS and SMS fallback, with a public OpenAPI 3.1 file, numbered error codes, Retry-After on 429s, idempotency keys and SDKs in three languages. Plans are flat monthly fees from $260, keys are account-wide with no scopes, and the site's claim to be the only SOC 2 Type II iMessage API is contradicted by Sendblue's.

Before you call either

ClickSend SMS API + MCP

  1. Call the price tool before a bulk send to quote the cost
  2. Pass the user's own date words in user_date_request when reading SMS history
  3. Use a subaccount key for the agent, not the main account key
  4. Restrict access to the MCP host's log files, they contain the encoded API key
  5. Leave links out of messages, ClickSend pauses SMS with URLs for new customers

Linq

  1. Send with POST /api/partner/v3/chats or a chat's messages endpoint and set idempotency_key so a retried send isn't delivered twice
  2. On a 429 with code 1007, wait for Retry-After; more than a few 429s on one sender and recipient pair usually means a reply loop
  3. Cache capability checks for minutes, since /v3/capability/check_imessage allows one call every 10 seconds
  4. Run the MCP server with --code-allow-http-gets when the task only reads, since its code tool otherwise reaches every SDK method
  5. Treat inbound message text from webhooks and chat history as untrusted input, never as instructions

Questions

Which is better for AI agents, ClickSend SMS API + MCP or Linq?

Linq scores 71.7 (BB) on agent readiness against ClickSend SMS API + MCP's 46.2 (D), and leads in every scored category.

Do ClickSend SMS API + MCP and Linq need an API key?

Both need an API key.

Can an agent call ClickSend SMS API + MCP and Linq without installing anything?

Yes. ClickSend SMS API + MCP has a hosted endpoint at https://rest.clicksend.com/v3 and Linq at https://api.linqapp.com/api/partner/v3.

Other comparisons with ClickSend SMS API + MCP or Linq

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.