Playground Sign in Start free

MCP Setup Guide

Ujeebu ships a native Model Context Protocol server that exposes every endpoint as a typed tool. Plug it into any MCP-compatible host and your agent gains web access in under a minute.

TIP — Skip the docs, use the wizard.

The fastest path is the interactive setup wizard at /mcp. It pre-fills your API key in every config block, gives Cursor and VS Code one-click install buttons, and updates every snippet live as you type. This page covers the same ground in long form for reference and bookmarking.

What you get

One tool per Ujeebu endpoint, every one typed with a full JSON Schema so the agent picks the right one and validates parameters before the call:

Tool What it does
scrape Render a URL with JS execution. Also takes screenshot=true or pdf=true for full-page captures.
extract Clean extraction: article, product, listing, or any page type. Detects automatically.
ai_scraper Extract structured data from any page with a natural-language prompt or JSON schema.
serp Google search results: organic, ads, news, images, maps.
markdown Convert any page to clean, LLM-optimized markdown.
chatgpt Pass a URL plus a prompt; the page goes to ChatGPT and the model's reply comes back.
gemini Same as chatgpt, routed through Gemini.
account Plan, quota, credits used, balance, and next billing date. Useful for budget-aware agents.

Requirements

  • An MCP-compatible host (see supported hosts below).
  • Node.js 18+ on the machine running the agent (we ship via npx).
  • An Ujeebu API key. Sign up free if you don't have one — 5,000 credits, no card.

The one config block

Every host takes essentially the same JSON. The npm package handles the heavy lifting; the host config just tells your agent how to launch it.

{
  "mcpServers": {
    "ujeebu": {
      "command": "npx",
      "args":    ["-y", "@ujeebu/mcp"],
      "env":     { "UJEEBU_KEY": "uj_live_..." }
    }
  }
}

Replace uj_live_... with your actual key from your dashboard. Some hosts use a slightly different shape for the top-level key — details per host below.

Supported hosts

Claude Desktop

Config file location

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Paste the JSON block above, save the file, then fully quit and reopen Claude Desktop. The tools appear under the hammer icon in the chat input.

Cursor

Config file location

  • Global: ~/.cursor/mcp.json
  • Per-project: .cursor/mcp.json

Same JSON shape as Claude Desktop. After saving, reload Cursor.

TIP — One-click install.

The wizard at /mcp generates a cursor://anysphere.cursor-deeplink/mcp/install?... URL that adds the server in one click. Faster than editing files.

VS Code (1.95+)

Config file location

  • User-level: ~/.vscode/mcp.json
  • Workspace: .vscode/mcp.json (commit this if your team shares the config)

VS Code uses servers instead of mcpServers, and the server entry needs a type:

{
  "servers": {
    "ujeebu": {
      "type":    "stdio",
      "command": "npx",
      "args":    ["-y", "@ujeebu/mcp"],
      "env":     { "UJEEBU_KEY": "uj_live_..." }
    }
  }
}

The wizard generates a vscode:mcp/install?... deep-link for one-click install.

Windsurf

Config file location

~/.codeium/windsurf/mcp_config.json

Same shape as Claude Desktop / Cursor. After saving, reload Windsurf (Cmd-Shift-P → "Reload Window").

OpenAI Agents SDK

Drop this snippet into your Python agent script. Tools are auto-discovered:

from agents import Agent, Runner
from agents.mcp import MCPServerStdio

async def main():
    async with MCPServerStdio(
        name="ujeebu",
        params={
            "command": "npx",
            "args":    ["-y", "@ujeebu/mcp"],
            "env":     {"UJEEBU_KEY": "uj_live_..."},
        },
    ) as ujeebu:
        agent = Agent(
            name="researcher",
            instructions="Use web tools to answer accurately.",
            mcp_servers=[ujeebu],
        )
        result = await Runner.run(agent, "Find the top React libs by stars.")
        print(result.final_output)

Install the SDK with pip install openai-agents.

Google Agent Development Kit (ADK)

The ADK wraps MCP via MCPToolset. Works with Gemini, Vertex, or any other model the ADK supports.

from google.adk.agents import Agent
from google.adk.tools.mcp_tool import MCPToolset, StdioConnectionParams
from mcp import StdioServerParameters

