Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Mit Google anmelden, um Bewertungen zu schreiben.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

MeshArc

von mesharc-orgVersion 0.6.0i★ 0iLäuft in der Cloud
Name in der Registrydev.mesharc/mesharc

So installierst du es

Überblick

Beschreibung vom Entwickler (englisches Original)

Crawl and scrape websites to clean markdown, and track what changed between crawls.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft in der Cloud
  • Transport: Streamable HTTP
  • Kategorie: Web & Browser

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

5/5 Prüfungen bestanden · Was du fragst, läuft über den Server des Anbieters (mcp.mesharc.dev)

Zuerst: Welche KI nutzt du?

Wähle deine App, dann erscheinen die Schritte unten.

Klappt mit Claude · etwa 2 Min.

Kein Schlüssel, nichts zu installieren · Einmal auf claude.ai oder in der Desktop-App einrichten, dann im Chat nutzen · kostenlose Konten können 1 hinzufügen

  1. Öffne die Connectors-Seite von Claude

    CustomizeConnectors

    CustomizeConnectors1+ Add2https://…3Add4
  2. Klicke „+ Add“ → „Add custom connector“ und fülle diese 2 Felder aus

    Kopiere jeden Wert in das gleichnamige Feld in Claude und klicke Continue

    Name · NameMeshArc
    Remote MCP server URL · Adressehttps://mcp.mesharc.dev/mcp

    Authentication so lassen, wie Claude es erkannt hat, dann Add klicken

  3. Im Chat einschalten

    +ConnectorsMeshArc

  4. Ausprobieren

    Nutze MeshArc und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn Claude sagt, dass es MeshArc nutzt, oder ein Werkzeug von MeshArc in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von Anthropic abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Klappt mit ChatGPT nur in Firmen-Tarifen

ChatGPT Business, Enterprise oder Edu im Web, hinzugefügt von Admin oder Inhaber des Workspace · Mit Free, Plus oder Pro: Dein ChatGPT-Tarif kann MCP noch nicht selbst verbinden

  1. In ChatGPT im Web die Seite zum Hinzufügen von MCP öffnen

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. Name und Adresse eintragen

    Namen eingeben, Adresse unter Connection einfügen, Risikohinweis abhaken und Create as a plugin klicken

    Name · NameMeshArc
    Connection · Adressehttps://mcp.mesharc.dev/mcp
  3. MeshArc im Chat auswählen

    Neuen Chat öffnen und vor dem Tippen MeshArc aus deinen Plugins wählen

  4. Ausprobieren

    Nutze MeshArc und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn ChatGPT sagt, dass es MeshArc nutzt, oder ein Werkzeug von MeshArc in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von OpenAI abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Klappt mit Claude Code · etwa 2 Min.

Kein Schlüssel, nichts zu installieren

  1. Terminal öffnen

    Mac: Command+Leertaste drücken und Terminal tippen · Windows: PowerShell öffnen

  2. Diesen Befehl einfügen und Enter drücken

    claude mcp add --transport http mesharc https://mcp.mesharc.dev/mcp
  3. /mcp in Claude Code eingeben

    MeshArc sollte in der Liste als verbunden erscheinen

  4. Ausprobieren

    Nutze MeshArc und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn Claude Code sagt, dass es MeshArc nutzt, oder ein Werkzeug von MeshArc in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von Anthropic abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Klappt mit Cursor · etwa 2 Min.

Kein Schlüssel, nichts zu installieren

  1. Mit diesem Button Cursor öffnen

    In Cursor öffnen

    Cursor fragt nach einer Bestätigung; klicke Install

  2. KI-Chat in Cursor im Agent-Modus öffnen

  3. Ausprobieren

    Nutze MeshArc und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn Cursor sagt, dass es MeshArc nutzt, oder ein Werkzeug von MeshArc in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von Cursor abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Klappt mit VS Code · etwa 2 Min.

Kein Schlüssel, nichts zu installieren

  1. Mit diesem Button VS Code öffnen

    In VS Code öffnen

    VS Code fragt nach einer Bestätigung; klicke Install

  2. KI-Chat in VS Code im Agent-Modus öffnen

  3. Ausprobieren

    Nutze MeshArc und sag mir, was du für mich tun kannst; zeig mir dann eine Sache

    ✓ Wenn VS Code sagt, dass es MeshArc nutzt, oder ein Werkzeug von MeshArc in der Antwort zeigt, bist du verbunden

Menünamen am 11. Nov. 2026 mit der Hilfe von VS Code abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen

Andere Apps mit MCP, etwa Windsurf, Zed oder Gemini CLI, fügen Server unterschiedlich hinzu. Sieh in der App-Liste nach

