Give your agent the open web, safely.
A native MCP server, per-key budgets, citations on every fetch, and the same eight endpoints your humans use. Your agents don't need a custom scraper; they need a contract that says "this is the web, here's your budget."
The hard parts, already solved.
Real Model Context Protocol. Tools, resources, prompts. Works with Claude Desktop, Cursor, VS Code, Windsurf, plus the OpenAI Agents SDK and Google ADK in Python.
Cap how many credits an agent can burn per session with <code>UJEEBU_BUDGET</code>. Hard stop at the limit. No nightmare bills from a runaway eval loop.
Every tool result includes source URL, fetch timestamp, credit cost. Your agent can ground its claims; you can audit every step.
<code>scrape</code>, <code>extract</code>, <code>ai_scraper</code>, <code>serp</code>, <code>markdown</code>, <code>chatgpt</code>, <code>gemini</code>, <code>account</code>. Full JSON Schema on each, so the agent picks the right tool the first time.
For long fetches, results stream into the agent's context as they arrive, so the model can reason on partial results before the full call returns.
Issue scoped sub-keys per agent or per session. Revoke instantly. Audit logs show every tool call with full request + response trace.
4 steps. One pipeline.
// claude_desktop_config.json
{
"mcpServers": {
"ujeebu": {
"command": "npx",
"args": ["-y", "@ujeebu/mcp"],
"env": {
"UJEEBU_KEY": "uj_live_...",
"UJEEBU_BUDGET": "5000"
}
}
}
}
// In Claude:
> Compare React Aria, Radix, Headless UI,
> and Reach UI on accessibility primitives.
🛠 ujeebu.serp({ q:"react aria vs radix" })
🛠 ujeebu.extract(url:"github.com/...") ×4
🛠 ujeebu.markdown(url:"docs/aria") ×4
// Agent reasons over the typed results,
// cites every claim, stops at 5000 credits.