markdownPreserve useful headings, lists, links, tables, quotations, and code in a portable text format.
Developer documentation
Start with a focused guide, inspect the complete API reference, or download the OpenAPI specification for your own tooling.
Convert public webpages into Markdown, readable text, metadata, links, schema, structured sections, raw HTML, and SEO diagnostics.
Need one page without code? Use the free Web Page Scraper to copy or download static Markdown and text.
export TOOLTRACE_KEY='paste_your_api_key_here'
curl --request POST \
--url "https://api.tooltrace.io/v1/extract" \
--header "X-ToolTrace-Key: ${TOOLTRACE_KEY}" \
--header 'Content-Type: application/json' \
--data '{
"url": "https://example.com",
"render": "auto",
"mode": "structured",
"include": ["markdown"]
}' Readable content
Use POST /v1/extract with focused include fields when you need the readable body and page identity rather than links, schema, or raw HTML.
export TOOLTRACE_KEY='paste_your_api_key_here'
curl --request POST \
--url "https://api.tooltrace.io/v1/extract" \
--header "X-ToolTrace-Key: ${TOOLTRACE_KEY}" \
--header 'Content-Type: application/json' \
--data '{
"url": "https://example.com/article",
"render": "auto",
"mode": "structured",
"include": ["markdown", "text", "metadata", "sections"]
}' Rendering
Usage
Static extraction generally costs 1 credit. Browser-rendered extraction generally costs 5 credits. Requests rejected before processing generally cost 0 credits. Sitemap inspection is priced per URL inspected rather than per request: 1 credit per 10 URLs, so the default 25-URL check costs 3 credits.
Focused endpoint
Use POST /v1/links when you need link destinations rather than the full page body. The response includes internal and external classification, anchor text, rel values, and flags for nofollow, sponsored, and ugc.
export TOOLTRACE_KEY='paste_your_api_key_here'
curl --request POST \
--url "https://api.tooltrace.io/v1/links" \
--header "X-ToolTrace-Key: ${TOOLTRACE_KEY}" \
--header 'Content-Type: application/json' \
--data '{
"url": "https://example.com"
}' Structured data endpoint
Use POST /v1/schema to collect parseable JSON-LD from a public webpage. Raw mode preserves discovered blocks. Normalized mode expands top-level arrays and @graph collections into deduplicated entities.
export TOOLTRACE_KEY='paste_your_api_key_here'
curl --request POST \
--url "https://api.tooltrace.io/v1/schema" \
--header "X-ToolTrace-Key: ${TOOLTRACE_KEY}" \
--header 'Content-Type: application/json' \
--data '{
"url": "https://example.com",
"mode": "normalized"
}' Page analysis endpoint
Use POST /v1/seo-audit to evaluate a public webpage and receive twelve checks covering metadata, canonical signals, headings, image alt coverage, viewport, robots directives, social fields, JSON-LD presence, and extracted content length.
export TOOLTRACE_KEY='paste_your_api_key_here'
curl --request POST \
--url "https://api.tooltrace.io/v1/seo-audit" \
--header "X-ToolTrace-Key: ${TOOLTRACE_KEY}" \
--header 'Content-Type: application/json' \
--data '{
"url": "https://example.com/page"
}' The score is the percentage of supported check weight that passed. It is not a ranking prediction, indexation guarantee, sitewide audit, or measurement of links, authority, traffic, competition, or Core Web Vitals.
Technology intelligence endpoint
Use POST /v1/tech-stack to identify technologies that leave public signals in response headers, HTML, scripts, stylesheets, meta tags, cookies, and rendered page structure.
export TOOLTRACE_KEY='paste_your_api_key_here'
curl --request POST \
--url "https://api.tooltrace.io/v1/tech-stack" \
--header "X-ToolTrace-Key: ${TOOLTRACE_KEY}" \
--header 'Content-Type: application/json' \
--data '{
"url": "https://example.com",
"render": "auto"
}' Production integration
Store API keys in server-side environment variables or a managed secret store. Never expose a ToolTrace key in public browser code, source control, screenshots, logs, or support messages. Use separate named keys for production, development, and CI so one credential can be revoked without interrupting every environment.
Use /v1/extract for content, /v1/metadata for page and social fields, /v1/links for normalized links, /v1/schema for structured data, /v1/seo-audit for page-level technical signals, /v1/sitemap-inspector for sitemap documents and listed URLs, and /v1/tech-stack for observable website technologies.
The interactive reference is the source of truth for request fields and response schemas. The downloadable OpenAPI document can generate typed clients, validate contracts, and keep internal documentation synchronized with production.
SDKs and integrations
Install the package for your stack. Every package authenticates with your ToolTrace API key and calls the same production endpoints documented above.
Add ToolTrace to Claude Desktop, Claude Code, or Cursor in one step:
# Claude Code
claude mcp add tooltrace tooltrace-mcp -e TOOLTRACE_API_KEY=your-api-key
# Claude Desktop / Cursor (add to your MCP config)
{
"mcpServers": {
"tooltrace": {
"command": "tooltrace-mcp",
"env": { "TOOLTRACE_API_KEY": "your-api-key" }
}
}
} from tooltrace import ToolTrace
client = ToolTrace(api_key="your-key")
# Extract clean Markdown from any webpage
result = client.extract("https://example.com")
print(result.markdown)
print(result.metadata.title)
# Run an SEO audit
audit = client.seo_audit("https://example.com")
print(f"Score: {audit.score}/100")