360 Secure SkillHub
360 安全技能中心

Agent Web

通过远程 agent-web 服务的 REST 接口或 MCP 工具读取单个公开静态网页,返回标题、字数与适合 LLM 使用的 Markdown,并提供预览端点;遵守 robots.txt、屏蔽内网地址,不支持 JavaScript 渲染页面与 PDF。

foomworks
热度 15.99
最近更新 2026-06-20 10:24:40
分类:效率依赖:第三方 API / MCP 服务应用场景:文件转换 / 工作流 / 研究

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add agent-web
Metadata
name
url-to-markdown
description
Fetch any public web page and get back clean, LLM-ready markdown (polite, robots-respecting)
metadata
{"openclaw":{"requires":{"bins":["curl"]}}}
homepage
https://agent-web.foomworks.workers.dev
license
MIT

URL → LLM-ready markdown (agent-web)

Use this skill when a task needs the readable content of a web page as clean markdown — to summarize an article, extract docs, or feed a page into an LLM without parsing raw HTML yourself. Give it one publicly reachable URL; get back the title, a word count, and LLM-ready markdown. Server-rendered (static) HTML pages, no account, no API key.

Base URL: https://agent-web.foomworks.workers.dev

Charter-clean by design (the bright line): this is a polite reader. It honors the origin's robots.txt for its user-agent, identifies honestly (no browser spoofing), performs read-only GETs of the single URL you supply, and never bypasses anti-bot/CAPTCHA, paywalls, or login walls. You are responsible for your right to fetch the URL you submit.

Use as an MCP server (recommended for agents)

agent-web is a remote MCP server (Streamable HTTP, JSON-RPC 2.0) — connect your agent and the tools load natively, no curl required:

  • Endpoint: https://agent-web.foomworks.workers.dev/mcp
  • Tools (all free, return data directly):
    • read_url — fetch a URL → full LLM-ready markdown (title, word count, markdown)
    • read_url_preview — the first ~600 characters of the markdown (a cheap look before the full pull)

Discovery manifests: GET /.well-known/mcp.json (MCP descriptor), GET /.well-known/agent-card.json (A2A), GET /openapi.json (OpenAPI 3.1). The REST endpoints below are available for direct HTTP/curl use.

When to use

  • "Summarize / extract the content of "
  • "Turn this docs/article page into markdown so I can work with it"
  • "Read and answer a question about it"

Endpoints (all currently free)

  • GET /read?url=<URL> — fetch the page → { title, words, markdown }
  • GET /read/preview?url=<URL> — the first ~600 characters of the markdown
  • POST /mcp — MCP server (JSON-RPC 2.0): read_url, read_url_preview
  • GET /health — service status
  • GET /policy — the Acceptable-Use Policy (the polite-reader guarantees)
  • GET /stats — daily usage counters

Limits & behavior

  • Static HTML only for now — JavaScript-rendered pages, screenshots, and PDF are a later increment (not yet supported).
  • A disallowed robots.txt path is refused without fetching; an unconfirmable robots.txt (5xx/error) is treated conservatively as disallowed.
  • Private/loopback/link-local/internal hosts are blocked (SSRF protection); every redirect hop is re-validated. Body cap ~2 MB, fetch timeout ~12 s.
  • The service holds no keys and never initiates payments.

Example

BASE=https://agent-web.foomworks.workers.dev
# REST
curl -s "$BASE/read?url=https://example.com/"
# MCP (Streamable HTTP, JSON-RPC 2.0)
curl -s -X POST "$BASE/mcp" -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"read_url","arguments":{"url":"https://example.com/"}}}'