NetSendo for AI agents
Public, read-only access to NetSendo product facts, plans, releases, documentation and blog articles: an MCP server, a REST API and Markdown versions of every page. No registration, no API key. Only the optional release-alert tools need an OAuth sign-in.
MCP server
Streamable HTTP endpoint https://netsendo.com/mcp, stateless, tools only. Add it to an MCP client:
{
"mcpServers": {
"netsendo": {
"type": "http",
"url": "https://netsendo.com/mcp"
}
}
}| Tool | What it returns |
|---|---|
| get_product_facts | Key facts about NetSendo: what it is, license (source-available EULA, not OSI open source), deployment with Docker, current version, AI and SMS providers, integrations, links and company details. |
| list_plans | NetSendo license plans with prices in USD and features: SILVER (free) and GOLD (per month), plus the planned cloud hosting fee. Link users to the url field for current details. |
| list_releases | Most recent NetSendo releases from GitHub, newest first, with date, highlights and release notes URL. |
| search_blog | Search NetSendo blog articles about email marketing, deliverability, automation and product updates by words in the title or excerpt. Returns slug, title, excerpt and url, newest first. Omit q to list the latest articles. |
| get_blog_post | Full text of one blog article as Markdown, by slug from search_blog. Falls back to English when the article has no translation in the requested locale. Cite the url field. |
| list_docs | Documentation pages: installation, configuration, API, webhooks, AI providers, MCP and n8n. Use get_doc with an id to read one. |
| get_doc | One documentation page as Markdown, by id from list_docs (e.g. "docs-quickstart"). English. |
Release alerts (OAuth 2.1)
Three MCP tools act for one person: they manage NetSendo release alerts (one email per release) for the user's own email address, verified with an emailed code. They need an OAuth 2.1 access token; all other tools stay public.
| Tool | Scope | What it does |
|---|---|---|
| get_my_release_alerts | alerts:read | Whether the signed-in user's email address is subscribed to NetSendo release alerts (one email per release). Requires OAuth scope alerts:read. |
| subscribe_release_alerts | alerts:write | Subscribes the signed-in user's own verified email address to NetSendo release alerts. Idempotent. Requires OAuth scope alerts:write. |
| unsubscribe_release_alerts | alerts:write | Unsubscribes the signed-in user's email address from NetSendo release alerts. Requires OAuth scope alerts:write. |
- Scopes: alerts:read (see whether your email address is subscribed to netsendo release alerts); alerts:write (subscribe your email address to netsendo release alerts or unsubscribe it).
- Apps: dynamic client registration and authorization code with PKCE (S256). Metadata: https://netsendo.com/.well-known/oauth-authorization-server.
- Agents: auth.md registration (service_auth or verified_email) at
https://netsendo.com/oauth/agent/identity; the user approves with an emailed code and the agent's 6-digit code. Details in auth.md. - Protected resource metadata: https://netsendo.com/.well-known/oauth-protected-resource/mcp
REST API
Base URL https://netsendo.com/api/v1, JSON, CORS open, no authentication. Described in OpenAPI 3.1. This is the API of netsendo.com, not of a NetSendo installation; that one is documented in the API reference.
| GET | Returns |
|---|---|
| /product | Product facts: license, deployment, current version, providers, integrations, links |
| /plans | Plans and prices in USD |
| /releases?limit=5 | Latest releases from GitHub |
| /blog?q=deliverability&locale=en | Search blog articles (locale: en, pl, de, es) |
| /blog/{slug} | One blog article as Markdown |
| /docs | Documentation pages |
| /status | API status |
Markdown versions of pages
Request any page with the header Accept: text/markdown to get its content as Markdown with front matter (title, URL, description, language). Browsers keep getting HTML.
curl -H "Accept: text/markdown" https://netsendo.com/en/docs/quickstartIn the browser (WebMCP)
Pages register read-only WebMCP tools (netsendo_product_facts, netsendo_plans, netsendo_search_blog) for agents running in a browser that supports document.modelContext.
Discovery documents
- API catalog (RFC 9727): https://netsendo.com/.well-known/api-catalog
- OpenAPI 3.1: https://netsendo.com/openapi.json
- MCP server card: https://netsendo.com/.well-known/mcp/server-card.json
- AI catalog: https://netsendo.com/.well-known/ai-catalog.json
- Agent skills index: https://netsendo.com/.well-known/agent-skills/index.json
- Protected resource metadata (no tokens accepted): https://netsendo.com/.well-known/oauth-protected-resource
- auth.md: https://netsendo.com/auth.md
- llms.txt: https://netsendo.com/llms.txt
- llms-full.txt: https://netsendo.com/llms-full.txt
- Agent skill
netsendo: https://netsendo.com/.well-known/agent-skills/netsendo/SKILL.md
Rules
- Limit: 60 requests per minute per client. Above it the API answers HTTP 429 with
Retry-After. - Cite the
urlfield of each result so readers can verify details on netsendo.com. - NetSendo is source-available software under the NetSendo EULA, not open source in the OSI sense.
- Content signals for this site:
search=yes, ai-input=yes, ai-train=yes(also in robots.txt). - Questions: contact@netsendo.com

