Server definition
- Hash
- sha256:c9edcf7a83181087fbd704f3e699c299f88947cfd87f3b0496d299745a10ce94
- What it is
- What a remote MCP server returned when asked what it offers: 6 tools
The blob, as servednamed by its sha256
{
"instructions": "Fawtar holds this business's invoices, customers, ledger, payroll, assets and point-of-sale records. Amounts are in Saudi riyals unless an invoice names another currency. Issuing an invoice is a real financial act — it takes a sequential number, generates a ZATCA QR code and posts to the ledger, and it cannot be edited afterwards, so confirm the amounts with the user before calling fawtar_create_invoice.",
"tools": [
{
"description": "Create a customer, product, vendor, employee, asset or other simple record. Use fawtar_create_invoice for invoices — issuing one claims a sequential number, computes VAT, writes the QR and posts to the ledger, none of which a generic insert does.\n\nCreatable resources: quotes, orders, customers, products, categories, product_unit_types, vendors, bills, simple_bills, bill_payments, inventories, inventory_adjustments, inventory_transfers, invoice_payments, accounts, journal_entries, employees, assets, pos_tables.",
"inputSchema": {
"properties": {
"data": {
"additionalProperties": true,
"description": "The record's fields.",
"type": "object"
},
"resource": {
"enum": [
"quotes",
"orders",
"customers",
"products",
"categories",
"product_unit_types",
"vendors",
"bills",
"simple_bills",
"bill_payments",
"inventories",
"inventory_adjustments",
"inventory_transfers",
"invoice_payments",
"accounts",
"journal_entries",
"employees",
"assets",
"pos_tables"
],
"type": "string"
}
},
"required": [
"resource",
"data"
],
"type": "object"
},
"name": "fawtar_create",
"outputSchema": null
},
{
"description": "Issue a tax or ordinary invoice. This is a real financial document: it takes the next sequential number, computes VAT, generates the ZATCA QR code and posts to the general ledger. It cannot be edited afterwards — correct it with a credit note. Confirm the amounts with the user before calling.\n\nUse taxTreatment \"tax\" for a VAT-registered business, \"ordinary\" for one that is not registered. Use type \"simplified\" for individuals, \"standard\" for businesses (which requires the buyer's VAT number).",
"inputSchema": {
"properties": {
"buyer": {
"properties": {
"address": {
"type": "string"
},
"email": {
"type": "string"
},
"name": {
"type": "string"
},
"phone": {
"type": "string"
},
"vatNumber": {
"type": "string"
}
},
"type": "object"
},
"dueDate": {
"description": "YYYY-MM-DD",
"type": "string"
},
"lines": {
"items": {
"properties": {
"description": {
"type": "string"
},
"quantity": {
"exclusiveMinimum": 0,
"type": "number"
},
"unitPrice": {
"minimum": 0,
"type": "number"
},
"vatRate": {
"description": "0.15 for 15%.",
"maximum": 1,
"minimum": 0,
"type": "number"
}
},
"required": [
"description",
"quantity",
"unitPrice",
"vatRate"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"notes": {
"type": "string"
},
"pricesIncludeVat": {
"default": false,
"type": "boolean"
},
"taxTreatment": {
"enum": [
"tax",
"ordinary"
],
"type": "string"
},
"type": {
"enum": [
"simplified",
"standard"
],
"type": "string"
}
},
"required": [
"taxTreatment",
"type",
"lines"
],
"type": "object"
},
"name": "fawtar_create_invoice",
"outputSchema": null
},
{
"description": "Fetch a single record by id. For invoices this also returns the line items and the public share link.",
"inputSchema": {
"properties": {
"id": {
"description": "The record's uuid.",
"type": "string"
},
"resource": {
"enum": [
"invoices",
"credit_notes",
"debit_notes",
"quotes",
"orders",
"customers",
"products",
"categories",
"product_unit_types",
"vendors",
"bills",
"simple_bills",
"bill_payments",
"inventories",
"inventory_levels",
"inventory_adjustments",
"inventory_transfers",
"invoice_payments",
"receipts",
"accounts",
"journal_entries",
"recurring_journals",
"employees",
"payroll_runs",
"payslips",
"assets",
"pos_tables",
"pos_orders"
],
"type": "string"
}
},
"required": [
"resource",
"id"
],
"type": "object"
},
"name": "fawtar_get",
"outputSchema": null
},
{
"description": "List records from any Fawtar resource, with filtering, sorting and paging.\n\nResources:\n- invoices: إصدار الفواتير الضريبية وقراءتها.\n- credit_notes: تصحيح فاتورة صادرة بالخصم.\n- debit_notes: تصحيح فاتورة صادرة بالزيادة.\n- quotes: عروض الأسعار قبل تحوّلها إلى فواتير.\n- orders: طلبات المتجر قبل الفوترة.\n- customers: بيانات العملاء وأرقامهم الضريبية والعنوان الوطني.\n- products: المنتجات والخدمات وأسعارها.\n- categories: تصنيفات المنتجات.\n- product_unit_types: وحدات بيع المنتجات.\n- vendors: بيانات الموردين.\n- bills: فواتير الموردين ببنودها.\n- simple_bills: مصروف بمبلغ واحد دون بنود.\n- bill_payments: سداد فواتير الموردين.\n- inventories: المستودعات والفروع.\n- inventory_levels: الكميات المتاحة لكل منتج في كل مستودع.\n- inventory_adjustments: زيادة أو إنقاص كمية بسبب جرد أو تلف.\n- inventory_transfers: نقل كمية بين مستودعين.\n- invoice_payments: تسجيل دفعة على فاتورة.\n- receipts: الدفعات نفسها بصيغة سند القبض.\n- accounts: شجرة الحسابات وأنواعها.\n- journal_entries: القيود المرحّلة إلى دفتر الأستاذ.\n- recurring_journals: جدولة القيود التي تتكرر كل فترة.\n- employees: بيانات الموظفين ورواتبهم وبدلاتهم.\n- payroll_runs: المسيّرات الشهرية وإجمالياتها.\n- payslips: قسيمة كل موظف داخل المسيّر.\n- assets: سجل الأصول وإهلاكها.\n- pos_tables: طاولات صالة المطعم.\n- pos_orders: طلبات نقاط البيع المفتوحة والمحصّلة.\n\nFilters use the form {\"field_predicate\": \"value\"} — for example {\"status_eq\": \"issued\"} or {\"issued_at_gteq\": \"2026-01-01\"}. Predicates: eq, not_eq, cont, start, end, gt, gteq, lt, lteq, in, null. Only fields the resource allows are honoured; anything else is ignored.",
"inputSchema": {
"properties": {
"filters": {
"additionalProperties": {
"type": "string"
},
"description": "Ransack-style filters, e.g. {\"status_eq\":\"issued\"}.",
"type": "object"
},
"limit": {
"default": 25,
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"minimum": 1,
"type": "integer"
},
"resource": {
"description": "Which resource to list.",
"enum": [
"invoices",
"credit_notes",
"debit_notes",
"quotes",
"orders",
"customers",
"products",
"categories",
"product_unit_types",
"vendors",
"bills",
"simple_bills",
"bill_payments",
"inventories",
"inventory_levels",
"inventory_adjustments",
"inventory_transfers",
"invoice_payments",
"receipts",
"accounts",
"journal_entries",
"recurring_journals",
"employees",
"payroll_runs",
"payslips",
"assets",
"pos_tables",
"pos_orders"
],
"type": "string"
},
"sort": {
"description": "Sort as \"field asc\" or \"field desc\".",
"type": "string"
}
},
"required": [
"resource"
],
"type": "object"
},
"name": "fawtar_list",
"outputSchema": null
},
{
"description": "Every unpaid issued invoice with its remaining balance and how many days it is overdue, newest due first, plus the totals. This is the answer to 'who owes me money' without composing filters by hand.",
"inputSchema": {
"properties": {
"limit": {
"default": 50,
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"overdueOnly": {
"default": false,
"description": "Only invoices past their due date.",
"type": "boolean"
}
},
"type": "object"
},
"name": "fawtar_outstanding",
"outputSchema": null
},
{
"description": "Output VAT charged on sales, input VAT paid on expenses, and the net payable for a date range — the figures a VAT return is built from. Recoverable input VAT only; expenses marked non-recoverable are excluded, as they must be.",
"inputSchema": {
"properties": {
"from": {
"description": "YYYY-MM-DD, inclusive.",
"type": "string"
},
"to": {
"description": "YYYY-MM-DD, inclusive.",
"type": "string"
}
},
"required": [
"from",
"to"
],
"type": "object"
},
"name": "fawtar_vat_summary",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:c9edcf7a83181087fbd704f3e699c299f88947cfd87f3b0496d299745a10ce94 | sha256sum