Server data from the Official MCP Registry
Turn any URL plus a schema into validated, typed JSON via the Extracto API.
Turn any URL plus a schema into validated, typed JSON via the Extracto API.
Valid MCP server (3 strong, 3 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.
6 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: EXTRACTO_API_KEY
Environment variable: EXTRACTO_BASE_URL
Environment variable: EXTRACTO_TIMEOUT_MS
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-massanaroger-extracto-mcp": {
"env": {
"EXTRACTO_API_KEY": "your-extracto-api-key-here",
"EXTRACTO_BASE_URL": "your-extracto-base-url-here",
"EXTRACTO_TIMEOUT_MS": "your-extracto-timeout-ms-here"
},
"args": [
"-y",
"extracto-mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
Model Context Protocol server for Extracto. It gives Claude, Cursor, Claude Code, and any MCP client the ability to turn a URL plus a schema into validated, typed JSON — no prompt engineering, no HTML parsing, and no hallucinated fields (missing data comes back as null).
You need an Extracto API key. Get one at app.getextracto.dev/keys.
The server runs over stdio and is published to npm, so most clients just need this config block.
Edit claude_desktop_config.json (Settings → Developer → Edit Config):
{
"mcpServers": {
"extracto": {
"command": "npx",
"args": ["-y", "extracto-mcp"],
"env": { "EXTRACTO_API_KEY": "exa_live_your_key_here" }
}
}
}
Add to ~/.cursor/mcp.json (or the project .cursor/mcp.json) with the same block.
claude mcp add extracto -e EXTRACTO_API_KEY=exa_live_your_key_here -- npx -y extracto-mcp
Restart the client and ask it to extract something, e.g. "Use extracto to pull the title, language and star count from github.com/facebook/react."
| Tool | What it does |
|---|---|
extract | Synchronous extraction from a single URL (up to ~90s). Returns { data, meta }. |
extract_async | Submit an async job for heavy or anti-bot pages. Returns a job id immediately. |
get_job | Poll an async job for status and result. |
list_jobs | List your recent async jobs. |
schema argumentA schema is an object mapping field names to types. A type is:
"string", "number", "boolean", "array", "object"["string"], or [{ "title": "string" }]{ "author": { "name": "string" } }{
"title": "string",
"price": "number",
"tags": ["string"],
"reviews": [{ "user": "string", "stars": "number" }]
}
Only fields that are actually found on the page are returned; anything missing is null rather than guessed.
All configuration is via environment variables passed by your MCP client:
| Variable | Required | Description |
|---|---|---|
EXTRACTO_API_KEY | yes | Your key from app.getextracto.dev/keys. |
EXTRACTO_BASE_URL | no | Override the API host (defaults to https://app.getextracto.dev). |
EXTRACTO_TIMEOUT_MS | no | Per-request timeout in ms (default 90000). |
npm install
npm run dev # run from source with tsx
npm run typecheck
npm run build # bundle to dist/ with tsup
extracto — the official TypeScript/JavaScript SDK.MIT
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.