Everything on thenotetakers.com can be read from code, for free. There is no sign up, no API key and no auth. Use whichever fits your tool: a read-only JSON API, an MCP server, or a Markdown copy of every page.
REST API
List or search posts with GET https://thenotetakers.com/api/v1/posts. Results are sorted newest updated first.
q: optional string, up to 200 characters. Case-insensitive match against each post's title, description and body. Omit it to list all posts.limit: optional integer, 1 to 50. Defaults to 20.
The response is { "posts": [...] }. Each item has:
slugtitledescriptionurl: the canonical HTML URLmarkdownUrl: the Markdown version of the postupdated: the last updated date, as YYYY-MM-DD
curl https://thenotetakers.com/api/v1/posts
curl "https://thenotetakers.com/api/v1/posts?q=free%20plan&limit=5"
Get one post with GET https://thenotetakers.com/api/v1/posts/{slug}. It returns the same fields, plus markdown: the full post as Markdown with YAML frontmatter.
curl https://thenotetakers.com/api/v1/posts/circleback-free-plan
GET https://thenotetakers.com/api is the API index. It lists the entry points: posts, openapi, mcp, docs.
Responses are JSON (application/json), and CORS is open (Access-Control-Allow-Origin: *).
Errors. Errors use RFC 9457 problem details, with content type application/problem+json and the fields type, title, status, detail and instance.
- 404: unknown slug, or any other path under /api.
- 400: invalid
qorlimit, or a slug longer than 200 characters. - 405: wrong HTTP method. The response includes an
Allow: GETheader.
Machine-readable descriptions.
- OpenAPI 3.1 document: https://thenotetakers.com/openapi.json
- API catalog (RFC 9727): https://thenotetakers.com/.well-known/api-catalog
MCP server
Point an MCP client at https://thenotetakers.com/api/mcp. The server is read-only and needs no auth.
The transport is Streamable HTTP: JSON-RPC 2.0 over POST, one message per request, with JSON responses. Any non-POST request returns 405 with Allow: POST.
Supported protocol versions: 2026-07-28, 2025-11-25, 2025-06-18, 2025-03-26.
Three tools, all read-only:
search_posts: lists every post, or only the posts whose title, description or body match a query, newest updated first. Parameters:query(optional string, up to 200 characters; omit it or leave it empty to list all posts) andlimit(optional integer, 1 to 50, default 20).get_post_markdown: returns one post as Markdown with YAML frontmatter, the same document served at the post's .md URL. Parameter:slug(required string, 1 to 200 characters). Get slugs fromsearch_posts.get_llms_txt: returns llms.txt. Parameter:full(optional boolean, default false). Set it to true to get llms-full.txt instead.
Start a session with an initialize request:
curl -X POST https://thenotetakers.com/api/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"curl","version":"1.0.0"}}}'
Server card (server name com.thenotetakers/reviews, version 1.0.0): https://thenotetakers.com/.well-known/mcp/server-card.json
llms.txt and Markdown
- https://thenotetakers.com/llms.txt lists every post with its Markdown URL.
- https://thenotetakers.com/llms-full.txt puts every post body in a single file.
- Every page has a Markdown copy at the same URL plus
.md. This page, for example, is at https://thenotetakers.com/developers.md.
Versioning
The API is v1, and the version is part of the URL path (/api/v1). Breaking changes ship under a new versioned path such as /api/v2.
Rate limits
There are no published rate limits. API responses are cached for a few minutes, so polling more often than that gains nothing.
Questions
Email hello@thenotetakers.com.