Uwae
FreeNot checkedFetch any URL to clean markdown for AI agents — Rust fast path, zero-dep MCP server, agent skill. 13W/25T/0L vs Botasaurus on measured corpus (E17).
About
Fetch any URL to clean markdown for AI agents — Rust fast path, zero-dep MCP server, agent skill. 13W/25T/0L vs Botasaurus on measured corpus (E17).
README
Fetch any URL and get clean markdown — hundreds of tokens instead of tens of thousands of raw HTML. Built for coding agents that need to read the web.
# one line, no install
npx skills add username9999-sys/uwae --skill uwae -g
Then in your agent: "what does https://example.com say?" — the agent fetches it as markdown.
Three ways to fetch
| Path | Command | When |
|---|---|---|
| Rust binary (fastest) | uwae-fetch <url> [--json] |
always, if you have cargo |
| MCP server (0 deps) | python3 mcp/server.py |
any harness with MCP, zero pip installs |
| Python engine (full pipeline) | uwae acquire <url> --json |
crawls, sessions, browser escalation, retries |
1. Rust binary
cargo install --git https://github.com/username9999-sys/uwae --root ~/.cargo uwae-fetch
uwae-fetch https://example.com # markdown on stdout
uwae-fetch https://example.com --json # {url, final_url, status, title, markdown, bytes}
Single ~6 MB binary (dynamically linked against system libc), rustls TLS, 15s timeout, 5 MB cap by default. Built in Rust — same trick as photocraft (75k stars) and anydoc (23k stars).
2. MCP server (zero Python dependencies)
mcp/server.py is stdlib-only (urllib + html.parser). One tool: fetch_url(url, max_bytes?).
Claude Code / Codex MCP config:
{
"mcpServers": {
"uwae": {
"command": "python3",
"args": ["/path/to/uwae/mcp/server.py"]
}
}
}
3. Python engine (the full UWAE)
The artifact-first engine underneath: durable jobs, retry budget, failure isolation (one hanging URL never sinks the batch), browser escalation, session recovery.
pip install -e .
uwae acquire https://example.com --json
uwae crawl https://example.com --max-urls 50 --concurrency 4
Why this exists (measured, not marketed)
The Python engine was benchmarked head-to-head against Botasaurus on identical targets, device conditions, and run counts:
Corpus verdict (E17, 41 comparison instances — read from docs/benchmark/engine-results-e17.json) |
|
|---|---|
| UWAE wins | 13 |
| Ties | 28 |
| Botasaurus wins | 0 |
Sharpest measured gaps: cause diagnosis 210/210 correct vs 0/210 (precision = recall = 1.0 vs 0.0); DNS failure reaches a terminal classified outcome vs 4–5 unbounded retry cycles. Full evidence in docs/benchmark/ (E14–E22, ADR-019…ADR-027).
Honest caveats, also measured: Python peak allocation per run is 3.04–12.67 MB vs 0.83–4.07 MB, and POST median latency 193–250 ms vs 31–63 ms. That is exactly why the Rust binary is the fast path for single fetches.
Repo layout
uwae/
├── fetcher/ # Rust binary: uwae-fetch <url> → markdown
├── mcp/server.py # stdlib-only MCP server, tool: fetch_url
├── skills/uwae/ # Agent Skill (npx skills add ... --skill uwae)
├── src/ # Python engine (pip install -e .)
├── tests/ # pytest suite
└── docs/benchmark/ # E14–E22 differential evidence vs Botasaurus
License
MIT — see LICENSE.
Installing Uwae
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/username9999-sys/uwaeFAQ
Is Uwae MCP free?
Yes, Uwae MCP is free — one-click install via Unyly at no cost.
Does Uwae need an API key?
No, Uwae runs without API keys or environment variables.
Is Uwae hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Uwae in Claude Desktop, Claude Code or Cursor?
Open Uwae on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Opencode Omniroute Plugin
OpenCode plugin for the OmniRoute AI Gateway. Drives dynamic model discovery, /connect auth flow, and multi-instance OmniRoute providers via the official @openc
by GitHub ActionsRoblox Studio
Enables AI coding tools to control Roblox Studio for workspace exploration, instance manipulation, and script management. It provides tools for playtesting, sce
by paralovAntigravity Drawio
MCP server that enables AI assistants to create, parse, render, and validate Draw.io diagrams programmatically.
by S-SUJAN-SFetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzMCP-Agent
A simple, composable framework to build agents using Model Context Protocol by [LastMile AI](https://www.lastmileai.dev)
by lastmile-aiSpring AI MCP Client
Provides auto-configuration for MCP client functionality in Spring Boot applications.
mcp.natoma.ai
A Hosted MCP Platform to discover, install, manage and deploy MCP servers by [Natoma Labs](https://www.natoma.ai)
Compare Uwae with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
