Skip to main content
Glama
robot-resources

Robot Resources Scraper

npm version License: MIT

@robot-resources/scraper-mcp

⚠️ 已弃用 — 已合并至 @robot-resources/scraper。 此 MCP 服务器现在作为主 scraper 包中的内置 scraper-mcp 二进制文件发布。安装一个包即可获得 MCP。通过 npx robot-resources --for=cursor 或 npx robot-resources --for=claude-code 进行自动配置。下方的工具 (scraper_compress_url, scraper_crawl_url) 和参数保持不变。

用于 Scraper 的 MCP 服务器 — 为 AI 智能体提供上下文压缩。

什么是 Robot Resources?

人力资源,但专为您的 AI 智能体服务。

Robot Resources 为 AI 智能体提供了两种超能力:

  • 路由器 (Router) — 将每个 LLM 调用路由到最便宜且具备能力的模型。在 OpenAI、Anthropic 和 Google 之间节省 60-90% 的成本。

  • 抓取器 (Scraper) — 将网页压缩为精简的 Markdown。每页减少 70-80% 的 Token。

两者均在本地运行。您的 API 密钥永远不会离开您的机器。免费、无限制、无分级。

安装完整套件

npx robot-resources

一条命令即可完成所有设置。了解更多信息请访问 robotresources.ai


Related MCP server: Scraper MCP

关于此 MCP 服务器

此包通过 Model Context Protocol 为 AI 智能体提供了两种将网页内容压缩为 Token 高效 Markdown 的工具:单页压缩和多页 BFS 爬取。

安装

npx @robot-resources/scraper-mcp

或者全局安装:

npm install -g @robot-resources/scraper-mcp

Claude Desktop 配置

添加到您的 claude_desktop_config.json 中:

{
  "mcpServers": {
    "scraper": {
      "command": "npx",
      "args": ["-y", "@robot-resources/scraper-mcp"]
    }
  }
}

工具

scraper_compress_url

将单个网页压缩为 Markdown,减少 70-90% 的 Token。

参数:

参数

类型

必需

默认值

描述

url

string

是

—

要压缩的 URL

mode

string

否

'auto'

'fast', 'stealth', 'render' 或 'auto'

timeout

number

否

10000

抓取超时时间(毫秒)

maxRetries

number

否

3

最大重试次数 (0-10)

示例提示词: "Compress https://docs.example.com/getting-started"

scraper_crawl_url

使用 BFS 链接发现从起始 URL 爬取多个页面。

参数:

参数

类型

必需

默认值

描述

url

string

是

—

爬取的起始 URL

maxPages

number

否

10

最大爬取页面数 (1-100)

maxDepth

number

否

2

最大链接深度 (0-5)

mode

string

否

'auto'

'fast', 'stealth', 'render' 或 'auto'

include

string[]

否

—

要包含的 URL 模式 (glob)

exclude

string[]

否

—

要排除的 URL 模式 (glob)

timeout

number

否

10000

单页超时时间(毫秒)

示例提示词: "Crawl the docs at https://docs.example.com with max 20 pages"

抓取模式

模式

方式

使用场景

'fast'

普通 HTTP

默认站点、API、文档

'stealth'

TLS 指纹模拟

反爬虫保护的站点

'render'

无头浏览器 (Playwright)

JS 渲染的 SPA

'auto'

快速 → 在 403/挑战时回退到 stealth

未知站点(默认)

Stealth 模式需要 impit,Render 模式需要 playwright 作为 @robot-resources/scraper 的对等依赖项。

要求

  • Node.js 18+

相关项目

许可证

MIT

Available Tools

2 tools
scraper_compress_urlB