Alle Apps mit MCP ansehen →

Adresse für Apps, die über das Web verbinden

Adressehttps://mcp.mesharc.dev/mcp

JSON-Einstellungen stehen unten unter „Für Entwickler“

Hängst du fest? Frag Leute, die MeshArc nutzen💬 Diskussion →
Für Entwickler: Terminal-Befehle und JSON-Einstellungen

Über das Web

Claude Code

claude mcp add --transport http mesharc https://mcp.mesharc.dev/mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "mesharc": {
      "url": "https://mcp.mesharc.dev/mcp"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "mesharc": {
      "type": "http",
      "url": "https://mcp.mesharc.dev/mcp"
    }
  }
}

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Auf einen Blick

Downloads pro Wochei
Nicht auf npm/PyPI
Bestätigte Domain
✓ mesharc.dev
Verbindung
Läuft in der Cloud
Transport
streamable-http
Neueste Versioni
0.6.0
In der Registry veröffentlichti
7. Okt. 2026
Code zuletzt geänderti
11. Nov. 2026
Entwickler
mesharc-org
Registry-Status
Aktiv

Welche Apps ihn nutzen können

Basierend darauf, wie sich dieser Server verbindet, und auf der eigenen Doku jeder App, geprüft am 10. Nov. 2026.

Verbinden sich über das Internet in

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

Alle Apps, mit Vor- und Nachteilen →

Was er kann

Der Server verlangt eine Anmeldung, bevor er seine Tools auflistet.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 11. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde über die Domain mesharc.dev bestätigt (die Registry prüft, wem die Domain gehört)

  • ✓ Bestanden

    Wird noch gepflegt

    Code zuletzt geändert: heute

  • ✓ Bestanden

    Hat eine Lizenz

    Nutzt MIT

  • ✓ Bestanden

    Endpunkt antwortet

    Antwort in 500 ms (HTTP 401)

  • ✓ Bestanden

    Anmeldung mit OAuth

    Gibt OAuth-Anmeldung an, damit deine KI-App dich zum Einloggen weiterleiten kann

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Noch nicht geprüft; wir lesen die Tool-Liste, wenn wir den Endpunkt prüfen

Diskussion

Fragen, Tipps teilen oder melden, dass etwas nicht geht. Sortiert nach „hilfreich“.

Noch keine Beiträge. Stell die erste Frage oder teile einen Tipp.

Beiträge hier stammen von Nutzern, nicht vom PopNx-Team.

Mit Google anmelden, um zu posten

Nutzerbewertungen

Noch keine Bewertungen

Mit Google anmelden, um zu bewerten

Im Vergleich mit anderen in Web & Browseri

  • Mehr Sterne als 0 % der anderen 1458 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 47 % der anderen 1458 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 1458 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist MeshArc sicher?

Er hat 5 von 5 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.

Läuft er auf meinem Computer oder in der Cloud?

Er läuft in der Cloud des Entwicklers. Du verbindest dich übers Internet, ohne etwas zu installieren, aber was du sendest, läuft über die Server des Entwicklers.

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt heute geändert, und die neueste Version (0.6.0) kam vor 35 Tagen in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL und funktioniert daher auch in Apps mit Remote-MCP, etwa ChatGPT Business und höher.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Browser Use, Scrapling MCP Server, Chrome DevTools MCP

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Browser Use

Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.

von browser-useWeit verbreitet↓ 1,7 Mio./Wo.★ 120.646Aktualisiert vor 21 Tagen

Computer oder Cloud✓ browser-use.com

Scrapling MCP Server

Web scraping with stealth HTTP, real browsers, and Cloudflare bypass. CSS selectors supported.

von D4VinciWeit verbreitet↓ 396.928/Wo.★ 101.248Aktualisiert vor 6 Tagen

Läuft auf deinem Computer

Chrome DevTools MCP

MCP server for Chrome DevTools

von ChromeDevToolsWeit verbreitet↓ 1,9 Mio./Wo.★ 55.085Aktualisiert vor 20 Tagen

Läuft auf deinem Computer

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

mesharc

The Python client for the MeshArc API: a URL in, clean content out, and a record of what changed.

  • Scrape one page or a batch — markdown, text, HTML, links, structured fields, a screenshot.
  • Crawl a whole site with no project to set up first, and keep it as one if it turns out to be worth watching.
  • Map what a site declares in its sitemaps before fetching any of it.
  • Search the web for pages whose URLs you do not know, and read each result's page in the same call.
  • Ask the agent a question: it searches, reads pages and answers, in the shape of a schema if you give one, with the pages its answer rests on. (Not live on mesharc.dev yet.)
  • Monitor a search or a question: asked again hourly, daily or weekly, each answer compared with the last, a webhook told when it changed. (Not live on mesharc.dev yet.)
  • Watch a site over time: projects, scheduled runs, and a change record — pages added, removed, modified, field by field.

