MCP Server

Call ByteKit web capture as a native tool from Claude, Cursor, and any MCP-compatible agent — hosted over HTTP or run locally over stdio.

The ByteKit MCP server exposes scraping, search, screenshots, and account lookups as Model Context Protocol tools. Your agent calls scrape_url or screenshot_url the same way it calls any other tool — no wrapper to write, no headless browser to manage.

There are two ways to connect: a hosted HTTP endpoint (nothing to install) and a local stdio server (npx @hunt-labs/bytekit-mcp).

Authentication

Both paths authenticate with a ByteKit API key. Sign up at app.bytekit.com and create a key (prefixed sk_live_). The local server reads it from the BYTEKIT_API_KEY environment variable (or the --api-key flag); the hosted endpoint takes it as a bearer token.

Option 1 — Hosted HTTP (no install)

Point any MCP client that speaks the Streamable HTTP transport at:

https://api.bytekit.com/mcp

Send your API key as a bearer token. Example client config (Claude Desktop, Cursor, and most hosts accept this shape):

{
  "mcpServers": {
    "bytekit": {
      "url": "https://api.bytekit.com/mcp",
      "headers": {
        "Authorization": "Bearer $BYTEKIT_API_KEY"
      }
    }
  }
}

Option 2 — Local stdio (npx)

Run the server as a local subprocess over stdio. Nothing to install globally — npx fetches it on demand:

npx @hunt-labs/bytekit-mcp --api-key $BYTEKIT_API_KEY

Or set the key in your environment and omit the flag:

export BYTEKIT_API_KEY=sk_live_xxx
npx @hunt-labs/bytekit-mcp

Client config for a stdio server:

{
  "mcpServers": {
    "bytekit": {
      "command": "npx",
      "args": ["-y", "@hunt-labs/bytekit-mcp"],
      "env": {
        "BYTEKIT_API_KEY": "sk_live_xxx"
      }
    }
  }
}

API-key resolution order

The local server resolves the key in this order, so a legacy setup keeps working:

  1. --api-key <key> flag
  2. BYTEKIT_API_KEY environment variable
  3. RAPIDCRAWL_API_KEY environment variable (legacy fallback)

Tool inventory

ToolWhat it does
scrape_urlFetch a URL and return HTML, clean markdown, links, or images.
web_searchRun a web search and return ranked organic results.
screenshot_urlCapture a screenshot of a page (desktop/mobile, PNG/JPEG).
get_resultFetch a previously created screenshot by id.
get_accountReturn account details, plan, and current usage/quota.
list_docsList every page in the bundled ByteKit documentation.
search_docsSearch the bundled documentation.
get_docFetch the full markdown of one documentation page.

The server also exposes resources (bytekit://account, bytekit://screenshot/{id}) and prompts (summarize_webpage, extract_structured_data, research_topic) that MCP hosts can surface directly.

Next steps