Bytefusedocs

Integrations

MCP server

Expose the Bytefuse document tools to AI agents — Claude Desktop, Cursor, Claude Code — over the Model Context Protocol. The agent calls tools with your API key, metered exactly like the REST API.

Overview

The MCP server is mounted separately at /mcp (not under /api/v1) and speaks JSON-RPC 2.0 over streamable-HTTP. Tool discovery is open; executing a tool needs an API key and a Pro-or-higher plan.

POSThttps://api.bytefuse.in/mcp

Connecting

Connect URLhttps://api.bytefuse.in/mcp
Transportstreamable-HTTP · JSON-RPC 2.0 (POST)
Protocol version2025-06-18
Server namedoctransform

Add it to an MCP client’s config:

MCP client config
{
  "mcpServers": {
    "doctransform": {
      "url": "https://api.bytefuse.in/mcp"
    }
  }
}

A plain GET /mcp returns a lightweight probe describing the server and transport; real traffic is a JSON-RPC POST (single message or a batch array).

Auth & plan gate

Authenticate with your API key as a bearer token or in X-API-Key:

Request header
Authorization: Bearer dt_live_xxxxxxxxxxxxxxxxxxxxxxxx
# or
X-API-Key: dt_live_xxxxxxxxxxxxxxxxxxxxxxxx
  • Discovery is anonymousinitialize, ping, tools/list, prompts/* and reading the tools catalog work with no key.
  • Executing a tool (tools/call) or reading account resources requires an API key — no/invalid key returns a JSON-RPC “authentication required” error.
  • Plan gatetools/call requires a Pro plan or higher; lower tiers get “MCP tool calls require the Pro plan or higher.”

Same metering as REST

Every tools/call runs through the same metering chokepoint as the REST API (tagged source="mcp") — identical credit costs, scopes, budgets and rate limits. The tool result includes a credits_charged field.

Tools

The tool list isn’t hardcoded — it’s generated from the shared tool registry (the same one behind the REST API and connectors), so tools/list tracks the live catalog. Every tool takes a file as either file_url (a public URL, fetched server-side, max 25 MB) or file_base64 (small files), plus its typed parameters. html_to_pdf takes html/url instead.

A tools/list entry
{
  "name": "compress_pdf",
  "description": "…(costs credits; operation 'pdf.compress').",
  "inputSchema": {
    "type": "object",
    "properties": {
      "file_url": { "type": "string" },
      "file_base64": { "type": "string" }
    }
  },
  "_meta": { "operation_key": "pdf.compress", "min_tier": "…" }
}

Methods & resources

Supported JSON-RPC methods: initialize, ping, tools/list, tools/call, resources/list, resources/read, prompts/list, prompts/get.

  • Resourcesusage://summary (your credit balance and plan; needs auth) and tools://catalog (tool names; anonymous).
  • Prompts — three curated flows: shrink_for_email, clean_contract, pdf_to_editable.