Python 3.10 or newer. One dependency (httpx). Fully typed.

Install

pip install mesharc

Authentication

Every call needs an API key. Create one in the app under Settings → API keys — it is shown once — and give it to the client, or put it in MESHARC_API_KEY and construct the client with nothing:

from mesharc import MeshArc

arc = MeshArc("mesharc_...")

or, with MESHARC_API_KEY in the environment:

arc = MeshArc()

options: MeshArc(api_key, timeout=150.0, max_retries=2)

The key is only ever sent as a bearer header to api.mesharc.dev.

A key carries the scopes it was made with (read, write, admin), optionally a set of projects it may see, an expiry and a rate limit. A route the key may not use answers 403; a project it may not see answers 404.

Quick start

from mesharc import MeshArc

arc = MeshArc("mesharc_...")

page = arc.scrape("https://example.com/pricing") print(page["markdown"]) print(page["verdict"], page["method"], page["credits"]) # ok crawler 1

scrape holds the request open until the page comes back (60 s by default), so there is nothing to poll for an ordinary page.

Reading pages

One page
page = arc.scrape("https://quotes.toscrape.com/js/", config={"render_js": "always"})

config is any setting a project takes, by its API name (render_js, only_main_content, formats, max_tier, wait_for_selector, actions, …). The full list, with defaults, is at mesharc.dev/docs/configuration.

