Sub-150ms Web-to-Markdown. Engineered for LLMs, RAG & AI Coding Agents.
Convert any public URL into clean, deterministic GitHub-Flavored Markdown in ~600 tokens. Strip 95% DOM bloat, resolve relative links, and preserve code syntax before burning expensive context windows in Claude, GPT-4o, or Cursor.
# Loading clean markdown...
Strips cookie consent popups, ads, navbars, and inline SVGs to prevent context window exhaustion.
Converts relative paths (/docs/v1) to fully qualified URLs so agents never hallucinate dead citations.
Maintains code block language tags (```typescript) and KaTeX math formulas intact without escaping.
Extracts author, publish date, estimated reading time, and token counts directly alongside the document.
How to Cut Your LLM Context Costs by 95%
Stop passing raw HTML DOM strings into GPT-4o, Claude 3.7 Sonnet, or Cursor. Use TokenMarkdown as Step 1 to strip garbage before spending context tokens.
Pass Raw HTML Directly to LLM
Feeding 500KB raw HTML pages into Claude or GPT-4o burns 28,000+ tokens per page on cookie banners, tracking scripts, and inline SVG clutter.
Step 1: Sub-150ms Edge Conversion
TokenMarkdown cleans and compresses pages to ~600 tokens of pure GFM markdown. You only pay for meaningful content tokens.
One API call. Pure clean Markdown.
Drop into Claude Desktop MCP configs, Cursor IDE coding agents, Python RAG pipelines, or terminal cURL loops in under 60 seconds.
# 1. Execute sub-150ms Markdown Extraction
curl -X POST "https://tokenmarkdown.com/v1/extract" \
-H "Authorization: Bearer tm_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://linear.app/blog/rethinking-issue-tracking"}'
# 2. Dense ~620-token GFM Response (124ms latency)
{
"success": true,
"data": {
"title": "Rethinking Issue Tracking",
"author": "Karri Saarinen",
"word_count": 842,
"estimated_tokens": 620,
"markdown": "# Rethinking Issue Tracking\n\nSoftware teams spend 40%..."
},
"performance": { "total_latency_ms": 124 }
}
Engineered for your existing agent stack.
Drop-in tools for Claude Desktop, Cursor, CrewAI, LangChain, and Clay waterfalls. Zero custom scraping boilerplate required.
Claude Desktop & Cursor
Instant Model Context Protocol (MCP) tool execution. Give your AI coding and chat agents real-time web vision in 1 click.
MCP Configuration Guide →CrewAI, LangChain & Python
Type-safe Python tools with @tool decorators. Ingest external docs inside multi-agent research loops without context bloat.
Clay.com & n8n Orchestration
Replace slow Puppeteer browser columns with a single sub-150ms HTTP action. Ingest thousands of web pages per minute.
Browse All 1-Click Blueprints →See your exact monthly prompt token savings
Calculate how much you save on LLM context bills compared to raw HTML DOM scraping.
Predictable monthly billing. Cancel anytime. Zero annual lock-in.
1 credit = 1 webpage extracted to clean GFM markdown. Failed lookups or blocked domains never consume credits. Self-serve key generation via Polar.sh.
-
Standard Single
/v1/extract - Model Context Protocol (MCP) Active
- GFM Tables & Code Blocks
- Instant API Key (No card required)
- Everything in Sandbox
-
Prefix Proxy Route (
/https://...) - Python & TypeScript SDK Access
- Standard Email Support
- Everything in Builder
- Sub-10ms Edge Caching Layer
- Target & Exclude CSS Selectors
- Priority Technical Support
- Everything in Growth
-
Fast Parallel Batch API (
/v1/extract/batch) - 1-Click Clay.com & n8n Templates
- Dedicated Slack / Discord Channel
Frequently Asked Questions
Everything you need to know about token compression, SSRF security defense, and native Model Context Protocol (MCP) execution.
Why is ~600 tokens superior to raw web scraping?
A typical webpage contains 28,000+ tokens of navigational DOM, tracking scripts, CSS classes, and cookie banners. Feeding raw DOM into LLMs burns $0.08+ per page and slows inference to 5+ seconds. TokenMarkdown strips all DOM garbage into pure, deterministic GFM in ~600 tokens.
How do I integrate with Model Context Protocol (MCP)?
TokenMarkdown provides a standalone MCP server via npx -y tokenmarkdown-mcp. Simply add your API key into Claude Desktop or Cursor's MCP configuration to enable autonomous web reading in 1 click.
Can I fetch markdown without an SDK using the prefix proxy?
Yes. Prepend https://tokenmarkdown.com/ before any URL (e.g. https://tokenmarkdown.com/https://github.com/trending) to stream clean markdown directly to your terminal or script with zero SDK setup.
How does TokenMarkdown prevent SSRF attacks?
Our edge fetcher performs DNS resolution filtering and blocks loopback, private RFC 1918 subnets (10.0.0.0/8, 192.168.0.0/16), and cloud metadata endpoints (169.254.169.254) on every single redirect hop.
How does TokenMarkdown handle complex tables and math?
We use customized Turndown rules with pipe character cell escaping and KaTeX math preservation to ensure markdown tables and mathematical formulas are rendered cleanly without formatting corruption.
How does TokenMarkdown handle dynamic JavaScript SPAs?
We detect client-side rendered Single Page Applications and flag them with is_spa: true and custom warnings, ensuring AI agents understand if content was dynamically gated rather than failing silently.
Can I run bulk lookups on large URL lists in parallel?
Yes. The /v1/extract/batch endpoint accepts up to 10 URLs per request, extracting clean markdown and token counts concurrently in under 1 second for fast Clay.com and n8n waterfall enrichment.
What happens if I exceed my monthly extraction quota?
The API returns a standard HTTP 429 response when your allocation is reached. You can upgrade your plan or provision custom limits anytime from your self-serve console with instant prorated Stripe/Polar billing.