{
  "data": {
    "a": {
      "slug": "iterable",
      "name": "Iterable",
      "vendor": "Iterable, Inc.",
      "vendorUrl": "https://iterable.com",
      "kind": "http-api",
      "category": "lifecycle-marketing",
      "summary": "Iterable is a hosted customer engagement platform that stores user profiles and events and sends campaigns and journeys by email, SMS, push, in-app and WhatsApp. Agents reach it through a REST API and an official local MCP server, in beta.",
      "url": "https://www.anchorterminal.com/tools/iterable",
      "markdownUrl": "https://www.anchorterminal.com/tools/iterable.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/iterable.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/iterable.json",
      "dns": "iterable.grade.anchorterminal.com",
      "repo": "https://github.com/Iterable/mcp-server",
      "license": "Proprietary service under Iterable's Master Services Agreement. The MCP server (@iterable/mcp) and the TypeScript API client (@iterable/api) are MIT",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://api.iterable.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@iterable/mcp"
        },
        {
          "registry": "npm",
          "name": "@iterable/api"
        }
      ],
      "auth": "api-key",
      "authNotes": "Access needs an Iterable customer account, which is sold through sales. A project member creates an API key in the app and sends it in the `Api-Key` header. The specification names five key types (Server-side, Read-only, Mobile, Web, JavaScript) and lists which types each operation accepts. 148 of 159 operations accept a server-side key and 30 accept a read-only key. No OAuth, app review or partner approval was found. The MCP server reads the same key from the system keychain or `ITERABLE_API_KEY`, and adds its own flags for PII, writes and sends. The key guide on the support centre couldn't be read, so rotation and expiry are unchecked.",
      "pricing": "paid",
      "pricingNotes": "No public prices. https://iterable.com/pricing/ redirects to the home page, whose button asks for a demo, and no trial, free tier or self-serve signup was found. The MCP server README mentions sandbox projects, which exist inside a customer organisation, so an agent can't start without a contract. API and MCP calls aren't priced per call in any page we read (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API specification, the MCP server repository or the legal pages (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 118,
      "popularity": {
        "githubStars": 15,
        "npmWeekly": 4178,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://api.iterable.com/api/docs",
      "llmsTxt": "https://iterable.com/llms.txt",
      "openapi": "https://api.iterable.com/api-docs",
      "capabilities": [
        "marketing.profiles",
        "marketing.events",
        "marketing.segments",
        "marketing.campaigns",
        "marketing.journeys",
        "email.templates"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "api-key",
        "openapi",
        "closed-source",
        "sales-led",
        "eu-region",
        "typescript",
        "status-page",
        "soc2",
        "beta-mcp"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 56.3,
        "grade": "C",
        "agentReady": false,
        "rank": 830,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 10,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 57,
          "maintenance": 75,
          "payments": 0,
          "reliability": 71,
          "schema": 65,
          "security": 55,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-04"
        },
        "negative": 0,
        "verdict": "The REST API publishes a Swagger 2.0 contract with 159 operations, typed API keys including a read-only type, and per-endpoint rate limits. The MCP server starts read-only, with PII, writes and sends each switched on separately. No price, trial or self-serve signup is published, and the support centre, which holds the API guides, answers automated readers with a bot check.",
        "bestFor": "A team already on Iterable that wants an agent to read campaigns, templates and metrics, or to update profiles, track events and trigger sends under review.",
        "strengths": [
          "Public Swagger 2.0 specification at api.iterable.com/api-docs with 159 operations and 209 schemas, the same for the EU data centre",
          "Each operation lists the key types it accepts (Server-side, Read-only, Mobile, Web, JavaScript), and 30 operations accept a read-only key",
          "The MCP server exposes 31 read tools by default. PII, writes and sends are three separate flags stored per key",
          "53 operations state a numeric rate limit, for example 500 requests a second per project on `POST /api/users/update`",
          "SOC 2 Type 2, ISO 27001 and HIPAA listed on the trust centre, and a sub-processor list with locations updated August 2026"
        ],
        "weaknesses": [
          "No public price, trial or self-serve signup. iterable.com/pricing redirects to the home page, which asks for a demo",
          "No idempotency keys in the specification, and only 7 of 159 operations document a 429 response",
          "The MCP server is in beta under terms that allow change or withdrawal without notice, and carries no tool annotations",
          "No published SLA or API deprecation policy was found in the Master Services Agreement or the product-specific terms",
          "The API can create static lists and read list members, but no operation builds a dynamic segment or edits a journey"
        ],
        "agentNotes": [
          "Send the key in the `Api-Key` header, and use api.eu.iterable.com for projects in the EU data centre",
          "Wait at least 60 seconds after `POST /api/users/update` before a dependent call such as `POST /api/email/target`, as the specification advises",
          "Keep the MCP server on its default read-only setup unless a person reviews each call. Writes and sends act on real users and can't be undone",
          "Pass `suppressionListIds` to `POST /api/campaigns/create`. Global suppression lists aren't added automatically",
          "Read `rateLimitReset` in the 429 `params` on user update calls for the seconds to wait. List member reads allow 5 requests a minute per project"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 56.3
          }
        ],
        "editorialScores": {
          "ergonomics": 57,
          "maintenance": 75,
          "payments": 0,
          "reliability": 71,
          "schema": 65,
          "security": 55,
          "transparency": 57
        },
        "provenanceScore": 82,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-04",
            "maintenance": "2026-11-04",
            "payments": "2026-11-04",
            "reliability": "2026-11-04",
            "schema": "2026-11-04",
            "security": "2026-11-04",
            "transparency": "2026-11-04"
          },
          "last": "2026-11-04",
          "lastMoved": "2026-11-04",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npx @iterable/mcp setup",
        "claudeCode": "claude mcp add iterable -- npx -y @iterable/mcp",
        "config": {
          "mcpServers": {
            "iterable": {
              "args": [
                "-y",
                "@iterable/mcp"
              ],
              "command": "npx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/marketing.profiles",
        "tool": "https://letme.dev/iterable"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "Iterable, Inc.",
        "domain": "iterable.com",
        "domainRegistered": "2011-12-28",
        "endpointOnVendorDomain": true,
        "terms": "https://iterable.com/legal/terms/",
        "privacy": "https://iterable.com/legal/privacy-policy/",
        "statusPage": "https://status.iterable.com",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Master Services Agreement (last updated 8 June 2026) names Iterable, Inc., a Delaware corporation. The privacy notice gives 201 Spear Street, Suite 1050, San Francisco, CA 94105.",
          "The website terms of service are dated 6 May 2021 and the privacy notice 14 July 2023.",
          "The API answers at api.iterable.com and api.eu.iterable.com, both on the vendor's domain.",
          "iterable.com/.well-known/security.txt and app.iterable.com/.well-known/security.txt return 404. Reports go through the responsible disclosure policy or security@iterable.com.",
          "No changelog URL is recorded because the release notes sit on support.iterable.com, which answered with a Cloudflare check.",
          "RDAP for iterable.com gives a registration date of 2011-12-28."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/iterable.json",
      "live": {
        "slug": "iterable",
        "probe": {
          "target": "https://api.iterable.com",
          "method": "get",
          "lastAt": "2026-11-07T18:20:32.872521203Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 544,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 551,
          "p95ms24h": 767,
          "samples24h": 239,
          "samples30d": 7463,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "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.iterable.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T18:21:17.327873533Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Iterable/mcp-server",
            "version": "v1.9.1",
            "released": "2026-11-06",
            "seenAt": "2026-11-06T23:35:31.445674399Z"
          },
          {
            "registry": "npm",
            "name": "@iterable/api",
            "version": "0.13.1",
            "seenAt": "2026-11-06T23:35:29.477482337Z"
          },
          {
            "registry": "npm",
            "name": "@iterable/mcp",
            "version": "1.9.1",
            "seenAt": "2026-11-06T23:35:29.251905315Z"
          }
        ],
        "githubStars": 15,
        "npmWeekly": 3064,
        "securityTxt": {
          "url": "https://iterable.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:22.65506109Z"
        },
        "llmsTxt": {
          "url": "https://iterable.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:47.510539647Z"
        },
        "domain": {
          "domain": "iterable.com",
          "registered": "2011-12-28",
          "source": "https://rdap.verisign.com/com/v1/domain/iterable.com",
          "checkedAt": "2026-11-01T14:13:38.585802061Z"
        },
        "pages": [
          {
            "url": "https://iterable.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:11:47.792285316Z",
            "changedAt": "2026-11-07T14:11:47.792285316Z",
            "fingerprint": "fe877cb7bf73"
          },
          {
            "url": "https://iterable.com/legal/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:11:43.191567931Z",
            "changedAt": "2026-11-07T14:11:43.191567931Z",
            "fingerprint": "8cd61684522a"
          },
          {
            "url": "https://iterable.com/legal/terms/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:11:45.975421909Z",
            "changedAt": "2026-11-07T14:11:45.975421909Z",
            "fingerprint": "fae882d9167a"
          }
        ],
        "github": {
          "repo": "iterable/mcp-server",
          "checkedAt": "2026-11-02T08:56:54.271590814Z",
          "stars": 15,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-09-30T13:22:52Z",
          "openIssues": 4,
          "openPRs": 0,
          "issuesOpened90d": 2,
          "issuesClosed90d": 0,
          "prsMerged90d": 1,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 48,
            "failure": 2,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-09-30T12:52:00Z"
          },
          "replies": {
            "sampled": 4,
            "unanswered": 4
          }
        },
        "updatedAt": "2026-11-07T18:21:17.327873533Z"
      }
    },
    "answer": "Nitrosend scores 69.4 (B) on agent readiness against Iterable's 56.3 (C), and leads in 6 of 7 scored categories. Iterable leads on reliability.",
    "b": {
      "slug": "nitrosend",
      "name": "Nitrosend",
      "vendor": "Nitrosend Pty Ltd",
      "vendorUrl": "https://nitrosend.com",
      "kind": "http-api",
      "category": "lifecycle-marketing",
      "summary": "Nitrosend is an email marketing and transactional email platform built to be run by AI agents. Campaigns, automation flows, contacts, segments and approvals are driven through a remote MCP server, with a REST API, Node SDK and CLI.",
      "url": "https://www.anchorterminal.com/tools/nitrosend",
      "markdownUrl": "https://www.anchorterminal.com/tools/nitrosend.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/nitrosend.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/nitrosend.json",
      "dns": "nitrosend.grade.anchorterminal.com",
      "repo": "https://github.com/nitrosend/mcp",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.nitrosend.com/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "@nitrosend/sdk"
        },
        {
          "registry": "npm",
          "name": "@nitrosend/mcp"
        },
        {
          "registry": "npm",
          "name": "@nitrosend/cli"
        }
      ],
      "auth": "mixed",
      "authNotes": "The remote MCP server signs in by OAuth with one `mcp` scope, bearer in the header only. REST, the CLI and the stdio bridge take an account API key (`nskey_live_...`) as a Bearer token, revocable and pinned to one account and brand. Agencies can issue management credentials (`nsmc_live_...`) that can't mint keys or manage billing. Website forms use a separate public key that rejects secret keys.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 5,000 non-expiring starter emails then 500 a month, no card. Starter $20 a month for 20,000 emails, Pro $50 for 60,000, Growth $150 for 200,000, Scale $300 for 500,000, extra emails $1.50 to $0.70 per 1,000. Annual payment saves 20%. Contacts are unlimited on every plan.",
      "priceSummary": "$20 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in llms.txt, the docs index, PRICING.md, SKILL.md or the OpenAPI spec (checked 2026-11-06). The billing tool notes that no presented-credential payment rail is enabled; checkout goes through Stripe with owner approval.",
        "endpoints": []
      },
      "toolCount": 25,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 1014,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.nitrosend.com",
      "llmsTxt": "https://nitrosend.com/llms.txt",
      "openapi": "https://api.nitrosend.com/openapi.yaml",
      "registryName": "com.nitrosend/nitrosend",
      "capabilities": [
        "marketing.profiles",
        "marketing.events",
        "marketing.segments",
        "marketing.campaigns",
        "marketing.journeys",
        "email.send",
        "email.templates",
        "email.domains"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "mcp",
        "remote-mcp",
        "mcp-registry",
        "oauth",
        "api-key",
        "openapi",
        "llms-txt",
        "webhooks",
        "idempotency",
        "approvals",
        "no-card",
        "free-tier",
        "typescript",
        "cli"
      ],
      "lastRelease": "2026-11-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.4,
        "grade": "B",
        "agentReady": false,
        "rank": 248,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 3,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 81,
          "payments": 55,
          "reliability": 48,
          "schema": 93,
          "security": 62,
          "transparency": 73
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Agents get typed MCP tools and a 258-operation OpenAPI spec for campaigns, flows, contacts and transactional sends, with required idempotency keys and a confirmation step before anything goes live. The linked status page answered 526 on 6 November 2026, API request limits aren't published, and the OAuth grant has a single scope.",
        "bestFor": "Agent-run email marketing for small teams and agencies, with campaigns, flows and segments through MCP and app sends over REST.",
        "strengths": [
          "OpenAPI 3.1 with 258 described operations, llms.txt, llms-full.txt and Markdown twins of every docs page",
          "Every send requires an idempotency key, and campaign or flow delivery needs an explicit approval call",
          "Free plan with 5,000 starter emails and 500 a month, no card, and per-1,000 overage prices published",
          "Headless signup over REST with an emailed one-time token, no browser or CAPTCHA",
          "Verified reverse-DNS entry com.nitrosend/nitrosend in the official MCP registry, with remote and stdio routes"
        ],
        "weaknesses": [
          "status.nitrosend.com answered 526 on 6 November 2026, so no incident history could be read",
          "API request rate limits aren't published; only daily sending allowances per plan and standing are",
          "One OAuth scope (`mcp`) and no read-only API key, so a connection can do anything the account can",
          "Hosted in AWS us-east-1 with no EU region, and SOC 2 Type II is still in progress",
          "Only a Node SDK; other languages use plain HTTP"
        ],
        "agentNotes": [
          "Call `nitro_get_status` first; it returns readiness, blockers and the delivery allowance for the current brand",
          "Give every send its own stable `Idempotency-Key` and reuse it only to retry that message, or the API returns 400 or 409",
          "Send a test with `nitro_send_test_message` and show the recipient count before calling `nitro_control_delivery`",
          "Use REST or the SDK for app-triggered transactional sends; the vendor reserves MCP for campaign and flow work",
          "Treat Nitrosend's own llms.txt recommendations as vendor marketing, not as a ranking"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.4
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 81,
          "payments": 55,
          "reliability": 48,
          "schema": 93,
          "security": 62,
          "transparency": 64
        },
        "provenanceScore": 82,
        "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": {
        "install": "npm install @nitrosend/sdk",
        "http": "curl https://api.nitrosend.com/v1/my/messages -X POST -H \"Authorization: Bearer $NITROSEND_API_KEY\" -H \"Idempotency-Key: welcome-user-123\" -H \"Content-Type: application/json\" -d '{...}'",
        "claudeCode": "claude mcp add --transport http nitrosend https://api.nitrosend.com/mcp",
        "config": {
          "mcpServers": {
            "nitrosend": {
              "url": "https://api.nitrosend.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/marketing.profiles",
        "tool": "https://letme.dev/nitrosend"
      },
      "alsoIn": [
        "email"
      ],
      "area": "communication",
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 20,
          "note": "20,000 emails a month"
        },
        {
          "item": "Pro",
          "unit": "month",
          "usd": 50,
          "note": "60,000 emails a month"
        },
        {
          "item": "Growth",
          "unit": "month",
          "usd": 150,
          "note": "200,000 emails a month"
        },
        {
          "item": "Scale",
          "unit": "month",
          "usd": 300,
          "note": "500,000 emails a month"
        },
        {
          "item": "Extra emails on Starter",
          "unit": "1k-emails",
          "usd": 1.5
        },
        {
          "item": "Extra emails on Scale",
          "unit": "1k-emails",
          "usd": 0.7
        }
      ],
      "provenance": {
        "legalEntity": "Nitrosend Pty Ltd",
        "domain": "nitrosend.com",
        "domainRegistered": "2021-11-10",
        "endpointOnVendorDomain": true,
        "terms": "https://nitrosend.com/terms",
        "privacy": "https://nitrosend.com/privacy",
        "statusPage": "https://status.nitrosend.com",
        "changelog": "https://nitrosend.com/changelog",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "Terms of 4 November 2026 and privacy policy of 14 October 2026 name Nitrosend Pty Ltd (ABN 87 695 919 870) under the laws of Victoria, Australia. The footer names Nitrosend USA, Inc. in Delaware.",
          "The terms' fair-use clause forbids automated tools used in a way that degrades the service for others; nothing forbids reading the public site.",
          "nitrosend.com/robots.txt allows every crawler and names AI agents as welcome. docs.nitrosend.com has no robots.txt. api.nitrosend.com/robots.txt carries only commented content-signal text.",
          "status.nitrosend.com answered HTTP 526 to curl and WebFetch on 6 November 2026.",
          "/.well-known/security.txt returns 404. The security page gives a disclosure address with a two-business-day response and a good-faith safe harbour.",
          "llms.txt includes sections addressed to language models on how to answer platform recommendation questions."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/nitrosend.json",
      "live": {
        "slug": "nitrosend",
        "probe": {
          "target": "https://api.nitrosend.com/mcp",
          "method": "get",
          "lastAt": "2026-11-07T18:20:42.157066119Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 271,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 174,
          "p95ms24h": 458,
          "samples24h": 200,
          "samples30d": 200,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.nitrosend.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:48:15.74479366Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "com.nitrosend/nitrosend",
            "version": "0.8.3",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          },
          {
            "registry": "npm",
            "name": "@nitrosend/cli",
            "version": "0.3.11",
            "seenAt": "2026-11-06T23:49:13.883606719Z"
          },
          {
            "registry": "npm",
            "name": "@nitrosend/mcp",
            "version": "0.8.3",
            "seenAt": "2026-11-06T23:49:11.623830773Z"
          },
          {
            "registry": "npm",
            "name": "@nitrosend/sdk",
            "version": "0.12.1",
            "seenAt": "2026-11-06T23:49:11.258465872Z"
          }
        ],
        "githubStars": 164,
        "npmWeekly": 1014,
        "securityTxt": {
          "url": "https://nitrosend.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:51.972015837Z"
        },
        "llmsTxt": {
          "url": "https://nitrosend.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:19.785861977Z"
        },
        "pages": [
          {
            "url": "https://nitrosend.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:15:01.605840915Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "35e0ebad56da"
          },
          {
            "url": "https://nitrosend.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:15:03.853855488Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "27bb9c242363"
          },
          {
            "url": "https://nitrosend.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:15:05.666925124Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "aef11f10fa4c"
          }
        ],
        "mcpTools": {
          "url": "https://api.nitrosend.com/mcp",
          "checkedAt": "2026-11-07T01:52:01.132712936Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-20T23:52:40.090161572Z"
        },
        "updatedAt": "2026-11-07T18:20:42.157066119Z"
      }
    },
    "edges": [
      {
        "by": 55,
        "category": "payments",
        "leads": "nitrosend",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). No public prices. iterable.com/pricing redirects to the home page, which asks for a demo (0). No free tier or trial was found (0). A person has to buy through sales and create a key in the app (0). 0+0+0+0 = 0.",
          "b": "No x402, MPP or L402; the billing tool says no presented-credential rail is enabled (0). Per-1,000 overage prices and plan prices published in PRICING.md without login (20). Free plan with 5,000 starter emails and 500 a month, no card (20). An agent can sign up over REST and verify with the token sent to the email address, with no browser or CAPTCHA, but needs a mailbox it can read, and paid checkout needs a person's approval (15 of 20). Total 55."
        },
        "scores": {
          "a": 0,
          "b": 55
        }
      },
      {
        "by": 28,
        "category": "schema",
        "leads": "nitrosend",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "Public Swagger 2.0 specification at api.iterable.com/api-docs, which the API explorer page links as 'Raw API specification (JSON)', with 159 operations and 209 schemas on 4 November (25). iterable.com/llms.txt exists but describes the company and links the documentation without carrying it, and no Markdown docs were found (4). All 159 operations have a summary and 147 a description, several with cautions such as the 60-second wait after a user update and the suppression list rule on campaign creation (14). Required fields are marked and there are 35 enums, while `dataFields` and template content stay free-form objects (11). The specification has 21 examples. 400 and 401 appear on nearly every operation, and the error body has a 26-value `code` enum (8). The specification is labelled version 1.8 with no version in the path. Release notes sit on the support centre, which answered a Cloudflare check again on 4 November, so only 3 of 15 here (an earlier partial kept). The specification was re-read on 4 November, and the description, enum and example counts are per the 8 October check. 25+4+14+11+8+3 = 65.",
          "b": "OpenAPI 3.1 at api.nitrosend.com/openapi.yaml (version 1.1.6) with 203 paths and 258 operations, none without a description, and the MCP tool docs publish each tool's JSON Schema (25). llms.txt, llms-full.txt, agent.txt, SKILL.md, PRICING.md and a Markdown twin of each docs page (10). Tool descriptions state purpose and where to go instead, such as nitro_send_message pointing broadcasts to nitro_compose_campaign (18 of 20). Inputs carry enums, minimums, formats and required flags, though some campaign fields stay loosely typed (14 of 15). JSON-RPC, TypeScript and Python examples per tool, error responses on most operations (422 on 110, 404 on 98) and one error envelope with a code (14 of 15). A spec version and a changelog by monthly release, v0.1.0 in February to v1.4.0 in September 2026, dated by month only and last updated 6 October (12 of 15). Total 93."
        },
        "scores": {
          "a": 65,
          "b": 93
        }
      },
      {
        "by": 26,
        "category": "ergonomics",
        "leads": "nitrosend",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "API list calls take `page` and `pageSize`, and the MCP server shows 31 of its 118 tools by default, with three flags that add the rest (15). `nextPageUrl` paging on campaigns, catalogues, journeys and templates, state and sort filters on campaigns, and `limit` on events, but list member reads are capped at 5 requests a minute (14). Errors carry a `code` from a 26-value enum, a message and `params`, with reset seconds on some 429s (15). No idempotency keys. User updates merge and catalogue PUT replaces, so those retries are safe, but sends aren't. The MCP tools have no readOnlyHint or destructiveHint, and an issue asking for them has been open since 4 June 2026 (6). Most calls need few parameters. The one server-side SDK is the TypeScript client, which its README calls experimental (7). Per the 8 October check, and the MCP repository has no commit since 1.9.0 on 30 September. 15+14+15+6+7 = 57.",
          "b": "25 MCP tools is the 11 to 30 band; nitro_query reads every entity with filters, but no read-only subset or dynamic loading was found (15 of 25). Page and limit up to 100 with total and next-page headers, and keyset cursors on timelines (20). Errors return `error`, a `code`, validation details and next actions, and signup returns `next_action` (18 of 20). Required idempotency keys on sends, events, checkout and validation, and declared readOnlyHint and destructiveHint on the tools (20). Defaults such as the active brand and a recommended first call, but the only official SDK is Node, with a CLI beside it (10 of 15). Total 83."
        },
        "scores": {
          "a": 57,
          "b": 83
        }
      },
      {
        "by": 23,
        "category": "reliability",
        "leads": "iterable",
        "name": "Reliability",
        "reasons": {
          "a": "Graded on the REST API, with the hosted lines. Statuspage site at status.iterable.com, whose page lists global components such as Global API Success and per-cluster components such as User Updates (20). The 8 October incident reading came from the page's JSON API, which its robots.txt closes, so it is struck and the window was re-read from /history.atom on 4 November. The 90 days from 6 August hold four incidents, each partial by its own text, Twilio SMS drops for a subset of customers on 1 September, EU platform slowness and gateway errors on 10 September (about 9:25 to 11:13 EDT), timeouts on the user update endpoints on 22 September, and delayed sends for some SparkPost US customers on 28 October. The 16 July critical incident has left the window. Minor only (20, from 15). 53 of 159 operations state a numeric limit in the specification re-read on 4 November (15). Only 7 operations document 429, two of them with `rateLimitReset` in the body. No Retry-After header or idempotency key was found in the specification, and backoff guidance on the support centre couldn't be read (6, an earlier partial kept). No SLA was found in the Master Services Agreement (last updated 8 June 2026) or the product-specific terms (0). The REST API is generally available. The MCP server is beta (10). 20+20+15+6+0+10 = 71.",
          "b": "Graded with the hosted lines. llms.txt links a status page at status.nitrosend.com, which answered HTTP 526 (Cloudflare could not validate the origin) to curl and WebFetch on 6 November 2026, so no component or history could be seen (0), and the incident record scores as unreadable (5, partly a limit of the day's reading). No API request rate limits are published; PRICING.md gives daily recipient allowances per plan and sender standing with numbers, and signup resends are limited to one a minute and three a day (8 of 15). 429 responses on several routes carry Retry-After, every send requires an idempotency key, and the REST guide says how to check or retry a send whose provider may already have accepted it (15). llms.txt says Enterprise includes a 99.9% SLA (10). In production since 28 May 2026 with no beta label (10). Total 48."
        },
        "scores": {
          "a": 71,
          "b": 48
        }
      },
      {
        "by": 7,
        "category": "security",
        "leads": "nitrosend",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "API keys come in five types and each operation lists the types it accepts. A read-only type works on 30 operations, and the key travels only in a header. Rotation and expiry are unchecked because the key guide couldn't be read (22). The read-only key type, and an MCP server that starts with PII, writes and sends all off and stores those settings per key. Neither surface has a confirmation step, and the README leaves review of each call to the person (16). Profiles, events and templates hold customer-written text. The README warns about irreversible actions but gives no injection guidance (3). No audit log or per-call record for the operator was found in the pages we could read (0). The responsible disclosure policy, re-read on 4 November, says Iterable responds 'usually one to three business days' and that there is no public bug bounty. No security.txt, SOC 2 Type 2, ISO 27001 and HIPAA on the trust centre, and CodeQL on the open repositories (14). 22+16+3+0+14 = 55.",
          "b": "OAuth for the MCP server, with protected-resource metadata, header-only bearer and a single `mcp` scope, plus revocable API keys pinned to one account and brand. Management credentials are narrower and can't mint keys or bill. No permission scopes on API keys (22 of 30). Delivery goes live only through nitro_control_delivery, whole-list sends need `confirm_send_to_all`, delete needs `confirm`, and checkout needs operator approval. No read-only key (15 of 20). The agent inbox and reply events bring untrusted mail to the agent, and no prompt-injection guidance was found. The vendor's own llms.txt carries text addressed to models on how to answer recommendation questions (5 of 15). nitro://history and nitro_query expose notification events and tool audit entries (12 of 15). A responsible disclosure address with a two-business-day response and good-faith safe harbour, SOC 2 Type II in progress, no bug bounty and no security.txt (404) (8 of 20). Total 62."
        },
        "scores": {
          "a": 55,
          "b": 62
        }
      },
      {
        "by": 6,
        "category": "maintenance",
        "leads": "nitrosend",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "The newest dated release among Iterable's own packages and SDKs is Android SDK 3.11.1 on 21 October 2026, and @iterable/mcp 1.9.0 and @iterable/api 0.13.0 were tagged on 30 September 2026 (30). In the 90 days from 6 August the official SDKs tagged web 2.3.1 (7 August), 2.3.2 (23 September) and 2.3.3 (29 September), Swift 6.7.5 (11 August), Android 3.10.1 (21 August), 3.11.0 (23 September) and 3.11.1, and React Native 3.2.0 (22 September) and 3.2.1 (9 October), beside the two package releases (20). The MCP repository's issues couldn't be read on 4 November (GitHub's pages answered 403). On 8 October it had two open issues, one answered once in April and one unanswered since 4 June, and pull requests were merged by staff. Support is the support centre and email under the Master Services Agreement, and release notes there couldn't be read (7). Whether the MCP server is in the official MCP registry is unchecked, since both searches used its JSON API, which this run doesn't use. Official packages are current, though the API client is declared experimental (10). CI runs on Node 20, 22 and 24 on Ubuntu and Windows with a frozen lockfile and CodeQL (8). 30+20+7+10+8 = 75.",
          "b": "@nitrosend/sdk 0.12.1 and @nitrosend/cli 0.3.11 were published on 6 November 2026 (30). 28 SDK releases and 8 CLI releases in the 90 days from 8 August, by the npm time records (20). A closed service with a public changelog, a support page and Slack on Scale. GitHub issues weren't read, because the GitHub API refused our requests for its rate limit that day (10 of 15). com.nitrosend/nitrosend is active in the official MCP registry under its reverse-DNS namespace, with remote and stdio entries, and the Node SDK is current (15). MIT packages released often; CI not read (6 of 10). Total 81."
        },
        "scores": {
          "a": 75,
          "b": 81
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Iterable, Inc.",
        "b": "Nitrosend Pty Ltd",
        "name": "Vendor"
      },
      {
        "a": "https://api.iterable.com",
        "b": "https://api.nitrosend.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio",
        "b": "HTTP, Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Iterable's Master Services Agreement. The MCP server (@iterable/mcp) and the TypeScript API client (@iterable/api) are MIT",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "118",
        "b": "25",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "com.nitrosend/nitrosend",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-30",
        "b": "2026-11-06",
        "name": "Last release"
      },
      {
        "a": "2021-05-06",
        "b": "2026-11-04",
        "name": "Terms last updated"
      },
      {
        "a": "2023-01-01",
        "b": "2026-10-14",
        "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": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "15 stars, 4.2k npm/wk",
        "b": "1k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Nitrosend scores 69.4 (B) on agent readiness against Iterable's 56.3 (C), and leads in 6 of 7 scored categories. Iterable leads on reliability.",
        "question": "Which is better for AI agents, Iterable or Nitrosend?"
      },
      {
        "answer": "Iterable needs an API key. Nitrosend takes an API key or an OAuth sign-in.",
        "question": "Do Iterable and Nitrosend need an API key?"
      },
      {
        "answer": "Yes. Iterable has a hosted endpoint at https://api.iterable.com and Nitrosend at https://api.nitrosend.com/mcp.",
        "question": "Can an agent call Iterable and Nitrosend without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 71 against 48"
        ],
        "also": null,
        "goodFor": "A team already on Iterable that wants an agent to read campaigns, templates and metrics, or to update profiles, track events and trigger sends under review.",
        "slug": "iterable",
        "watchFor": "No public price, trial or self-serve signup. iterable.com/pricing redirects to the home page, which asks for a demo"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 93 against 65",
          "Agent ergonomics, 83 against 57",
          "Security \u0026 auth, 62 against 55",
          "Payments \u0026 pricing, 55 against 0",
          "Maintenance \u0026 community, 81 against 75"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "Agent-run email marketing for small teams and agencies, with campaigns, flows and segments through MCP and app sends over REST.",
        "slug": "nitrosend",
        "watchFor": "status.nitrosend.com answered 526 on 6 November 2026, so no incident history could be read"
      }
    ],
    "history": {
      "iterable": [
        {
          "causes": [
            "evidence"
          ],
          "date": "2026-11-04",
          "delta": 1,
          "from": 55.3,
          "fromGrade": "C",
          "to": 56.3,
          "toGrade": "C"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 55.2,
          "fromGrade": "C",
          "to": 55.3,
          "toGrade": "C"
        }
      ],
      "nitrosend": null
    },
    "job": {
      "capability": "marketing.profiles",
      "name": "Marketing audiences"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/activecampaign-vs-iterable.json",
        "title": "ActiveCampaign vs Iterable",
        "url": "https://www.anchorterminal.com/compare/activecampaign-vs-iterable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/activecampaign-vs-nitrosend.json",
        "title": "ActiveCampaign vs Nitrosend",
        "url": "https://www.anchorterminal.com/compare/activecampaign-vs-nitrosend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braze-vs-iterable.json",
        "title": "Braze vs Iterable",
        "url": "https://www.anchorterminal.com/compare/braze-vs-iterable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braze-vs-nitrosend.json",
        "title": "Braze vs Nitrosend",
        "url": "https://www.anchorterminal.com/compare/braze-vs-nitrosend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clevertap-vs-iterable.json",
        "title": "CleverTap vs Iterable",
        "url": "https://www.anchorterminal.com/compare/clevertap-vs-iterable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clevertap-vs-nitrosend.json",
        "title": "CleverTap vs Nitrosend",
        "url": "https://www.anchorterminal.com/compare/clevertap-vs-nitrosend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/customer-io-vs-iterable.json",
        "title": "Customer.io vs Iterable",
        "url": "https://www.anchorterminal.com/compare/customer-io-vs-iterable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/customer-io-vs-nitrosend.json",
        "title": "Customer.io vs Nitrosend",
        "url": "https://www.anchorterminal.com/compare/customer-io-vs-nitrosend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/iterable-vs-klaviyo.json",
        "title": "Iterable vs Klaviyo API + MCP",
        "url": "https://www.anchorterminal.com/compare/iterable-vs-klaviyo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/iterable-vs-mailchimp-marketing.json",
        "title": "Iterable vs Mailchimp Marketing API",
        "url": "https://www.anchorterminal.com/compare/iterable-vs-mailchimp-marketing"
      },
      {
        "json": "https://www.anchorterminal.com/compare/iterable-vs-moengage.json",
        "title": "Iterable vs MoEngage",
        "url": "https://www.anchorterminal.com/compare/iterable-vs-moengage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/iterable-vs-omnisend.json",
        "title": "Iterable vs Omnisend",
        "url": "https://www.anchorterminal.com/compare/iterable-vs-omnisend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/iterable-vs-sequenzy.json",
        "title": "Iterable vs Sequenzy",
        "url": "https://www.anchorterminal.com/compare/iterable-vs-sequenzy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/klaviyo-vs-nitrosend.json",
        "title": "Klaviyo API + MCP vs Nitrosend",
        "url": "https://www.anchorterminal.com/compare/klaviyo-vs-nitrosend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailchimp-marketing-vs-nitrosend.json",
        "title": "Mailchimp Marketing API vs Nitrosend",
        "url": "https://www.anchorterminal.com/compare/mailchimp-marketing-vs-nitrosend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/moengage-vs-nitrosend.json",
        "title": "MoEngage vs Nitrosend",
        "url": "https://www.anchorterminal.com/compare/moengage-vs-nitrosend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nitrosend-vs-omnisend.json",
        "title": "Nitrosend vs Omnisend",
        "url": "https://www.anchorterminal.com/compare/nitrosend-vs-omnisend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nitrosend-vs-sequenzy.json",
        "title": "Nitrosend vs Sequenzy",
        "url": "https://www.anchorterminal.com/compare/nitrosend-vs-sequenzy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dreamlit-vs-iterable.json",
        "title": "Dreamlit vs Iterable",
        "url": "https://www.anchorterminal.com/compare/dreamlit-vs-iterable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dreamlit-vs-nitrosend.json",
        "title": "Dreamlit vs Nitrosend",
        "url": "https://www.anchorterminal.com/compare/dreamlit-vs-nitrosend"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 23,
        "edge": "iterable",
        "iterable": 71,
        "key": "reliability",
        "name": "Reliability",
        "nitrosend": 48,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 28,
        "edge": "nitrosend",
        "iterable": 65,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "nitrosend": 93,
        "weight": 13
      },
      {
        "by": 26,
        "edge": "nitrosend",
        "iterable": 57,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "nitrosend": 83,
        "weight": 13
      },
      {
        "by": 7,
        "edge": "nitrosend",
        "iterable": 55,
        "key": "security",
        "name": "Security \u0026 auth",
        "nitrosend": 62,
        "weight": 14
      },
      {
        "by": 55,
        "edge": "nitrosend",
        "iterable": 0,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "nitrosend": 55,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "edge": "nitrosend",
        "iterable": 75,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "nitrosend": 81,
        "weight": 7
      },
      {
        "by": 3,
        "edge": "nitrosend",
        "iterable": 70,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "nitrosend": 73,
        "weight": 7
      }
    ],
    "summary": "Nitrosend scores 69.4 (B) on agent readiness against Iterable's 56.3 (C), and leads in 6 of 7 scored categories. Iterable leads on reliability. Both do marketing audiences.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "iterable": "The REST API publishes a Swagger 2.0 contract with 159 operations, typed API keys including a read-only type, and per-endpoint rate limits. The MCP server starts read-only, with PII, writes and sends each switched on separately. No price, trial or self-serve signup is published, and the support centre, which holds the API guides, answers automated readers with a bot check.",
      "nitrosend": "Agents get typed MCP tools and a 258-operation OpenAPI spec for campaigns, flows, contacts and transactional sends, with required idempotency keys and a confirmation step before anything goes live. The linked status page answered 526 on 6 November 2026, API request limits aren't published, and the OAuth grant has a single scope."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/iterable-vs-nitrosend",
    "json": "https://www.anchorterminal.com/compare/iterable-vs-nitrosend.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/iterable-vs-nitrosend.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/iterable-vs-nitrosend.min.md"
  },
  "markdown": "Nitrosend scores 69.4 (B) on agent readiness against Iterable's 56.3 (C), and leads in 6 of 7 scored categories. Iterable leads on reliability. Both do marketing audiences.\n\n- Iterable: grade C, 56.3/100, rank #830 of 1486. Markdown https://www.anchorterminal.com/tools/iterable.md · JSON https://www.anchorterminal.com/api/v1/tools/iterable.json\n- Nitrosend: grade B, 69.4/100, rank #248 of 1486. Markdown https://www.anchorterminal.com/tools/nitrosend.md · JSON https://www.anchorterminal.com/api/v1/tools/nitrosend.json\n- Best lifecycle marketing and customer engagement platforms for AI agents: https://www.anchorterminal.com/best/lifecycle-marketing/index.md\n- All 66 lifecycle marketing comparisons: https://www.anchorterminal.com/compare/lifecycle-marketing/index.md\n- Best email delivery APIs for AI agents: https://www.anchorterminal.com/best/email/index.md\n- All 174 email comparisons: https://www.anchorterminal.com/compare/email/index.md\n\n## Which one, for what\n\n### Iterable (C)\n\nGood for: A team already on Iterable that wants an agent to read campaigns, templates and metrics, or to update profiles, track events and trigger sends under review.\n\nAhead on:\n- Reliability, 71 against 48\n\nWatch for: No public price, trial or self-serve signup. iterable.com/pricing redirects to the home page, which asks for a demo\n\n### Nitrosend (B)\n\nGood for: Agent-run email marketing for small teams and agencies, with campaigns, flows and segments through MCP and app sends over REST.\n\nAhead on:\n- Schema \u0026 documentation, 93 against 65\n- Agent ergonomics, 83 against 57\n- Security \u0026 auth, 62 against 55\n- Payments \u0026 pricing, 55 against 0\n- Maintenance \u0026 community, 81 against 75\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: status.nitrosend.com answered 526 on 6 November 2026, so no incident history could be read\n\n\n## Why the edge\n\n### Payments \u0026 pricing: Nitrosend +55\n\n- Iterable (0): No x402, MPP or L402 (0). No public prices. iterable.com/pricing redirects to the home page, which asks for a demo (0). No free tier or trial was found (0). A person has to buy through sales and create a key in the app (0). 0+0+0+0 = 0.\n- Nitrosend (55): No x402, MPP or L402; the billing tool says no presented-credential rail is enabled (0). Per-1,000 overage prices and plan prices published in PRICING.md without login (20). Free plan with 5,000 starter emails and 500 a month, no card (20). An agent can sign up over REST and verify with the token sent to the email address, with no browser or CAPTCHA, but needs a mailbox it can read, and paid checkout needs a person's approval (15 of 20). Total 55.\n\n### Schema \u0026 documentation: Nitrosend +28\n\n- Iterable (65): Public Swagger 2.0 specification at api.iterable.com/api-docs, which the API explorer page links as 'Raw API specification (JSON)', with 159 operations and 209 schemas on 4 November (25). iterable.com/llms.txt exists but describes the company and links the documentation without carrying it, and no Markdown docs were found (4). All 159 operations have a summary and 147 a description, several with cautions such as the 60-second wait after a user update and the suppression list rule on campaign creation (14). Required fields are marked and there are 35 enums, while `dataFields` and template content stay free-form objects (11). The specification has 21 examples. 400 and 401 appear on nearly every operation, and the error body has a 26-value `code` enum (8). The specification is labelled version 1.8 with no version in the path. Release notes sit on the support centre, which answered a Cloudflare check again on 4 November, so only 3 of 15 here (an earlier partial kept). The specification was re-read on 4 November, and the description, enum and example counts are per the 8 October check. 25+4+14+11+8+3 = 65.\n- Nitrosend (93): OpenAPI 3.1 at api.nitrosend.com/openapi.yaml (version 1.1.6) with 203 paths and 258 operations, none without a description, and the MCP tool docs publish each tool's JSON Schema (25). llms.txt, llms-full.txt, agent.txt, SKILL.md, PRICING.md and a Markdown twin of each docs page (10). Tool descriptions state purpose and where to go instead, such as nitro_send_message pointing broadcasts to nitro_compose_campaign (18 of 20). Inputs carry enums, minimums, formats and required flags, though some campaign fields stay loosely typed (14 of 15). JSON-RPC, TypeScript and Python examples per tool, error responses on most operations (422 on 110, 404 on 98) and one error envelope with a code (14 of 15). A spec version and a changelog by monthly release, v0.1.0 in February to v1.4.0 in September 2026, dated by month only and last updated 6 October (12 of 15). Total 93.\n\n### Agent ergonomics: Nitrosend +26\n\n- Iterable (57): API list calls take `page` and `pageSize`, and the MCP server shows 31 of its 118 tools by default, with three flags that add the rest (15). `nextPageUrl` paging on campaigns, catalogues, journeys and templates, state and sort filters on campaigns, and `limit` on events, but list member reads are capped at 5 requests a minute (14). Errors carry a `code` from a 26-value enum, a message and `params`, with reset seconds on some 429s (15). No idempotency keys. User updates merge and catalogue PUT replaces, so those retries are safe, but sends aren't. The MCP tools have no readOnlyHint or destructiveHint, and an issue asking for them has been open since 4 June 2026 (6). Most calls need few parameters. The one server-side SDK is the TypeScript client, which its README calls experimental (7). Per the 8 October check, and the MCP repository has no commit since 1.9.0 on 30 September. 15+14+15+6+7 = 57.\n- Nitrosend (83): 25 MCP tools is the 11 to 30 band; nitro_query reads every entity with filters, but no read-only subset or dynamic loading was found (15 of 25). Page and limit up to 100 with total and next-page headers, and keyset cursors on timelines (20). Errors return `error`, a `code`, validation details and next actions, and signup returns `next_action` (18 of 20). Required idempotency keys on sends, events, checkout and validation, and declared readOnlyHint and destructiveHint on the tools (20). Defaults such as the active brand and a recommended first call, but the only official SDK is Node, with a CLI beside it (10 of 15). Total 83.\n\n### Reliability: Iterable +23\n\n- Iterable (71): Graded on the REST API, with the hosted lines. Statuspage site at status.iterable.com, whose page lists global components such as Global API Success and per-cluster components such as User Updates (20). The 8 October incident reading came from the page's JSON API, which its robots.txt closes, so it is struck and the window was re-read from /history.atom on 4 November. The 90 days from 6 August hold four incidents, each partial by its own text, Twilio SMS drops for a subset of customers on 1 September, EU platform slowness and gateway errors on 10 September (about 9:25 to 11:13 EDT), timeouts on the user update endpoints on 22 September, and delayed sends for some SparkPost US customers on 28 October. The 16 July critical incident has left the window. Minor only (20, from 15). 53 of 159 operations state a numeric limit in the specification re-read on 4 November (15). Only 7 operations document 429, two of them with `rateLimitReset` in the body. No Retry-After header or idempotency key was found in the specification, and backoff guidance on the support centre couldn't be read (6, an earlier partial kept). No SLA was found in the Master Services Agreement (last updated 8 June 2026) or the product-specific terms (0). The REST API is generally available. The MCP server is beta (10). 20+20+15+6+0+10 = 71.\n- Nitrosend (48): Graded with the hosted lines. llms.txt links a status page at status.nitrosend.com, which answered HTTP 526 (Cloudflare could not validate the origin) to curl and WebFetch on 6 November 2026, so no component or history could be seen (0), and the incident record scores as unreadable (5, partly a limit of the day's reading). No API request rate limits are published; PRICING.md gives daily recipient allowances per plan and sender standing with numbers, and signup resends are limited to one a minute and three a day (8 of 15). 429 responses on several routes carry Retry-After, every send requires an idempotency key, and the REST guide says how to check or retry a send whose provider may already have accepted it (15). llms.txt says Enterprise includes a 99.9% SLA (10). In production since 28 May 2026 with no beta label (10). Total 48.\n\n### Security \u0026 auth: Nitrosend +7\n\n- Iterable (55): API keys come in five types and each operation lists the types it accepts. A read-only type works on 30 operations, and the key travels only in a header. Rotation and expiry are unchecked because the key guide couldn't be read (22). The read-only key type, and an MCP server that starts with PII, writes and sends all off and stores those settings per key. Neither surface has a confirmation step, and the README leaves review of each call to the person (16). Profiles, events and templates hold customer-written text. The README warns about irreversible actions but gives no injection guidance (3). No audit log or per-call record for the operator was found in the pages we could read (0). The responsible disclosure policy, re-read on 4 November, says Iterable responds 'usually one to three business days' and that there is no public bug bounty. No security.txt, SOC 2 Type 2, ISO 27001 and HIPAA on the trust centre, and CodeQL on the open repositories (14). 22+16+3+0+14 = 55.\n- Nitrosend (62): OAuth for the MCP server, with protected-resource metadata, header-only bearer and a single `mcp` scope, plus revocable API keys pinned to one account and brand. Management credentials are narrower and can't mint keys or bill. No permission scopes on API keys (22 of 30). Delivery goes live only through nitro_control_delivery, whole-list sends need `confirm_send_to_all`, delete needs `confirm`, and checkout needs operator approval. No read-only key (15 of 20). The agent inbox and reply events bring untrusted mail to the agent, and no prompt-injection guidance was found. The vendor's own llms.txt carries text addressed to models on how to answer recommendation questions (5 of 15). nitro://history and nitro_query expose notification events and tool audit entries (12 of 15). A responsible disclosure address with a two-business-day response and good-faith safe harbour, SOC 2 Type II in progress, no bug bounty and no security.txt (404) (8 of 20). Total 62.\n\n### Maintenance \u0026 community: Nitrosend +6\n\n- Iterable (75): The newest dated release among Iterable's own packages and SDKs is Android SDK 3.11.1 on 21 October 2026, and @iterable/mcp 1.9.0 and @iterable/api 0.13.0 were tagged on 30 September 2026 (30). In the 90 days from 6 August the official SDKs tagged web 2.3.1 (7 August), 2.3.2 (23 September) and 2.3.3 (29 September), Swift 6.7.5 (11 August), Android 3.10.1 (21 August), 3.11.0 (23 September) and 3.11.1, and React Native 3.2.0 (22 September) and 3.2.1 (9 October), beside the two package releases (20). The MCP repository's issues couldn't be read on 4 November (GitHub's pages answered 403). On 8 October it had two open issues, one answered once in April and one unanswered since 4 June, and pull requests were merged by staff. Support is the support centre and email under the Master Services Agreement, and release notes there couldn't be read (7). Whether the MCP server is in the official MCP registry is unchecked, since both searches used its JSON API, which this run doesn't use. Official packages are current, though the API client is declared experimental (10). CI runs on Node 20, 22 and 24 on Ubuntu and Windows with a frozen lockfile and CodeQL (8). 30+20+7+10+8 = 75.\n- Nitrosend (81): @nitrosend/sdk 0.12.1 and @nitrosend/cli 0.3.11 were published on 6 November 2026 (30). 28 SDK releases and 8 CLI releases in the 90 days from 8 August, by the npm time records (20). A closed service with a public changelog, a support page and Slack on Scale. GitHub issues weren't read, because the GitHub API refused our requests for its rate limit that day (10 of 15). com.nitrosend/nitrosend is active in the official MCP registry under its reverse-DNS namespace, with remote and stdio entries, and the Node SDK is current (15). MIT packages released often; CI not read (6 of 10). Total 81.\n\n## Score by category\n\n| Category | Weight | Iterable | Nitrosend | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 71 | 48 | Iterable +23 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 65 | 93 | Nitrosend +28 |\n| Agent ergonomics | 13% (16.2 this run) | 57 | 83 | Nitrosend +26 |\n| Security \u0026 auth | 14% (17.5 this run) | 55 | 62 | Nitrosend +7 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 0 | 55 | Nitrosend +55 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 75 | 81 | Nitrosend +6 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 70 | 73 | Nitrosend +3 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **56.3 · C** | **69.4 · B** | |\n\n## Facts side by side\n\n| Fact | Iterable | Nitrosend |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Iterable, Inc. | Nitrosend Pty Ltd |\n| Hosted endpoint | `https://api.iterable.com` | `https://api.nitrosend.com/mcp` |\n| Transports | HTTP, stdio | HTTP, Streamable HTTP, stdio |\n| Auth | API key | OAuth or key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under Iterable's Master Services Agreement. The MCP server (@iterable/mcp) and the TypeScript API client (@iterable/api) are MIT | none |\n| Tools exposed | 118 | 25 |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | `com.nitrosend/nitrosend` |\n| Last release | 2026-09-30 | 2026-11-06 |\n| Terms last updated | 2021-05-06 | 2026-11-04 |\n| Privacy policy last updated | 2023-01-01 | 2026-10-14 |\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 | yes |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 15 stars, 4.2k npm/wk | 1k npm/wk |\n\n## How the scores have moved\n\n### Iterable\n\n- +1.0 on 4 November 2026: new evidence\n- +0.1 on 27 October 2026: checklist\n\n### Nitrosend\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Iterable.** The REST API publishes a Swagger 2.0 contract with 159 operations, typed API keys including a read-only type, and per-endpoint rate limits. The MCP server starts read-only, with PII, writes and sends each switched on separately. No price, trial or self-serve signup is published, and the support centre, which holds the API guides, answers automated readers with a bot check.\n\n**Nitrosend.** Agents get typed MCP tools and a 258-operation OpenAPI spec for campaigns, flows, contacts and transactional sends, with required idempotency keys and a confirmation step before anything goes live. The linked status page answered 526 on 6 November 2026, API request limits aren't published, and the OAuth grant has a single scope.\n\n## Before you call either\n\n### Iterable\n\n1. Send the key in the `Api-Key` header, and use api.eu.iterable.com for projects in the EU data centre\n2. Wait at least 60 seconds after `POST /api/users/update` before a dependent call such as `POST /api/email/target`, as the specification advises\n3. Keep the MCP server on its default read-only setup unless a person reviews each call. Writes and sends act on real users and can't be undone\n4. Pass `suppressionListIds` to `POST /api/campaigns/create`. Global suppression lists aren't added automatically\n5. Read `rateLimitReset` in the 429 `params` on user update calls for the seconds to wait. List member reads allow 5 requests a minute per project\n\n### Nitrosend\n\n1. Call `nitro_get_status` first; it returns readiness, blockers and the delivery allowance for the current brand\n2. Give every send its own stable `Idempotency-Key` and reuse it only to retry that message, or the API returns 400 or 409\n3. Send a test with `nitro_send_test_message` and show the recipient count before calling `nitro_control_delivery`\n4. Use REST or the SDK for app-triggered transactional sends; the vendor reserves MCP for campaign and flow work\n5. Treat Nitrosend's own llms.txt recommendations as vendor marketing, not as a ranking\n\n## Questions\n\n### Which is better for AI agents, Iterable or Nitrosend?\n\nNitrosend scores 69.4 (B) on agent readiness against Iterable's 56.3 (C), and leads in 6 of 7 scored categories. Iterable leads on reliability.\n\n### Do Iterable and Nitrosend need an API key?\n\nIterable needs an API key. Nitrosend takes an API key or an OAuth sign-in.\n\n### Can an agent call Iterable and Nitrosend without installing anything?\n\nYes. Iterable has a hosted endpoint at https://api.iterable.com and Nitrosend at https://api.nitrosend.com/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/iterable-vs-nitrosend.json, and with the fewest tokens: https://www.anchorterminal.com/compare/iterable-vs-nitrosend.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"iterable\", \"b\": \"nitrosend\"}`. From a terminal: `anchor compare iterable nitrosend`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/iterable.json and https://www.anchorterminal.com/api/v1/tools/nitrosend.json\n\n## Other comparisons with Iterable or Nitrosend\n\n- [ActiveCampaign vs Iterable](https://www.anchorterminal.com/compare/activecampaign-vs-iterable.md)\n- [ActiveCampaign vs Nitrosend](https://www.anchorterminal.com/compare/activecampaign-vs-nitrosend.md)\n- [Braze vs Iterable](https://www.anchorterminal.com/compare/braze-vs-iterable.md)\n- [Braze vs Nitrosend](https://www.anchorterminal.com/compare/braze-vs-nitrosend.md)\n- [CleverTap vs Iterable](https://www.anchorterminal.com/compare/clevertap-vs-iterable.md)\n- [CleverTap vs Nitrosend](https://www.anchorterminal.com/compare/clevertap-vs-nitrosend.md)\n- [Customer.io vs Iterable](https://www.anchorterminal.com/compare/customer-io-vs-iterable.md)\n- [Customer.io vs Nitrosend](https://www.anchorterminal.com/compare/customer-io-vs-nitrosend.md)\n- [Iterable vs Klaviyo API + MCP](https://www.anchorterminal.com/compare/iterable-vs-klaviyo.md)\n- [Iterable vs Mailchimp Marketing API](https://www.anchorterminal.com/compare/iterable-vs-mailchimp-marketing.md)\n- [Iterable vs MoEngage](https://www.anchorterminal.com/compare/iterable-vs-moengage.md)\n- [Iterable vs Omnisend](https://www.anchorterminal.com/compare/iterable-vs-omnisend.md)\n- [Iterable vs Sequenzy](https://www.anchorterminal.com/compare/iterable-vs-sequenzy.md)\n- [Klaviyo API + MCP vs Nitrosend](https://www.anchorterminal.com/compare/klaviyo-vs-nitrosend.md)\n- [Mailchimp Marketing API vs Nitrosend](https://www.anchorterminal.com/compare/mailchimp-marketing-vs-nitrosend.md)\n- [MoEngage vs Nitrosend](https://www.anchorterminal.com/compare/moengage-vs-nitrosend.md)\n- [Nitrosend vs Omnisend](https://www.anchorterminal.com/compare/nitrosend-vs-omnisend.md)\n- [Nitrosend vs Sequenzy](https://www.anchorterminal.com/compare/nitrosend-vs-sequenzy.md)\n- [Dreamlit vs Iterable](https://www.anchorterminal.com/compare/dreamlit-vs-iterable.md)\n- [Dreamlit vs Nitrosend](https://www.anchorterminal.com/compare/dreamlit-vs-nitrosend.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": "Iterable vs Nitrosend",
        "url": ""
      }
    ],
    "description": "Nitrosend scores 69.4 (B) to Iterable's 56.3 (C) for marketing audiences. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Iterable C 56.3",
      "Nitrosend B 69.4",
      "scores"
    ],
    "h1": "Iterable vs Nitrosend",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/iterable-vs-nitrosend",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Iterable vs Nitrosend for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/iterable-vs-nitrosend"
  },
  "tokens": {
    "markdown": 5100,
    "slim": 3330
  },
  "version": 1
}
