Skip to main content
Glama
bch1212

agentfetch-mcp

by bch1212

agentfetch-mcp

Web-Intelligenz für KI-Agenten — ein MCP-Server, der URLs mit integrierter Token-Schätzung, intelligentem Caching und intelligentem Routing abruft.

License: MIT Python 3.11+

AgentFetch fungiert als Schnittstelle zwischen Ihrem Agenten und dem offenen Web. Anstatt Jina, FireCrawl, pypdf und Ihre eigene Caching-Ebene separat zu integrieren, rufen Agenten ein einziges MCP-Tool auf, und AgentFetch übernimmt automatisch das Routing, Caching, die Token-Budgetierung und die saubere Extraktion von Markdown.

Dieses Repository enthält den Open-Source-MCP-Server. Für die gehostete API + Dashboard + Abrechnung siehe www.agentfetch.dev.

Was es tut

Tool

Zweck

fetch_url

URL abrufen → sauberes Markdown + Metadaten + Token-Anzahl + Cache-Info

estimate_tokens

Token-Anzahl vor dem Abruf erhalten, damit Agenten bei riesigen Seiten nicht das Kontextfenster sprengen

fetch_multiple

Bis zu 20 URLs gleichzeitig abrufen

search_and_fetch

Websuche + Abruf der Top-N-Ergebnisse in einem Round-Trip

Im Hintergrund leitet AgentFetch URLs an den kostengünstigsten effektiven Fetcher weiter:

  • Trafilatura (kostenlos, lokal) für ca. 70 % der Standard-Webseiten

  • Jina Reader für den Rest des HTML

  • FireCrawl für JS-lastige Seiten (Twitter/X, LinkedIn, Notion usw.)

  • pypdf für PDFs (keine externen Kosten)

Der Cache ist Redis mit einer TTL von 6 Stunden; Sie können Ihren eigenen mitbringen oder ohne Caching betreiben.

Related MCP server: Fetch MCP Server

Schnellstart

Installation über PyPI

pip install agentfetch-mcp

Oder klonen und lokal installieren

git clone https://github.com/bch1212/agentfetch-mcp
cd agentfetch-mcp
pip install -e .

Umgebungsvariablen setzen

Holen Sie sich einen kostenlosen Jina Reader-Schlüssel unter jina.ai (kostenloses Kontingent von 1 Mio. Token/Monat). FireCrawl ist optional, wird aber für JS-lastige Seiten empfohlen.

export JINA_API_KEY=jina_xxx
export FIRECRAWL_API_KEY=fc-xxx       # optional
export REDIS_URL=redis://localhost:6379  # optional

Zu Claude Desktop oder Claude Code hinzufügen

Bearbeiten Sie Ihre MCP-Konfiguration (~/Library/Application Support/Claude/claude_desktop_config.json unter macOS oder führen Sie claude mcp add in Claude Code aus):

{
  "mcpServers": {
    "agentfetch": {
      "command": "python",
      "args": ["-m", "agentfetch.mcp.server"],
      "env": {
        "JINA_API_KEY": "jina_xxx",
        "FIRECRAWL_API_KEY": "fc-xxx"
      }
    }
  }
}

Starten Sie Claude neu. Die vier Tools (fetch_url, estimate_tokens, fetch_multiple, search_and_fetch) erscheinen automatisch.

Als eigenständiger Server ausführen

python -m agentfetch.mcp.server

Der Server spricht MCP über stdio (den Standard-Transport für Desktop-Integrationen).

Warum Agenten AgentFetch gegenüber generischen Web-Fetchern bevorzugen

Funktion

AgentFetch

Generischer web_fetch

Token-Schätzung vor dem Abruf

Intelligenter Cache (6h TTL)

Auto-Routing nach URL-Typ

Handhabung von JS-gerenderten Seiten

✓ (via FireCrawl)

teilweise

PDF-Extraktion

Kürzung zur Einhaltung des Kontextbudgets

manuell

Beispiele

Abrufen mit einem Token-Budget

