papierkram_get_info
Get account info
Read the API version and the account's custom invoice templates (ids usable as custom_template_id when creating an invoice).
Takes no parameters.
io.usefulapiPublished by usefulapi.ioOfficial publisherv1.17.4Updated Nov 7, 2026
Read Papierkram invoices, vouchers, contacts, projects, time; create contacts, time, draft invoices.
The publisher's own server: Ably MCP by usefulapi
Hosted MCP server for Papierkram accounting: read invoices, vouchers, contacts, projects and time, and create contacts, time entries and draft invoices.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.usefulapi%2Fpapierkram/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"papierkram-by-usefulapi": {
"type": "http",
"url": "https://papierkram.usefulapi.io/mcp"
}
}
}Use Papierkram from Claude, Cursor, or any MCP client — work with your invoices, expense vouchers, contacts, projects, tracked time and bank transactions. Hosted, no local install: connect with your own Papierkram account and API token.
Live endpoint: https://papierkram.usefulapi.io/mcp · Homepage: https://usefulapi.io/papierkram
https://papierkram.usefulapi.io/mcp.claude mcp add --transport http papierkram https://papierkram.usefulapi.io/mcp, then run /mcp to log in.Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Papierkram credentials.
Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/papierkram/
On first connect you'll enter your Papierkram account (the first part of https://<account>.papierkram.de) and an API token (create it under Einstellungen > API; the API is a beta feature of the plans M and L). They are validated, stored per-user, and scoped to you — no keys in config files.
read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.
*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].
Pro covers this server only. Subscribe with papierkram_upgrade (it returns a Stripe Checkout link). Cancel any time with papierkram_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running papierkram_upgrade before then undoes the cancel. Or write to [email protected].
Source: servers/papierkram/README.md at commit 4046075
Get account info
Read the API version and the account's custom invoice templates (ids usable as custom_template_id when creating an invoice).
Takes no parameters.
List companies
List contacts (companies: customers and suppliers) with address, VAT id and contact data. Paged.
pageorder_bypage_sizeorder_directionGet company
Get one contact (company) by id, with its people.
idrequiredList persons of a company
List the contact persons of one company. Paged.
pageorder_bypage_sizecompany_idrequiredorder_directionGet person
Get one contact person of a company.
idrequiredcompany_idrequiredList invoices
List outgoing invoices (Ausgangsrechnungen) with state (draft, ...), dates, totals and outstanding_amount. Filter by company, project or document date range. Paged.
pageorder_bypage_sizecompany_idproject_idorder_directiondocument_date_range_enddocument_date_range_startGet invoice
Get one outgoing invoice with its line items, billing address and payment term.
idrequiredList estimates
List estimates (Angebote) with state, dates and totals. Filter by company, project or document date range. Paged.
pageorder_bypage_sizecompany_idproject_idorder_directiondocument_date_range_enddocument_date_range_startGet estimate
Get one estimate with its line items.
idrequiredList expense vouchers
List expense vouchers (Belege / incoming invoices and receipts) with creditor, state, dates and amounts. Filter by creditor (supplier company), project or document date range. Paged.
pageorder_bypage_sizeproject_idcreditor_idorder_directiondocument_date_range_enddocument_date_range_startGet expense voucher
Get one expense voucher with its line items.
idrequiredList payment terms
List the payment term templates (ids needed as payment_term_id when creating an invoice).
pageorder_bypage_sizeorder_directionList products and services
List the stored products and services (Leistungen/Artikel) with article number, price and unit (the VAT rate is only in papierkram_get_proposition). Paged.
pageorder_bypage_sizeorder_directionGet product or service
Get one stored product or service, including its vat_rate (name such as 19% and rate such as 0.19).
idrequiredList projects
List projects with dates, budget and state. Filter by company. Paged.
pageorder_bypage_sizecompany_idorder_directionGet project
Get one project by id.
idrequiredList tasks
List time-tracking tasks. Filter by project or product/service. Paged.
pageorder_bypage_sizeproject_idproposition_idorder_directionGet task
Get one task by id.
idrequiredList time entries
List tracked time entries. Filter by project, task, invoice, user, billing state or start time range (RFC 3339 date-time). Paged.
pagetask_iduser_idorder_bypage_sizeinvoice_idproject_idbilling_stateorder_directionstart_time_range_endstart_time_range_startGet time entry
Get one time entry by id.
idrequiredList bank connections
List the bank accounts connected to Papierkram (name, IBAN, balance data as Papierkram reports it). Paged.
pageorder_bypage_sizeorder_directionList bank transactions
List bank transactions (value, currency, usage text, booking date, counterparty). Filter by bank connection. Paged.
pageorder_bypage_sizeorder_directionbank_connection_idGet bank transaction
Get one bank transaction by id.
idrequiredList users
List the users of the account (ids needed as user_id for time entries and tasks).
pageorder_bypage_sizeorder_directionGet user
Get one user by id.
idrequiredCreate company
WRITE: create a contact (company) in Papierkram. Papierkram assigns the customer number. Nothing is sent to the contact. Check papierkram_list_companies first to avoid duplicates. Costs Papierkram API credits (a create 10, an invoice or estimate 50; the monthly quota is limited).
namerequiredemailnotesphonewebsitebank_bicust_idnrbank_ibanpostal_zippostal_citycontact_typerequiredpostal_street+2 moreUpdate company
WRITE: change fields of an existing contact (only the fields you pass are changed). Read it first with papierkram_get_company.
idrequirednameemailnotesphonewebsitebank_bicust_idnrbank_ibanpostal_zippostal_citycontact_type+3 moreCreate person
WRITE: add a contact person to an existing company. Nothing is sent to the person. Costs Papierkram API credits (a create 10, an invoice or estimate 50; the monthly quota is limited).
emailphonemobilecommentpositionlast_namerequiredcompany_idrequireddepartmentfirst_namerequiredsalutationCreate project
WRITE: create a project for a customer. Costs Papierkram API credits (a create 10, an invoice or estimate 50; the monthly quota is limited).
namerequiredend_datestart_datebudget_timebudget_typecustomer_idrequireddescriptionbudget_moneybudget_time_unitCreate task
WRITE: create a time-tracking task in a project. Costs Papierkram API credits (a create 10, an invoice or estimate 50; the monthly quota is limited).
namerequireduser_iddeadlineproject_idrequiredproposition_idCreate time entry
WRITE: record a time entry (worked time) on a task. Not billed until an invoice is made. Costs Papierkram API credits (a create 10, an invoice or estimate 50; the monthly quota is limited).
task_idrequireduser_idrequiredcommentsentry_daterequiredunbillableended_at_timerequiredstarted_at_timerequiredCreate product or service
WRITE: create a stored product or service (Leistung/Artikel) with a price. Costs Papierkram API credits (a create 10, an invoice or estimate 50; the monthly quota is limited).
namerequiredpricevat_raterequiredtime_unitrequiredarticle_norequireddescriptionunit_name_1unit_name_nproposition_typerequiredCreate draft invoice
WRITE: create a DRAFT outgoing invoice (state draft; it is NOT finalized or sent, and gets no invoice number until the user completes it in Papierkram). Needs a payment term id (papierkram_list_payment_terms) and at least one line item. Use papierkram_list_invoices afterwards to check it. Costs Papierkram API credits (a create 10, an invoice or estimate 50; the monthly quota is limited).
namerequiredgrossline_itemsrequiredproject_idcustomer_idrequireddescriptionsupply_datedocument_datepayment_term_idrequiredcontact_person_idcustom_template_idCreate draft estimate
WRITE: create a DRAFT estimate (Angebot; state draft, it is NOT finalized or sent, and gets no estimate number until the user completes it in Papierkram). Needs a customer and at least one line item (name, quantity, unit, net unit price, VAT rate). Use papierkram_list_estimates afterwards to check it. Costs 50 Papierkram API credits (the monthly quota is limited).
namerequiredgrossline_itemsrequiredproject_idcustomer_idrequireddescriptionthanks_textdocument_dategreetings_textcontact_person_idcustom_template_idGet voucher PDF
Get the PDF that Papierkram makes for one expense voucher (GET /expense/vouchers/{id}/pdf). The API reference does not say whether it embeds the uploaded receipt; for the original uploaded file use papierkram_get_voucher_document. Returns the PDF as an embedded file (up to 3 MB).
idrequiredGet voucher document
Get an original file uploaded to an expense voucher (a receipt PDF or image), so its content can be read. Reads the voucher (papierkram_get_voucher) and fetches documents[].uri. Images come back as images, PDFs as an embedded file (up to 3 MB). The API has no documented download for one document: if Papierkram does not serve the file to an API token, the tool says so; then use papierkram_get_voucher_pdf. Files that are not yet attached to a voucher (the upload inbox) are not reachable through the Papierkram API.
voucher_idrequireddocument_idUpload voucher document
WRITE: attach a file (receipt PDF or image) to an existing expense voucher (POST /expense/vouchers/{id}/documents). The file is given as base64, up to 3 MB. Check papierkram_get_voucher first: a repeated upload attaches the file twice. Costs 10 Papierkram API credits.
filenamerequiredmime_typerequiredvoucher_idrequiredcontent_base64requiredCreate expense voucher
WRITE: book an expense voucher (Beleg) in Papierkram, e.g. from a receipt. Papierkram books it at once (state unpaid, no draft), so this tool works in two steps. Without confirm it creates nothing: it returns the exact request and possible duplicates (same document date, creditor and total) for the user to review. After the user approves, call again with the same arguments and confirm: true. Then attach the file with papierkram_upload_voucher_document and record a payment with papierkram_pay_voucher. Asset categories that need a depreciation (AfA) setting must be finished in Papierkram. Costs 50 Papierkram API credits; each duplicate check reads 1.
namerequiredconfirmflaggeddue_dateline_itemsrequiredprovenancerequiredcreditor_iddescriptiondocument_daterequiredallow_duplicateentertainment_reasonentertainment_personsPay expense voucher
WRITE: book a payment of an expense voucher (POST /expense/vouchers/{id}/pay), with a value and payment date or with an existing bank transaction. Without confirm it changes nothing: it reads the voucher and returns the exact request for the user to review. After approval, call again with confirm: true. A value that differs from the open amount needs difference_reason (teilzahlung = part payment, skonto = cash discount, mahnung = reminder fee, schmaelerung = reduction, sonstige = other). A repeated call books a second payment: after an error, check the voucher state with papierkram_get_voucher before retrying.
idrequiredvalueconfirmpayment_datedifference_reasonbanking_transaction_idUpdate expense voucher
WRITE: change an existing expense voucher (PUT /expense/vouchers/{id}): title, supplier, provenance, dates, notes, flag or line items (amount, VAT rate, category). Only the fields you pass are changed. line_items REPLACES all lines of the voucher: pass the full new list. Without confirm it changes nothing: it reads the voucher and returns its current values next to the exact request for the user to review. After approval, call again with the same arguments and confirm: true. Papierkram refuses a voucher that can no longer be edited (e.g. a paid or locked one). Lines with a billing (re-invoicing) or depreciation (AfA) setting cannot be replaced here, so the tool refuses line_items for such a voucher; change those lines in Papierkram. Payments are booked with papierkram_pay_voucher. Costs 1 Papierkram API credit; the preview, and a confirmed line change, also read the voucher (1 each).
idrequirednameconfirmflaggeddue_dateline_itemsprovenancecreditor_iddescriptiondocument_dateentertainment_reasonentertainment_persons100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
io.usefulapiOfficial publisher
Hosted MCP server for Ably realtime messaging: inspect channel history, presence and occupancy, publish messages, and review app usage and configuration.
io.usefulapiOfficial publisher
Hosted read-only MCP server that lets an assistant look up Woffu company users, employment contracts, departments and offices.
io.usefulapiOfficial publisher
Hosted MCP server for White Label Loyalty: browse rewards, read a customer's points wallet and tier progress, and buy rewards with points.
io.usefulapiOfficial publisher
Hosted Weekdone connector that lets an assistant read weekly reports, teams, objectives and KPIs, and add report items, comments and KPI values.
io.usefulapiOfficial publisher
Hosted read-only MCP server that lets an assistant list WebinarKit webinars, their dates, series, meetings and white-label sub-accounts.
{ "mcpServers": { "papierkram": { "url": "https://papierkram.usefulapi.io/mcp" } }}