{"apiVersion":"v1","directorySlug":"midchat-mcp-55dfa2178f","title":"Midchat · Midchat","description":"ChatGPT plugins for invoices, weekly status, meeting actions, expenses, and PDF tables.","pageUrl":"https://www.mcpbundles.com/skills/midchat-mcp-55dfa2178f","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.midchat.io/mcp","hostedMcpUrl":null,"toolCount":3,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"io.midchat/midchat-mcp-55dfa2178f","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"validate_invoice_fields","description":"Use this when drafting an invoice to check which commonly required invoice fields are still missing or malformed (seller and client name/address, the seller business's VAT number or company tax registration number, invoice number, issue date, service date or period, due date or payment terms, currency, payment details, and quantity / unit price / tax rate per line; tax_note when a line is 0 %). IBANs are checked with the mod-97 checksum. Put the seller's IBAN/BIC in seller.bank {\"iban\", \"bic\"} (","inputSchema":{"type":"object","$defs":{"Bank":{"type":"object","properties":{"bic":{"anyOf":[{"type":"string","maxLength":16},{"type":"null"}],"default":null},"iban":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"default":null},"account_holder":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null}}},"Line":{"type":"object","properties":{"unit":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"default":null},"quantity":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null},"tax_rate":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null},"unit_price":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null}}},"Client":{"type":"object","properties":{"name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"vat_id":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"address":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null},"po_number":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"default":null}}},"Seller":{"type":"object","properties":{"bank":{"anyOf":[{"$ref":"#/$defs/Bank"},{"type":"string"},{"type":"null"}],"default":null},"name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"email":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"vat_id":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"address":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null},"tax_number":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"payment_instructions":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null}}},"Invoice":{"type":"object","properties":{"lines":{"type":"array","items":{"$ref":"#/$defs/Line"},"maxItems":200},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"default":null},"client":{"anyOf":[{"$ref":"#/$defs/Client"},{"type":"null"}],"default":null},"number":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"default":null},"seller":{"anyOf":[{"$ref":"#/$defs/Seller"},{"type":"null"}],"default":null},"status":{"anyOf":[{"enum":["draft","final"],"type":"string"},{"type":"null"}],"default":null},"currency":{"anyOf":[{"type":"string","maxLength":3},{"type":"null"}],"default":null},"discount":{"anyOf":[{"$ref":"#/$defs/Discount"},{"type":"null"}],"default":null},"due_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"language":{"anyOf":[{"enum":["en","de"],"type":"string"},{"type":"null"}],"default":null},"tax_note":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"default":null},"issue_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"service_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"service_period":{"anyOf":[{"$ref":"#/$defs/ServicePeriod"},{"type":"string"},{"type":"null"}],"default":null},"payment_terms_days":{"anyOf":[{"type":"integer","maximum":365,"minimum":0},{"type":"null"}],"default":null},"prices_include_tax":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false},"service_period_text":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null}}},"Discount":{"type":"object","required":["type","value"],"properties":{"type":{"enum":["percent","fixed"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"}]}}},"ServicePeriod":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"from":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}}},"required":["invoice"],"properties":{"invoice":{"$ref":"#/$defs/Invoice"}}},"title":"Check invoice fields","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"validate_invoice_fields","displayName":"Check invoice fields"},{"name":"compute_invoice_totals","description":"Use this to calculate an invoice's totals with decimal arithmetic (half-up rounding to the cent): amount per line, net, discount (percent or fixed, applied pro-rata per tax rate), VAT per rate, tax total, grand total, and due date from issue_date + payment_terms_days. Supports prices that include tax. Pass only numbers the user gave or confirmed. If a quantity, unit price or tax rate is missing or invalid it returns ok=false and ask_user_for instead of guessing. Nothing is stored.","inputSchema":{"type":"object","$defs":{"Bank":{"type":"object","properties":{"bic":{"anyOf":[{"type":"string","maxLength":16},{"type":"null"}],"default":null},"iban":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"default":null},"account_holder":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null}}},"Line":{"type":"object","properties":{"unit":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"default":null},"quantity":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null},"tax_rate":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null},"unit_price":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null}}},"Client":{"type":"object","properties":{"name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"vat_id":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"address":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null},"po_number":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"default":null}}},"Seller":{"type":"object","properties":{"bank":{"anyOf":[{"$ref":"#/$defs/Bank"},{"type":"string"},{"type":"null"}],"default":null},"name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"email":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"vat_id":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"address":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null},"tax_number":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"payment_instructions":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null}}},"Invoice":{"type":"object","properties":{"lines":{"type":"array","items":{"$ref":"#/$defs/Line"},"maxItems":200},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"default":null},"client":{"anyOf":[{"$ref":"#/$defs/Client"},{"type":"null"}],"default":null},"number":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"default":null},"seller":{"anyOf":[{"$ref":"#/$defs/Seller"},{"type":"null"}],"default":null},"status":{"anyOf":[{"enum":["draft","final"],"type":"string"},{"type":"null"}],"default":null},"currency":{"anyOf":[{"type":"string","maxLength":3},{"type":"null"}],"default":null},"discount":{"anyOf":[{"$ref":"#/$defs/Discount"},{"type":"null"}],"default":null},"due_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"language":{"anyOf":[{"enum":["en","de"],"type":"string"},{"type":"null"}],"default":null},"tax_note":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"default":null},"issue_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"service_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"service_period":{"anyOf":[{"$ref":"#/$defs/ServicePeriod"},{"type":"string"},{"type":"null"}],"default":null},"payment_terms_days":{"anyOf":[{"type":"integer","maximum":365,"minimum":0},{"type":"null"}],"default":null},"prices_include_tax":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false},"service_period_text":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null}}},"Discount":{"type":"object","required":["type","value"],"properties":{"type":{"enum":["percent","fixed"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"}]}}},"ServicePeriod":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"from":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}}},"required":["invoice"],"properties":{"invoice":{"$ref":"#/$defs/Invoice"}}},"title":"Compute invoice totals","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"compute_invoice_totals","displayName":"Compute invoice totals"},{"name":"render_invoice","description":"Use this after the user has confirmed the line items and totals to produce a one-page invoice in English or German as a PDF plus a printable HTML version. Totals are recalculated from the line items rather than taken from input. Any missing required field (e.g. invoice number, IBAN, addresses) is shown as a visible [PLACEHOLDER] and the document is labelled DRAFT; leave status empty for a normal invoice (set status='draft' only if the user asks for a draft). Returns short-lived download links (e","inputSchema":{"type":"object","$defs":{"Bank":{"type":"object","properties":{"bic":{"anyOf":[{"type":"string","maxLength":16},{"type":"null"}],"default":null},"iban":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"default":null},"account_holder":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null}}},"Line":{"type":"object","properties":{"unit":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"default":null},"quantity":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null},"tax_rate":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null},"unit_price":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"default":null}}},"Client":{"type":"object","properties":{"name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"vat_id":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"address":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null},"po_number":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"default":null}}},"Seller":{"type":"object","properties":{"bank":{"anyOf":[{"$ref":"#/$defs/Bank"},{"type":"string"},{"type":"null"}],"default":null},"name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"email":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null},"vat_id":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"address":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null},"tax_number":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"default":null},"payment_instructions":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"default":null}}},"Invoice":{"type":"object","properties":{"lines":{"type":"array","items":{"$ref":"#/$defs/Line"},"maxItems":200},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"default":null},"client":{"anyOf":[{"$ref":"#/$defs/Client"},{"type":"null"}],"default":null},"number":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"default":null},"seller":{"anyOf":[{"$ref":"#/$defs/Seller"},{"type":"null"}],"default":null},"status":{"anyOf":[{"enum":["draft","final"],"type":"string"},{"type":"null"}],"default":null},"currency":{"anyOf":[{"type":"string","maxLength":3},{"type":"null"}],"default":null},"discount":{"anyOf":[{"$ref":"#/$defs/Discount"},{"type":"null"}],"default":null},"due_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"language":{"anyOf":[{"enum":["en","de"],"type":"string"},{"type":"null"}],"default":null},"tax_note":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"default":null},"issue_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"service_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"service_period":{"anyOf":[{"$ref":"#/$defs/ServicePeriod"},{"type":"string"},{"type":"null"}],"default":null},"payment_terms_days":{"anyOf":[{"type":"integer","maximum":365,"minimum":0},{"type":"null"}],"default":null},"prices_include_tax":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false},"service_period_text":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"default":null}}},"Discount":{"type":"object","required":["type","value"],"properties":{"type":{"enum":["percent","fixed"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"}]}}},"ServicePeriod":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"from":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}}},"required":["invoice"],"properties":{"invoice":{"$ref":"#/$defs/Invoice"}}},"title":"Render invoice PDF","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"render_invoice","displayName":"Render invoice PDF"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Midchat-Midchat&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3AubWlkY2hhdC5pby9tY3AifQ%3D%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Midchat-Midchat%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.midchat.io%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Midchat-Midchat%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.midchat.io%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Midchat+%C2%B7+Midchat&connectorUrl=https%3A%2F%2Fmcp.midchat.io%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Midchat-Midchat\" --url \"https://mcp.midchat.io/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/midchat-mcp-55dfa2178f","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/midchat-mcp-55dfa2178f/tools/{tool}","mcpServerUrl":"https://mcp.midchat.io/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/midchat-mcp-55dfa2178f?live=1"}