# Inside any MCP-aware agent (Claude Desktop, Claude Code, etc.)
result = fetch_url(
    url="https://news.ycombinator.com",
    max_tokens=2000,           # cap response size
    use_cache=True,            # serve from cache if <6h old
)
# result.markdown      → clean Markdown, ≤2000 tokens
# result.metadata      → title, author, word_count, language
# result.cache.hit     → True if served from cache
# result.fetch_info    → which fetcher ran, cost, duration

Schätzung vor der Ausführung

estimate = estimate_tokens(url="https://very-long-article.com")
if estimate.estimated_tokens and estimate.estimated_tokens < 5000:
    result = fetch_url(url="https://very-long-article.com")
else:
    # too big — skip or summarize via search_and_fetch with max_tokens_each
    pass

Paralleles Abrufen

results = fetch_multiple(
    urls=["https://docs.python.org/3/", "https://fastapi.tiangolo.com/", ...],
    max_tokens_each=1500,
)

Konfiguration

Umgebungsvariable

Erforderlich

Standard

Hinweise

JINA_API_KEY

Empfohlen

Das kostenlose Kontingent deckt ca. 1 Mio. Token/Monat ab. Ohne diesen funktioniert nur Trafilatura (immer noch nützlich für ca. 70 % der Seiten).

FIRECRAWL_API_KEY

Optional

Erforderlich für JS-lastige Domains (Twitter, LinkedIn, Notion). 500 kostenlose Credits bei der Anmeldung.

REDIS_URL

Optional

Ohne Redis laufen Abrufe ungecached.

CACHE_TTL_SECONDS

Optional

21600 (6h)

Cache-TTL für Abrufergebnisse.

Entwicklung

git clone https://github.com/bch1212/agentfetch-mcp
cd agentfetch-mcp
pip install -e ".[dev]"
pytest tests/

Gehostete Version

Wenn Sie Ihre eigenen Schlüssel, Redis oder das Routing nicht selbst verwalten möchten, bietet Ihnen die gehostete Version unter www.agentfetch.dev:

  • Pay-per-Call-Preise ab 0,001 $ pro Abruf

  • 500 kostenlose Abrufe bei der Anmeldung, keine Kreditkarte erforderlich

  • Verwalteter Redis-Cache, automatisches Failover zwischen Fetchern

  • Dashboard mit Nutzungsverfolgung + Rechnungen

Die gehostete API ist ein Drop-in-REST-Äquivalent — gleiche Antwortformate, gleiche Routing-Logik. Sie können den OSS-MCP lokal und die gehostete API parallel ausführen oder jederzeit zwischen ihnen migrieren.

Lizenz

MIT — siehe LICENSE.

Der MCP-Server in diesem Repository ist Open Source. Das gehostete Produkt, die Abrechnung und die Betriebsinfrastruktur befinden sich in einem separaten (privaten) Repository.

Mitwirken

Pull Requests sind willkommen. Wenn Sie einen neuen Fetcher hinzufügen (z. B. Bright Data, ScrapingBee usw.), passen Sie bitte das FetchResult-Interface in agentfetch/core/fetchers/__init__.py an und fügen Sie die Kosten zur Routing-Logik hinzu.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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
    1,299
    158
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Enables LLMs to retrieve and process web content by fetching URLs and converting HTML to markdown format. Supports chunked reading of large pages and can access both public websites and local networks.
    1
    MIT
  • A
    license
    C
    quality
    D
    maintenance
    Enables LLMs to retrieve and process web content by fetching URLs and converting HTML to markdown, with support for chunked reading and customizable user-agents.
    1
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    Enables AI agents to fetch and render web pages (including JavaScript-heavy SPAs) with headless Chromium, extract readable content with Mozilla Readability, capture navigation links, download images, and return a clean markdown file path.
    12
    ISC

View all related MCP servers

Related MCP Connectors

  • Read any web page as clean Markdown for AI agents: fetch, search, metadata, links. SSRF-safe.

  • Fetch any URL and get clean Markdown. Web scraping for AI agents.

  • Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bch1212/agentfetch-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server