WellMarked
About
Convert any URL to clean Markdown! Save up to >99% on tokens and memory compared to raw HTML!
Details
- Author
- wellmarkedapi
- Categories
- Web Scraping
Jump to
Setup
Install WellMarked in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/wellmarkedapi/MCP
Follow the installation instructions in the repository README, then restart your MCP client.
An extremely lightweight standalone MCP server for token-efficient web scraping automation for AI agents, designed to run locally or on servers.
~98% smaller webpage snapshots than raw HTML.
The officialModel Context Protocol (MCP)server forWellMarked.io. Give your AI agents the ability to turn any URL into clean Markdown, bulk-extract batches of pages, crawl entire sites, and search the web, all from inside Claude Desktop, Claude Code, Cursor, or any MCP host. This MCP also supports local setups.
It's a thin adapter over the officialwellmarkedJavaScript SDK, so it inherits the SDK's auth, typed errors, retry/back-off hints, and polymorphic job polling.
πMCP documentationΒ·API referenceΒ·Errors
extract,bulk,crawl, andsearchall accept aformat(markdown/json/chunks/html/links) and per-request compliance overrides (allow_domains/deny_patterns/respect_robots);extract,bulk, andcrawlalso accept aretrycount for target timeouts, andcrawlamax_pagesbudget.
Two of those are gated regardless of which tool carries them:render_jsand thejson/chunksformats need a Pro, Growth, or Enterprise plan. So a Free key can callextract,bulk, andsearch, but asking any of them to render JavaScript or return typed blocks comes back asplan_not_supported.
Every tool returns its payload as JSON in the result's text block. An agent readsstatus,completed,ok, ortokensSavedas real fields instead of pattern-matching them out of a rendered sentence:
{ "kind": "crawl", "jobId": "job_abc", "status": "done", "total": 12, "completed": 12, "done": true, "truncated": false, "results": [ { "url": "https://example.com/a", "depth": 1, "ok": true, "markdown": "# A" }, { "url": "https://example.com/b", "depth": 1, "ok": false, "error": "target_timeout" } ] }
There is no prose rendering of the result. A payload made of key-value pairs travels as key-value pairs, and flattening it into a document is exactly the parsing burden this server exists to remove.
The payload rides incontent, and is deliberatelynotduplicated intostructuredContent. Hosts surfacecontentto the model and several ignorestructuredContententirely, so a payload sent only there is invisible to the agent; sending it in both places doubles the tokens on every response.
JSON-as-text is also the most structured shapecontentcan carry. MCP content blocks are a closed set βtext,image,audio,resource_link,resourceβ and none of them holds a raw object. An off-spec block type such asapplication/jsonfails schema validation in the client and kills the whole call, so it is not an option.
Errors are the exception and carry real text β a failure has no typed shape beyond the API's stable errorcode, which is already in the message.
Not exposed as tools:API-key rotation (/keys/rotate) and webhook-secret rotation (/webhook/rotate). Both are destructive and irreversible β the old credential dies the instant the call returns, with no recovery flow β which is the wrong shape for an autonomous agent. Rotate from the dashboard or the SDK.
There are two ways to connect, depending on your host:
Add WellMarked as acustom connectorand point it at:
https://mcp.wellmarked.io/mcpalso still works and always will β connectors added before the root became canonical keep functioning unchanged. New ones should use the root.
Your host discovers the authorization server automatically (via/.well-known/oauth-protected-resource), walks you through signing in to WellMarked and approving the connection, and receives a scoped, expiring token β no key to paste. The connector canextract,bulk,crawl, andsearch; it cannot mint or rotate credentials.
InClaude.ai: Settings β Connectors β Add custom connector β paste the URL above β follow the sign-in and consent prompts.
The remote server speaks MCP over Streamable HTTP and, under the hood, calls the same tools as the local server β the tool surface is identical (enforced by the parity test intest/).
Add toclaude_desktop_config.json(Settings β Developer β Edit Config):
{ "mcpServers": { "wellmarked": { "command": "npx", "args": ["-y", "wellmarked-mcp"], "env": { "WELLMARKED_API_KEY": "wm_your_key_here" } } } }
claude mcp add wellmarked --env WELLMARKED_API_KEY=wm_your_key_here -- npx -y wellmarked-mcp
Any host that launches MCP servers over stdio works β point it atnpx -y wellmarked-mcpwithWELLMARKED_API_KEYin the environment.
Remote (Streamable HTTP) server β only if you self-host it (npm run start:http):
The remote server takesnoWELLMARKED_API_KEYβ each request authenticates with its own OAuth bearer token.
npm install npm run build # compile TypeScript to dist/ npm start # run the compiled server on stdio npm run start:http # OR run the remote (Streamable HTTP) server npm test # tool-list parity across both entry points # Inspect the stdio server interactively with the MCP Inspector: WELLMARKED_API_KEY=wm_... npx @modelcontextprotocol/inspector node dist/index.js
Enable AI agents to get structured data from unstructured web with AgentQL.
Web scraping, crawling, and change detection with AI
Official Apify MCP server for AI agents to run Actors, extract website data, and automate web scraping and crawling workflows.
1GB Free Trial, World's Leading Proxy Service Platform, Efficient Data Collection
Discover, extract, and interact with the web - one interface powering automated access across the public internet.
Automate browser interactions in the cloud (e.g. web navigation, data extraction, form filling, and more)
Easy web data access. Simplified retrieval of information from websites and online sources.
Adds powerful web scraping and search capabilities to LLM clients like Cursor and Claude.
Real-time web data, structured for agents
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



