Extracto Mcp

io.github.massanaRoger由 GitHub 账号 massanaRoger 发布v0.1.2更新于 Oct 24, 2026

Turn any URL plus a schema into validated, typed JSON via the Extracto API.

概览

AI 生成的概览

通过 Extracto API 将网址与字段结构转换为经过校验、带类型的 JSON,并支持同步与异步提取任务。

可以做什么
把 Extracto 提取 API 暴露给 MCP 客户端。extract 工具对单个网址执行同步提取(最长约 90 秒),返回数据与元信息。extract_async 把繁重或反爬页面提交为后台任务并立即返回任务 id,get_job 轮询任务状态与结果,list_jobs 列出最近的任务。字段通过名称到类型的结构描述请求,缺失的数据返回 null 而不是猜测。
适用场景
适合让助手在不编写 HTML 解析器或提示词的情况下从网页获取结构化数据,例如从代码仓库页面提取标题、语言和星标数。异步工具适合会超出同步请求时限的繁重或受机器人防护的页面。
运行要求
以 stdio 方式在本地运行,通常通过 npx 启动 npm 包 extracto-mcp,因此需要 Node.js 和网络访问。必需的 EXTRACTO_API_KEY 由 MCP 客户端传入;可选的 EXTRACTO_BASE_URL 和 EXTRACTO_TIMEOUT_MS 用于覆盖 API 主机和单次请求超时。仅支持桌面客户端。
安装前请注意
EXTRACTO_API_KEY 是保存在客户端配置中的密钥,会发送给 Extracto 服务,因此你提交的网址和结构描述也会传给该第三方。提取对目标页面是只读的,但异步任务会被保留并可通过 list_jobs 列出。将 EXTRACTO_BASE_URL 指向其他主机会把密钥发送到那里。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Extracto Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

extracto-mcp

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).

Quick start

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.

Claude Desktop

Edit claude_desktop_config.json (Settings → Developer → Edit Config):

json
{  "mcpServers": {    "extracto": {      "command": "npx",      "args": ["-y", "extracto-mcp"],      "env": { "EXTRACTO_API_KEY": "exa_live_your_key_here" }    }  }}

Cursor

Add to ~/.cursor/mcp.json (or the project .cursor/mcp.json) with the same block.

Claude Code

bash
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."

Tools

ToolWhat it does
extractSynchronous extraction from a single URL (up to ~90s). Returns { data, meta }.
extract_asyncSubmit an async job for heavy or anti-bot pages. Returns a job id immediately.
get_jobPoll an async job for status and result.
list_jobsList your recent async jobs.

The schema argument

A schema is an object mapping field names to types. A type is:

  • a literal: "string", "number", "boolean", "array", "object"
  • a one-element array for a list: ["string"], or [{ "title": "string" }]
  • a nested object: { "author": { "name": "string" } }
json
{  "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.

Configuration

All configuration is via environment variables passed by your MCP client:

VariableRequiredDescription
EXTRACTO_API_KEYyesYour key from app.getextracto.dev/keys.
EXTRACTO_BASE_URLnoOverride the API host (defaults to https://app.getextracto.dev).
EXTRACTO_TIMEOUT_MSnoPer-request timeout in ms (default 90000).

Development

bash
npm installnpm run dev        # run from source with tsxnpm run typechecknpm run build      # bundle to dist/ with tsup

Related

License

MIT

来源:README.md,提交 0403e82

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.2最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分