Skip to main content
Glama
klodr

faxdrop-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
FAXDROP_API_KEYYesYour FaxDrop API key, obtained from faxdrop.com/account (Developer API → Generate Key). Keys look like 'fd_live_<32 hex>'.
FAXDROP_MCP_DRY_RUNNoEnable dry run mode to simulate sending without calling FaxDrop. Set to 'true' to enable. Default is off.
FAXDROP_MCP_AUDIT_LOGNoPath to an audit log file for append-only JSON Lines logging. Sensitive args are redacted. Default is off.
FAXDROP_MCP_RATE_LIMIT_sendNoDaily rate limit for sending faxes, e.g., '100/day'. Use 'N/minute', 'N/hour', 'N/day', or 'N/week'. Default is '100/day'.
FAXDROP_MCP_RATE_LIMIT_DISABLENoDisable rate limit for testing. Set to 'true' to turn off. Default is off.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
faxdrop_send_faxA

Send a real fax via FaxDrop.

USE WHEN: user needs to fax a document (PDF, DOCX, JPEG, PNG ≤10MB) to a fax number — medical records, legal forms, government submissions, recipients who only accept fax.

DO NOT USE: for digital delivery (email, sftp), for files outside the outbox, for non-fax numbers — the 3-layer phone gate (TYPE → COUNTRY → per-number policy) rejects mobile/landline/premium.

SIDE EFFECTS: charges FaxDrop balance (or consumes free credits + adds branded cover on free tier), creates an audit log entry, allocates a fax ID server-side. ALWAYS confirm recipient + file + cover with the user before calling.

FILE LOCATION: document must live inside the outbox (default ~/FaxOutbox/, override via FAXDROP_MCP_WORK_DIR). Files outside are rejected — ask the user to copy in first.

RETURNS: { faxId, status: "queued", ... } — poll with faxdrop_get_fax_status.

faxdrop_pair_numberA

Add a fax number to the per-recipient whitelist (paired.json).

USE WHEN: server runs with FAXDROP_MCP_NUMBER_GATE=pairing and the user wants to pre-approve a recurring recipient (clinic, lawyer, supplier) so future faxdrop_send_fax calls skip the per-number confirmation step.

DO NOT USE: when gate mode is open (no whitelist needed) or closed (whitelist edited out-of-band only — pairing rejected). For one-off faxes, skip pairing and call faxdrop_send_fax directly.

SIDE EFFECTS: writes to ~/.faxdrop-mcp/paired.json (or $FAXDROP_MCP_STATE_DIR/paired.json). Persistent across runs. ALWAYS confirm with the user — paired numbers can be faxed without further per-number approval.

VALIDATION: TYPE + COUNTRY checks still apply (no bypass). Mobile/landline/premium numbers are rejected even at pairing time.

RETURNS: { paired, country, type }.

faxdrop_get_fax_statusA

Check the delivery status of a previously sent fax.

USE WHEN: polling for the outcome of a fax sent via faxdrop_send_fax. Status values: queued | sending | delivered | failed | partial.

DO NOT USE: for faxes sent outside this MCP (no provenance — server returns 404). Once status is delivered, failed, or partial, STOP polling — these are terminal.

SIDE EFFECTS: each non-cached call hits the FaxDrop API and counts toward its per-key rate limits (no monetary cost). Terminal results are cached process-wide.

POLLING STRATEGY: every ~5s for the first 2 min, then every ~30s up to 10 min. Most US faxes complete in <90s.

RETURNS: provider status object + optional _cached: true flag.

Prompts

Interactive templates invoked by user choice

NameDescription
send-letter-faxSend a PDF/DOCX/JPG/PNG already placed in the outbox to a fax number and poll delivery status until terminal.
fax-history-summaryGiven a set of FaxDrop IDs, fetch their current status and return a concise per-fax summary.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/klodr/faxdrop-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server