Compress web content from a URL for reduced token usage. Returns markdown with 70-90% fewer tokens than raw HTML.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL to compress
modeNoFetch mode: 'fast' (plain HTTP), 'stealth' (TLS fingerprint), 'render' (headless browser), 'auto' (fast with fallback). Default: 'auto'
timeoutNoFetch timeout in milliseconds (default: 10000)
maxRetriesNoMax retry attempts (default: 3)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the token reduction benefit but fails to disclose critical traits like rate limits, authentication needs, error handling, or what happens with invalid URLs. The description is minimal and does not compensate for the lack of annotations, leaving significant gaps in understanding the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise and front-loaded, consisting of two sentences that directly state the tool's function and outcome without any fluff. Every sentence earns its place by delivering essential information efficiently, making it easy to grasp the tool's purpose quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a tool with 4 parameters, no annotations, and no output schema, the description is incomplete. It lacks details on behavioral aspects, error cases, and output format beyond 'markdown,' failing to provide sufficient context for safe and effective use. The description does not compensate for the absence of structured data, leaving key operational questions unanswered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, providing clear details for all parameters (url, mode, timeout, maxRetries). The description adds no additional parameter semantics beyond what the schema already explains, such as usage examples or implications of mode choices. Thus, it meets the baseline score of 3, as the schema adequately covers parameter information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('compress') and resource ('web content from a URL'), and distinguishes it from its sibling 'scraper_crawl_url' by focusing on token reduction rather than crawling. It explicitly mentions the outcome: 'Returns markdown with 70-90% fewer tokens than raw HTML.'

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus its sibling 'scraper_crawl_url' or any alternatives. It lacks context about prerequisites, such as when compression is beneficial or when to choose specific modes, offering only a basic functional statement without comparative or exclusionary advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scraper_crawl_urlA

Crawl multiple pages from a starting URL using BFS link discovery. Returns compressed markdown for each page with 70-90% fewer tokens than raw HTML.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesStarting URL to crawl
maxPagesNoMax pages to crawl (default: 10)
maxDepthNoMax link depth (default: 2)
modeNoFetch mode: 'fast' (plain HTTP), 'stealth' (TLS fingerprint), 'render' (headless browser), 'auto' (fast with fallback). Default: 'auto'
includeNoURL patterns to include (glob)
excludeNoURL patterns to exclude (glob)
timeoutNoPer-page timeout in milliseconds (default: 10000)

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden and does well by disclosing key behavioral traits: the BFS crawling algorithm, multi-page scope, and the 70-90% token reduction in output. It doesn't mention rate limits, authentication needs, or error handling, but provides substantial operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences that efficiently convey the core functionality and key output characteristic. Every word earns its place with no redundancy or unnecessary elaboration. The description is front-loaded with the primary action and scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter tool with no annotations and no output schema, the description provides good operational context but lacks details about return format structure, error conditions, or performance characteristics. It mentions compressed markdown output but doesn't describe the data structure or pagination approach.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-specific information beyond what's already in the schema descriptions. It mentions 'starting URL' which is covered by the url parameter description, but doesn't elaborate on parameter interactions or usage patterns.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('crawl multiple pages', 'returns compressed markdown') and resources ('starting URL', 'BFS link discovery'). It distinguishes from the sibling tool scraper_compress_url by emphasizing multi-page crawling rather than single-page compression.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context through 'crawl multiple pages' and 'starting URL', suggesting this is for web scraping tasks. However, it doesn't explicitly state when to use this tool versus the sibling scraper_compress_url or other alternatives, nor does it provide exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv0.1.2
    • First observedscraper_compress_url
    • First observedscraper_crawl_url

TDQS

B3.4/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: scraper_compress_url handles single-page compression, while scraper_crawl_url performs multi-page crawling with BFS link discovery. There is no overlap or ambiguity between them.

Naming Consistency5/5

Both tools follow a consistent verb_noun pattern (scraper_compress_url and scraper_crawl_url), using the same prefix and snake_case style throughout. The naming is predictable and uniform.

Tool Count2/5

With only two tools, the server feels thin for a scraper domain, lacking essential operations like error handling, configuration, or content filtering. This minimal set may limit agent workflows and cause dead ends.

Completeness2/5

The tool surface is severely incomplete for web scraping; it misses basic CRUD-like operations such as updating crawl parameters, deleting cached data, or retrieving specific page elements. Agents will struggle with incomplete coverage.

Maintenance

ActivitySlowing
ResponsivenessSyncing

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Fast, token-efficient web content extraction tool that converts websites to clean Markdown for AI agents, featuring smart caching, content extraction with Mozilla Readability, and polite crawling capabilities.
    1
    503 npm
    161
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    A context-optimized web scraping server that converts HTML to markdown/text and applies CSS selectors server-side, reducing token usage by 70-90% while providing AI tools with clean, filtered web content.
    7
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Fetches web pages and converts them to clean, readable markdown format by extracting main content while removing navigation, ads, and other non-essential elements to minimize token usage.
    4
    -
  • A
    license
    A
    quality
    B
    maintenance
    Converts any URL to clean, token-efficient Markdown for AI agents. Strips ads, navigation, and scripts. Supports CSS selectors, batch processing (10 URLs), token counting, and smart caching.
    3
    3 npm
    MIT