{"name":"io.github.iancollins27/mailsnail","slug":"iancollins27-mailsnail","title":null,"description":"Send USPS letters, postcards & certified mail from any agent. No signup; pay-per-piece via Stripe.","url":"https://mcp.market/server/iancollins27-mailsnail","rating":null,"grade":"B","score":78,"certified":false,"status":"active","category":"ecommerce","tags":["ecommerce","ai"],"presence":{"score":21,"stars":0,"forks":0,"downloads_week":33,"last_push_at":"2026-08-17T20:24:02.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/iancollins27/mailsnail","website":"https://mailsnail.dev","version":"0.6.0","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"mailsnail","version":"0.6.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Where to mail from: 'managed' (default, no signup, pay-per-piece via Stripe), 'click2mail' (BYO account), or 'lob' (BYO key).","isRequired":true,"default":"managed","name":"MAIL_PROVIDER"},{"description":"Hosted Mailsnail backend. Required when MAIL_PROVIDER=managed.","default":"https://api.mailsnail.dev","name":"MAIL_API_BASE_URL"},{"description":"Click2Mail account username. Required when MAIL_PROVIDER=click2mail.","name":"CLICK2MAIL_USERNAME"},{"description":"Click2Mail account password. Required when MAIL_PROVIDER=click2mail.","isSecret":true,"name":"CLICK2MAIL_PASSWORD"},{"description":"Lob API key. Required when MAIL_PROVIDER=lob. test_* is free; live_* actually mails.","isSecret":true,"name":"LOB_API_KEY"},{"description":"Set to '1' to actually mail in BYOK modes. Default '0' is dry-run.","default":"0","name":"MAIL_MCP_ALLOW_LIVE"},{"description":"Per-session estimated spend cap. Server refuses sends past this.","default":"25","name":"MAIL_MCP_SPEND_CAP_USD"}]}],"tools":[{"name":"cancel_letter","description":"Cancel a letter before it enters production. Cancellation windows are short and provider-specific.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_letter","description":"Fetch the status of a previously sent letter by id.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_letters","description":"List recent letters (Lob only — Click2Mail does not expose a list endpoint).","write_action":false,"price_micros":0,"input_schema":null},{"name":"preview_letter","description":"Generate a PROOF of a letter WITHOUT charging or mailing. Returns `proof_url` (a viewable PDF of exactly what will be printed and mailed, including the address cover sheet), the CASS-verified recipient address, the exact price, and a `draft_id`. Best practice: call this FIRST, show the user the proof_url and price, get explicit confirmation, then call send_letter with the returned draft_id + a pay","write_action":false,"price_micros":0,"input_schema":null},{"name":"send_letter","description":"Send a physical letter via USPS. RECOMMENDED FLOW: first call preview_letter, show the user the returned proof_url + price, get explicit confirmation, then call send_letter with the returned `draft_id` and a `payment_token` — this charges and mails exactly the proofed letter. You may also send one-shot by providing the full letter (to, from, and body_text or file_url) plus payment_token, without a","write_action":true,"price_micros":0,"input_schema":null},{"name":"send_postcard","description":"Send a physical postcard. Provide a public URL to a PDF (front + back combined for Click2Mail; separate front/back for Lob).","write_action":true,"price_micros":0,"input_schema":null},{"name":"verify_address","description":"Verify and normalize a US mailing address. Run this on user-provided addresses before sending mail.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":78,"grade":"B","scanned_at":"2026-09-25T21:44:41.889Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-25T21:44:41.845Z","components":{"code":{"score":25,"max":25,"notes":["3 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":12,"max":15,"notes":["last push 39 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"mailsnail","version":"0.6.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-07-14T03:53:24.963Z","repositoryUrl":"git+https://github.com/iancollins27/mailsnail.git","weeklyDownloads":33}],"repo":{"found":true,"owner":"iancollins27","repo":"mailsnail","archived":false,"pushedAt":"2026-08-17T20:24:02Z","stars":0,"forks":0,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/194742471?v=4","ownerCreatedAt":"2025-01-13T03:02:54Z","license":"MIT"},"icon":{"url":"https://mailsnail.dev/icon.png?51830f323c195e8d","source":"site","width":1254,"height":1254},"presence":{"stars":0,"forks":0,"downloadsWeek":33,"license":"MIT","lastPushAt":"2026-08-17T20:24:02.000Z","score":21}}}},"grade_history":[],"reviews":[]}