ujeebu = MCPToolset(
    connection_params=StdioConnectionParams(
        server_params=StdioServerParameters(
            command="npx",
            args=["-y", "@ujeebu/mcp"],
            env={"UJEEBU_KEY": "uj_live_..."},
        ),
    ),
)

agent = Agent(
    name="researcher",
    model="gemini-2.5-pro",
    instruction="Use web tools to answer accurately.",
    tools=[ujeebu],
)

Install with pip install google-adk.

Custom MCP client

Any host that speaks stdio MCP works. Launch:

npx -y @ujeebu/mcp

With UJEEBU_KEY in the spawned process's environment. The server speaks the standard MCP protocol over stdin/stdout — no special wiring required.

Per-key budgets

Set a per-session credit cap so a runaway eval loop can't drain your account. Add UJEEBU_BUDGET alongside UJEEBU_KEY:

"env": {
  "UJEEBU_KEY":    "uj_live_...",
  "UJEEBU_BUDGET": "500"
}

The server tracks credits across all tool calls in the session and refuses further requests once the budget is exhausted. Useful for evals, demos, and agent-side cost controls.

Verifying it works

Once installed, ask your agent:

Use the Ujeebu scrape tool to fetch https://example.com and show me the title.

If the tool fires and returns the page title, you're connected. If the agent says it doesn't have web tools, the config didn't load — check the host's MCP logs (usually under the host's settings or developer panel).

Troubleshooting

Agent doesn't see the tools. Confirm the host fully reloaded after editing the config (most hosts only read MCP config at startup). For Claude Desktop, fully quit — closing the window isn't enough.

npx not found. Install Node.js 18+ from nodejs.org and make sure npx is on your PATH.

UJEEBU_KEY missing or invalid. The key starts with uj_live_. Copy-paste it from your dashboard exactly — no trailing whitespace, no quotes around it in the JSON value beyond what the format already requires.

Tool calls return 429. You've hit a rate limit or budget cap. Check usage in your dashboard.

Using DeepSeek, Kimi, Qwen, or other open-source models

The MCP server is model-agnostic — any agent framework that can connect to MCP can use it, regardless of which LLM is doing the reasoning. The easiest path for non-Anthropic / non-OpenAI models is the OpenAI Agents SDK with the provider's OpenAI-compatible endpoint:

from openai import AsyncOpenAI
from agents import Agent, Runner, OpenAIChatCompletionsModel, set_default_openai_client
from agents.mcp import MCPServerStdio

# Point the OpenAI client at any OpenAI-compatible provider:
#   DeepSeek:  https://api.deepseek.com/v1
#   Kimi:      https://api.moonshot.cn/v1
#   Qwen:      https://dashscope.aliyuncs.com/compatible-mode/v1
#   Groq:      https://api.groq.com/openai/v1
#   vLLM/Ollama: http://localhost:8000/v1
client = AsyncOpenAI(
    base_url="https://api.deepseek.com/v1",
    api_key="<DEEPSEEK_API_KEY>",
)

async with MCPServerStdio(
    name="ujeebu",
    params={
        "command": "npx",
        "args":    ["-y", "@ujeebu/mcp"],
        "env":     {"UJEEBU_KEY": "<UJEEBU_KEY>"},
    },
) as ujeebu:
    agent = Agent(
        name="researcher",
        model=OpenAIChatCompletionsModel(model="deepseek-chat", openai_client=client),
        instructions="Use web tools to answer accurately.",
        mcp_servers=[ujeebu],
    )
    result = await Runner.run(agent, "Find the top React libs by stars.")
    print(result.final_output)

Same shape works for LangChain (langchain-mcp-adapters) and LlamaIndex (llama-index-tools-mcp) — the MCP server config is identical; only the framework changes.

TIP — Local models too.

The same pattern works for vLLM, Ollama, LiteLLM, or any other OpenAI-API-compatible serving layer. The MCP server is purely a tool surface; the model can be anywhere.

What's next

  • The interactive setup wizard handles the prefill-and-paste flow for you, including one-click installers for Cursor and VS Code.
  • Browse the API reference to see what each tool returns in detail.
  • See the blog for agent-recipe walkthroughs (web research, IDE-side fetches, eval harnesses).