Skip to main content

botrun-default-mcp

A stdio-based MCP (Model Context Protocol) server providing PDF analysis, image analysis, web search, web scraping, and visualization tools. Designed to run via uvx with no server deployment needed.

Tools

Tool Description
chat_with_pdf Analyze local PDF files with Gemini via Botrun Gateway (supports large files via chunked parallel processing)
chat_with_imgs Analyze local image files with Gemini Vision via Botrun Gateway
web_search Search the web via Perplexity API (supports OpenRouter)
scrape Scrape web pages to Markdown via ScraperAPI
create_html_page Generate HTML pages and save to local files
create_plotly_chart Generate interactive Plotly charts as local HTML files
create_mermaid_diagram Generate Mermaid diagrams as local HTML files
current_date_time Get current date/time in Asia/Taipei timezone

Installation

uvx botrun-default-mcp

Or install from source:

git clone https://github.com/sebastian-hsu/botrun_default_mcp_uv.git
cd botrun_default_mcp_uv
uv sync

Configuration

The server automatically loads environment variables from a .env file in the working directory. Just point cwd to the directory containing your .env file — no need to pass env in the MCP config.

LLM routing (chat_with_pdf / chat_with_imgs)

Both tools call Gemini. Which endpoint they use is decided by environment variables (no runtime fallback):

  1. BOTRUN_GATE_BASE_URL + BOTRUN_GATE_API_KEY both set → requests go through Botrun Gateway's /gemini/* passthrough (base_url = ${BOTRUN_GATE_BASE_URL}/gemini, auth via Authorization: Bearer). Vertex runs behind the gateway, so no GCP service account is needed. This is the recommended setup.
  2. Otherwise → direct Vertex AI with the GOOGLE_APPLICATION_CREDENTIALS_FOR_FASTAPI service account (project scoop-386004, region us-central1).
  3. Neither → the tools fail fast with a message naming both options.

Models available through the gateway passthrough are the Vertex gemini-2.5-* family (gemini-2.5-flash, gemini-2.5-pro, gemini-2.5-flash-lite). Aliases such as gemini-flash-latest do not exist there and return 404.

Claude Desktop / Claude Code

Add to your MCP settings (claude_desktop_config.json or .claude.json):

{
  "mcpServers": {
    "botrun-default-mcp": {
      "command": "uvx",
      "args": ["botrun-default-mcp"],
      "cwd": "/path/to/directory/with/dotenv"
    }
  }
}

LangGraph

{
  "botrun-default-mcp": {
    "transport": "stdio",
    "command": "/path/to/uvx",
    "args": ["botrun-default-mcp"],
    "cwd": "/path/to/directory/with/dotenv"
  }
}

.env file example

BOTRUN_GATE_BASE_URL=https://gate.botrun.ai
BOTRUN_GATE_API_KEY=br-your-key-here
OPENROUTER_API_KEY=sk-or-v1-xxx
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
SCRAPERAPI_API_KEY=your-scraperapi-key

Environment Variables

Variable Required Description
BOTRUN_GATE_BASE_URL Yes* (for PDF/image tools) Botrun Gateway base URL, e.g. https://gate.botrun.ai
BOTRUN_GATE_API_KEY Yes* (for PDF/image tools) Gateway br- API key (sent as Authorization: Bearer)
GOOGLE_APPLICATION_CREDENTIALS_FOR_FASTAPI Yes* (only without gateway) GCP service account JSON key for direct Vertex AI
PPLX_API_KEY Yes† (for web_search) Perplexity API key
OPENROUTER_API_KEY Yes† (for web_search) OpenRouter API key (alternative to PPLX_API_KEY)
OPENROUTER_BASE_URL With OpenRouter OpenRouter base URL
SCRAPERAPI_API_KEY Yes (for scrape) ScraperAPI key
PDF_ANALYZER_MODEL No Gemini model for PDF analysis (default: gemini-2.5-flash); comma-separated list = fallback order
IMG_ANALYZER_MODEL No Gemini model for image analysis (default: gemini-2.5-flash); comma-separated list = fallback order

* Either BOTRUN_GATE_BASE_URL + BOTRUN_GATE_API_KEY (recommended) or GOOGLE_APPLICATION_CREDENTIALS_FOR_FASTAPI is required for chat_with_pdf / chat_with_imgs.

† Either PPLX_API_KEY or OPENROUTER_API_KEY + OPENROUTER_BASE_URL is required for web_search.

Development

# Setup
uv sync

# Run tests
uv run pytest tests/ -v

# Build
uv build

# Publish to PyPI
cd sh && bash seba_pypi.sh

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

botrun_default_mcp-0.5.0.tar.gz (83.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

botrun_default_mcp-0.5.0-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

Details for the file botrun_default_mcp-0.5.0.tar.gz.

File metadata

  • Download URL: botrun_default_mcp-0.5.0.tar.gz
  • Upload date:
  • Size: 83.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for botrun_default_mcp-0.5.0.tar.gz
Algorithm Hash digest
SHA256 b499cfb130a41ec53a1fc8393154b5d78f12c32d8fe5a75079da0805fc6da258
MD5 c073405cee19c90afb96175434b3dd8c
BLAKE2b-256 9a70e83e64cf6b4fbc02a5002a40d59b299bdf8a03d45ba3957b00b169c0fcc3

See more details on using hashes here.

File details

Details for the file botrun_default_mcp-0.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for botrun_default_mcp-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bf182daf9fd6da6e530bd948ac9beadd0ad16d29d788d4eb7cccb67daa19ec10
MD5 fbec8017725490630856b4957319ab0c
BLAKE2b-256 5ae3103a0e0c560ab2666f067bed3748c0e9a80faa69fb9ceb255a26e374945d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 files

0.4.1

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page