dropscan-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DROPSCAN_TOKEN | Yes | Required. Dropscan personal access token (Bearer). | |
| DROPSCAN_ALLOW_WRITES | No | Set to '1'/'true' to enable write/action tools. Default: disabled. | |
| DROPSCAN_DOWNLOAD_DIR | No | Default directory for downloaded PDFs/ZIPs/images. Default: ~/Downloads. | ~/Downloads |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_scanboxesA | List all scanboxes on the account (GET /scanboxes). Read-only. |
| list_mailingsA | List mailings in a scanbox (GET /scanboxes/{id}/mailings). Read-only. Args: scanbox_id: Scanbox id (e.g. "12345"). current_status: Optional status filter. One of: received, scan_requested, scanned, destroy_requested, destroyed, forward_requested, forwarded. older_than: Optional mailing UUID cursor for pagination; returns mailings older than the given one. |
| get_mailingA | Get one mailing with its details/extracted content. Read-only. GET /scanboxes/{scanbox_id}/mailings/{uuid} |
| get_mailing_pdfB | Download a mailing's scanned PDF and save it to disk. Read-only. GET /scanboxes/{scanbox_id}/mailings/{uuid}/pdf Args: save_path: Absolute path to write the PDF to. Defaults to ~/Downloads/dropscan-.pdf (or DROPSCAN_DOWNLOAD_DIR). |
| get_mailing_zipB | Download a mailing's ZIP (individual PDFs) and save it. Read-only. GET /scanboxes/{scanbox_id}/mailings/{uuid}/zip |
| get_mailing_envelopeB | Download a mailing's envelope image (JPEG) and save it. Read-only. GET /scanboxes/{scanbox_id}/mailings/{uuid}/envelope |
| get_mailing_plaintextB | Get OCR plaintext of a mailing (first 5 documents). Read-only. GET /scanboxes/{scanbox_id}/mailings/{uuid}/plaintext |
| list_recipientsB | List recipients configured for a scanbox. Read-only. GET /scanboxes/{scanbox_id}/recipients |
| get_recipientC | Get one recipient of a scanbox. Read-only. GET /scanboxes/{scanbox_id}/recipients/{id} |
| get_forwarding_addressC | Get a forwarding address by id. Read-only. GET /forwarding_addresses/{id} |
| get_shipmentB | Get a shipment (physical forwarding batch) by id. Read-only. GET /shipments/{id} |
| list_webhook_rulesA | List all webhook rules on the account. Read-only. GET /webhook_rules |
| get_webhook_ruleB | Get one webhook rule by id. Read-only. GET /webhook_rules/{id} |
| request_mailing_actionA | Request a physical action on a mailing (scan / forward / destroy). ⚠️ AFFECTS THE REAL PRODUCTION ACCOUNT AND CANNOT BE UNDONE. "destroy" physically shreds the letter, it is gone for good. "forward" physically mails the letter to an address and incurs cost. Double-gated: requires DROPSCAN_ALLOW_WRITES=1 AND confirm=true. POST /scanboxes/{scanbox_id}/mailings/{mailing_uuid}/action_requests Args: action_type: One of "scan", "forward", "destroy". forwarding_address_id: Required when action_type="forward"; the id of a forwarding address (see create_forwarding_address / get_forwarding_address). forwarding_date: Required when action_type="forward"; ISO date (YYYY-MM-DD). confirm: Must be True to proceed. |
| cancel_mailing_actionA | Cancel a pending action request on a mailing. ⚠️ Changes the real production account. Cancellation windows apply (scan: 10 min, destroy: 60 min, forward: before the requested date, Berlin time). Double-gated: requires DROPSCAN_ALLOW_WRITES=1 AND confirm=true. DELETE /scanboxes/{scanbox_id}/mailings/{mailing_uuid}/action_requests/{id} |
| set_mailing_recipientB | Assign a recipient to a mailing. ⚠️ Changes the real production account. Double-gated: requires DROPSCAN_ALLOW_WRITES=1 AND confirm=true. PUT /scanboxes/{scanbox_id}/mailings/{mailing_uuid}/recipient |
| create_recipientA | Create a recipient on a scanbox. ⚠️ Changes the real production account. Double-gated: requires DROPSCAN_ALLOW_WRITES=1 AND confirm=true. POST /scanboxes/{scanbox_id}/recipients Args: type: "Person" or "Company". firstname, lastname: Required when type="Person". name: Required when type="Company". |
| create_forwarding_addressA | Create a forwarding address (used as a forward target). ⚠️ Changes the real production account. Double-gated: requires DROPSCAN_ALLOW_WRITES=1 AND confirm=true. POST /forwarding_addresses Args: country_code: 2-3 char ISO country code (e.g. "DE"). zip_code: Postal code (sent as "zip" in the request body). |
| create_webhook_ruleA | Create a webhook rule. ⚠️ Changes the real production account. Double-gated: requires DROPSCAN_ALLOW_WRITES=1 AND confirm=true. POST /webhook_rules Args: events: One or more of: mailing_received, scan_requested, mailing_scanned, mailing_archived, mailing_trashed, mailing_shredded, mailing_added_to_shipment, mailing_removed_from_shipment, shipment_sent, package_tracking_updated. |
| update_webhook_ruleA | Update a webhook rule. ⚠️ Changes the real production account. Double-gated: requires DROPSCAN_ALLOW_WRITES=1 AND confirm=true. PATCH /webhook_rules/{id} |
| delete_webhook_ruleA | Delete a webhook rule. ⚠️ Changes the real production account and cannot be undone. Double-gated: requires DROPSCAN_ALLOW_WRITES=1 AND confirm=true. DELETE /webhook_rules/{id} |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 21 tools
Each tool targets a distinct resource and action, with clear boundaries between scanboxes, mailings, recipients, forwarding addresses, webhook rules, and shipments. No overlapping purposes.
All tool names follow a consistent verb_noun pattern in snake_case, making the set predictable and easy to navigate.
21 tools is slightly high but justified by the multi-entity domain (scanboxes, mailings, recipients, etc.). Each tool serves a specific purpose, though a few could be merged or removed.
Core CRUD operations are covered for most entities, but missing delete/update for recipients and forwarding addresses. The essential workflows (receive, scan, forward, destroy, manage webhooks) are well-supported.