Search / co.byondr/receipts
Receipts & invoices to spreadsheet
R0· no sign-inReceipts and invoices to checked spreadsheet rows. Doubtful numbers are flagged.
v0.1.0 · active · website · descriptor JSON · versions
Search / co.byondr/receipts
R0· no sign-inReceipts and invoices to checked spreadsheet rows. Doubtful numbers are flagged.
v0.1.0 · active · website · descriptor JSON · versions
{
"mcpServers": {
"receipts": {
"type": "http",
"url": "https://byondr.co/receipts/mcp"
}
}
}claude mcp add --transport http receipts https://byondr.co/receipts/mcp[mcp_servers.receipts]
url = "https://byondr.co/receipts/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"receipts": {
"type": "remote",
"url": "https://byondr.co/receipts/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"receipts": {
"type": "http",
"url": "https://byondr.co/receipts/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=receipts&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYnlvbmRyLmNvL3JlY2VpcHRzL21jcCJ9"
}{
"servers": {
"receipts": {
"type": "http",
"url": "https://byondr.co/receipts/mcp"
}
}
}{
"mcpServers": {
"receipts": {
"httpUrl": "https://byondr.co/receipts/mcp"
}
}
}extensions:
"receipts":
enabled: true
name: "receipts"
type: streamable_http
uri: "https://byondr.co/receipts/mcp"
timeout: 300
protocol.modernsupports 2026-07-28 (server/discover)protocol.statelessanswers without a sessionprotocol.transportstreamable HTTPprotocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every useauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length1 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotations2 of 2 tools declare readOnlyHint or destructiveHinttools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHinttools.token_costabout 1,241 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+dns-namespace +website +reachable +uptime-95% +updated-11d-ago -no-repository
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://byondr.co/receipts/mcp streamable-http | none | yes | 95% | 1123 ms | 2026-07-28 | 2026-11-07 |
create_upload | Get a one-hour signed upload URL for a document or a zip that is too large to send inline (over 2 MB; up to 100 MB here) or that already sits on disk. PUT the raw bytes to upload_url with a Content-Length header, then pass file_id to extract_documents. Free. |
extract_documentsread-only | Read receipts and invoices (JPG, PNG, WebP, HEIC, PDF, or a zip of them; one document per file or PDF; up to 25 documents per call, 10 MB each, PDFs up to 10 pages) into checked numbers. Give each file as file_id (from create_upload), url (public https) or data_base64 (up to 2 MB inline). MCP requests are capped near 4 MB by the SDK, so keep all inline base64 in one call under about 2 MB and use create_upload for more. Returns one entry per document with vendor, date, currency, line items, subtotal, tax, total and payment method, each field marked ok, check or missing, the checks that ran, a status of ready or needs_review with review_reasons, and duplicate_of for a repeated receipt. Money is a decimal string, never a float. Each document also carries printed: its dates and currency as printed, the paths of fields whose text could not be read (printed.unreadable), the paths of fields a second read changed after a failed check (printed.second_look), and the paths of amounts printed with a dotted thousands separator on a rupiah-style receipt ("31.000") that were read as the whole number (printed.thousands; the value is already converted and the field is marked check), and the paths of amounts the model returned as JSON numbers, whose printed digits are lost (printed.number_typed; the field is marked check). Also returns 24-hour download links for the exports you ask for: csv (default), line_items_csv, quickbooks_csv (one currency; set quickbooks_currency and quickbooks_date_format, MM/DD/YYYY or DD/MM/YYYY) and file_pack (a zip of the originals renamed by date, vendor and total, plus documents.csv). Each link lists the documents left out of that file: quickbooks_csv leaves out every document with status needs_review (and ones missing a date or total), with the reason; csv, line_items_csv and file_pack keep every document. Hints: country (ISO 3166-1 alpha-2) and currency (ISO 4217) help with unclear receipts, date_order (DMY or MDY) settles dates like 03/04/2026. Show documents with status needs_review and their review_reasons to the user before using their numbers. Free for now within a daily quota counted in documents (see start.md); price when payments are enabled: $0.01 per document. Use a client timeout of at least 240 s. |
Schemas: list_tools.
{
"name": "co.byondr/receipts",
"icons": [
{
"src": "https://byondr.co/logo.svg",
"sizes": [
"any"
],
"mimeType": "image/svg+xml"
},
{
"src": "https://byondr.co/logo.png",
"sizes": [
"512x512"
],
"mimeType": "image/png"
}
],
"title": "Receipts & invoices to spreadsheet",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://byondr.co/receipts/mcp",
"type": "streamable-http"
}
],
"version": "0.1.0",
"websiteUrl": "https://byondr.co/receipts",
"description": "Receipts and invoices to checked spreadsheet rows. Doubtful numbers are flagged."
}