Submit

Faxdrop Mcp

@klodr

Send real faxes from any MCP-enabled AI assistant. Wraps the FaxDrop API (PDF/DOCX/JPG/PNG, international numbers, status polling) with rate limits, dry-run mode, audit logging, outbox jail, and 3-layer phone gate (TYPE → COUNTRY → per-number pairing).
Overview

faxdrop-mcp

Send real faxes from any MCP-enabled AI assistant. Wraps the FaxDrop HTTP API. A Model Context Protocol (MCP) server that lets AI assistants (Claude, Cursor, Continue, OpenClaw…) send real faxes through the FaxDrop API.

Why this MCP?

Faxing is still required by US healthcare, government forms, and a long tail of legal/financial workflows. FaxDrop is a hosted fax service with a clean HTTP API and a free tier (2 faxes/month). This MCP exposes it to LLMs with the safeguards an agent platform actually needs.

Features

  • Input validation — absolute-path + extension + 10 MB cap on the upload (all before the file is opened); E.164 regex on the fax number; no SSRF, no path traversal.
  • TOCTOU-safe read — file descriptor pinned with fs.open(), size enforced continuously while reading.
  • No secret leakage — error objects strip the response body; audit log redacts apiKey/authorization/password/etc.
  • Dry-run + audit logFAXDROP_MCP_DRY_RUN=true to test prompts without sending; FAXDROP_MCP_AUDIT_LOG=/abs/path for a JSONL trail (mode 0o600).
  • 3-layer phone gate — TYPE → COUNTRY → per-number pairing whitelist.
  • Verifiable releases — Sigstore-signed + SLSA in-toto attestation + npm provenance.

Installation

npm install -g faxdrop-mcp

Or directly via npx:

npx faxdrop-mcp

Configuration

The server reads FAXDROP_API_KEY from the environment. Get your key at faxdrop.com/account.

{
  "mcpServers": {
    "faxdrop": {
      "command": "npx",
      "args": ["-y", "faxdrop-mcp"],
      "env": {
        "FAXDROP_API_KEY": "fd_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}

Tools (3)

  • faxdrop_send_fax — send a fax from a local document (PDF/DOCX/JPG/PNG, ≤10 MB) to an E.164 number.
  • faxdrop_pair_number — add a fax number to the paired whitelist (HITL approval).
  • faxdrop_get_fax_status — check delivery status of a previously sent fax.

License

MIT

Server Config

{
  "mcpServers": {
    "faxdrop": {
      "command": "npx",
      "args": [
        "-y",
        "faxdrop-mcp"
      ],
      "env": {
        "FAXDROP_API_KEY": "fd_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}
© 2025 MCP.so. All rights reserved.

Build with ShipAny.