page = arc.scrape_one(

"https://example.com/", formats="markdown,text,cleanHtml", # which bodies to return timeout_s=120, # how long the API holds the request (120 max) idempotency_key="pricing-2026-09-18", # the same key returns the first answer for 24 h )

Many pages

A list of URLs is a batch: grouped by host, fetched in parallel where the config allows, and returned as one row per URL.

batch = arc.scrape(["https://a.com/", "https://b.com/x"], config={"concurrency": 4})

for row in batch["pages"]: print(row["url"], row["httpStatus"], row["verdict"], row["credits"])

arc.scrape(urls, wait=False) returns the batch id at once; arc.batch(id, wait=True) finishes it later. Pass webhook_url= to be told instead of polling (batch.finished, signed with a secret returned once).

What a page looks like

Every page row carries the same fields, whether it came from a scrape, a crawl or a project:

FieldMeaning
markdown, text, cleanHtml, html, links, fields, screenshotThe bodies you asked for
httpStatusThe status the site answered with
verdictok, thin (short, but a page), blocked (refused, or a 404), skipped
errorCodeOK, or what went wrong: BLOCKED, NOT_FOUND, TIER_LIMIT, CAPTCHA, LOGIN_REQUIRED, RATE_LIMITED, TIMEOUT …
shape, warnings, signalslisting / table / form for a short page whose markup says what it is; short; why the judge decided as it did
method, tier, climbedToThe engine that read it (crawler, tls, minted, browser, browser-residential, …), its tier, and how far a refused page climbed
credits, billedAsWhat it cost; the rung it is priced at when not the one that fetched it
words, language, head, reason, crawledAtSize, language, the head fields, the judge's sentence, when

A page the site refused costs 0, and so does a 404.

Crawling a site

job = arc.crawl(

"https://docs.example.com", limit=200, # page budget maxDepth=3, # link hops from the seed includePaths=["/docs/*"], crawlMode="sitemap_first", # what the sitemap declares first, then links maxTier="browser", # how far a refused page may climb scrapeOptions={"formats": ["markdown", "links"]}, config={"crawl_delay_ms": 500}, # any project setting, directly )

for page in job.pages(): # follows the cursor while the crawl runs print(page["url"], page["words"]) print(job.status, job.envelope["counts"], job.envelope["creditsUsed"])

crawl returns a handle immediately; job.pages() yields pages as they land and ends when the crawl does. wait=True blocks until it finishes; job.wait(), job.refresh(), job.cancel() do what they say; arc.get_crawl(id) reattaches to a crawl started elsewhere.

A one-shot crawl expires after 30 days. If the site is worth watching:

project = job.keep(name="Docs", schedule="weekly")

A webhook= in the options ({"url", "events", "metadata", "include"}) is told about crawl.started, crawl.page (fifty pages a message) and crawl.completed; its signing secret comes back once as job.webhook_secret. With "include": ["markdown"] the crawl.page messages carry each page's markdown too, up to about 1 MB a message: a page that does not fit, or was not stored, comes as "markdown": null with markdownOmitted (too_large or not_stored) and a contentUrl, an API path read with your key (job.page(url) reads the same). It needs crawl.page among the events, as it is when events is left out.

Mapping a site

for u in arc.map("https://docs.example.com"):

print(u["url"], u["lastmod"])

details = arc.map_details("https://www.gov.uk/", search="visa", limit=500) print(details["totals"], details["creditsUsed"]) # {'files': 29, 'urls': 508431, …} 29

A map costs one credit per sitemap file read — most sites are one file.

Searching the web

out = arc.web_search(

"python packaging guide", limit=5, # 1 to 10 results freshness="month", # hour | day | week | month | year include_domains=["python.org"], # exclude_domains= too; an exclude wins scrape=True, # each result's page as markdown as well )

if out["status"] == "blocked": # every engine refused; nothing was charged print(out["attempts"]) else: for hit in out["data"]: print(hit["position"], hit["title"], hit["url"], hit["snippet"]) if hit.get("page"): print(hit["page"].get("markdown", "")[:200]) print(out["engine"], out["cached"], out["creditsUsed"])

again = arc.get_search(out["id"]) # a search started earlier, by id for s in arc.searches(q="python"): # the workspace's searches, newest first print(s["id"], s["query"], s["status"], s["resultCount"], s["creditsUsed"])

news = arc.web_search("python release", news=True, freshness="day") # the engines' news results for hit in news["data"]: print(hit["publisher"], hit["age"], hit["title"]) # who published it, and how long ago ('20h') more = arc.web_search("python packaging guide", page=2) # results 11-20

web_search waits for the results and returns the whole envelope, the hits under data. A search is queued, running, done, blocked or error: blocked — every engine refused — is returned, not raised; error raises MeshArcError. A search that scrapes stays running until its pages land. scrape= also takes a dict, sent as given ({"formats": ["markdown", "links"], "maxCredits": 20}); country= and lang= say where and in what language to search; wait=False returns at once, and timeout_s is how long the API holds the request (60 s by default, 120 at most) before the client polls.

news=True searches the engines' news results rather than the web's (one or the other per search); each news hit also carries publisher and age, as the engine put it ("20h"). page= is which results page, 1 to 10: page 2 is results 11–20, and each page is its own search with its own charge. `news=` and `page=` need an API with those features: they are on the API's feature branch, not yet on mesharc.dev.

A search needs a key that can write, and it spends credits. The results page costs the engine that read it; a results page every engine refused is free. An equal search — same query, news, page, country, lang, freshness and domains — within an hour of a finished one (ten minutes for news) comes from the cache (cached is true) with no charge for the results page. Scraped pages are charged, cached or not.

arc.search(project_id, q) is something else: it searches the pages a project has stored, not the web (see below).

Asking the agent

The agent route (`/agent`) is not live on mesharc.dev yet; web search is. The client and the MCP tools are ready for it. The agent's webhook, connection_id, continue_() and field_sources need an API with those features too: they are on the API's feature branch, not yet on mesharc.dev.

The agent takes a question, searches the web, maps sites and reads pages on its own, and answers with the pages it used. Give it a schema and the answer comes back in that shape:

run = arc.agent(

"What does each plan on example.com cost per month?", urls=["https://example.com/pricing"], # pages to start from, up to 20; omit to let it search allowed_domains=["example.com"], # keep it to these sites, up to 20 schema={ # a JSON Schema of type object or array "type": "object", "properties": {"plans": {"type": "array", "items": {"type": "object", "properties": { "name": {"type": "string"}, "monthly": {"type": "number"}}}}}, }, max_credits=500, # the most the run may spend: 1 to 100,000, 2,000 by default max_steps=20, # the most steps it may take: 1 to 100, 40 by default )

out = run.wait() # blocks until it finishes; the envelope print(out["status"], out["creditsUsed"], out["steps"]) print(run.data) # {'plans': [...]}, matching the schema for src in run.sources: # the pages the answer rests on print(src["url"], src["title"]) print(run.field_sources) # {'plans[0].monthly': {'url': ..., 'pageId': ...}, ...}

agent returns an AgentRun at once, queued or running; the prompt is up to 10,000 characters. timeout_s= asks the API to hold the request for the answer (120 s at most). Without a schema the answer is {"text": ...}. field_sources says where each value of the answer came from: its path ("plans[0].monthly", or "[2].name" for a list answer) to {url, pageId}, a page the run read.

run = arc.agent(

"What does each plan on example.com cost per month?", webhook={"url": "https://hooks.example.com/mesharc", "events": ["agent.completed", "agent.failed"]}, connection_id="conn_...", # run on one of the workspace's own LLM connections ) print(run.webhook_secret) # once: the secre

Nur der Anfang wird gezeigt; den Rest findest du im Repo