Skip to content
MCP ThesaurusMCP Thesaurus

Receivables Payables Tracker

CommunityGood74/100Claim

NOASSERTIONupdated 1mo ago

Track who owes you money and who you owe.

SourceWebsiteDocs2

What can you do with Receivables Payables Tracker?


name: receivables-payables-tracker description: Track who owes you money and who you owe. Use when the user asks about outstanding invoices, bills to pay, accounts receivable, accounts payable, or aging reports. Requires OSOME MCP server at https://mcp.osome.com/mcp

Receivables & Payables Tracker

Track who owes you money and who you owe.

When to Use

Invoke this skill when the user asks:

  • "Who owes me money?"
  • "What bills do I need to pay?"
  • "Outstanding invoices"
  • "Aged receivables"
  • "Aged payables"
  • "What's overdue?"
  • "Collection status"
  • "Accounts receivable / accounts payable"
  • "Who hasn't paid me?"
  • "Chase up invoices"
  • "What do I owe?"
  • "Overdue payments"
  • "Client hasn't paid"
  • "Unpaid invoices"
  • "Bills due soon"

MCP Server

This skill requires the OSOME MCP server:

https://mcp.osome.com/mcp

Tools Used

Step Tool Purpose
1 list-companies Select company
2 get-company Company context
3 get-aged-receivables Customer invoices by age bucket
4 get-aged-payables Vendor bills by age bucket
5 get-bank-accounts Current cash for context
Optional prepare-document-upload Prepare upload of invoice PDFs, bills, remittance advice, or supporting documents
Optional complete-document-upload Complete document creation after bytes are uploaded to the presigned target

Data Available

From get-aged-receivables / get-aged-payables:

  • Report format with headings and line items
  • Customer/vendor names (in report lines)
  • Amounts by aging bucket
  • Structure: { report: { headings: [...], lines: [...] } }

From get-bank-accounts:

  • Account balances to show available cash

From document upload tools (optional):

  • prepare-document-upload returns duplicate, maxSizeBytes, optional document, or an upload target plus uploadToken
  • Upload supporting documents for receivables or payables follow-up to the returned presigned POST target
  • complete-document-upload creates the OSOME document after the file bytes are uploaded
  • Supported file types: PDF, JPG/JPEG, PNG, CSV, XLS, XLSX
  • Maximum file size: 50 MB

Limitations

  • Document details limited - list-documents only returns { id, name }, not amounts or due dates
  • Invoice line items not available - For detailed invoice info, users should access OSOME dashboard
  • Report structure varies - Actual field names depend on the accounting system's report format
  • Document upload uses two MCP tools plus direct file upload - Call prepare-document-upload, upload the file directly to the returned presigned POST target, then call complete-document-upload with the same metadata and uploadToken

Execution Flow

  1. Call list-companies and select company
  2. Call get-company for context
  3. Call get-aged-receivables (as of today or specified date)
  4. Call get-aged-payables (as of today or specified date)
  5. Call get-bank-accounts for cash context
  6. Parse report data to extract aging buckets
  7. Present prioritized view
  8. If the user needs to upload an invoice, bill, remittance advice, or supporting file, use the document upload flow:
    • Prepare with companyId, filename, contentType, sizeBytes, and lowercase MD5 checksum
    • Call prepare-document-upload (requires OAuth scope company:documents:write)
    • If duplicate: true, explain that OSOME already has the document
    • Upload the file bytes outside MCP to upload.method/upload.url using returned upload.fields; include returned form fields exactly and append the file last
    • Do not send file bytes, contentBase64, or arbitrary upload headers to MCP
    • Call complete-document-upload with the same metadata plus uploadToken

Report Structure

Aged reports return data like:

{
  "report": {
    "headings": ["Contact", "Current", "1-30 Days", "31-60 Days", "61-90 Days", "90+ Days", "Total"],
    "lines": [
      ["TechCorp Pte Ltd", 5000, 0, 2000, 0, 0, 7000],
      ["StartupXYZ", 0, 3000, 0, 0, 0, 3000]
    ]
  }
}

Parse according to the headings returned.

Output Format

Accounts Receivable Summary

Total Outstanding: [amount]

Age Bucket Amount % of Total
Current (0-30 days) [amount] [%]
31-60 days [amount] [%]
61-90 days [amount] [%]
90+ days (Overdue) [amount] [%]

Customers with Outstanding (from report):

  • ...

Accounts Payable Summary

Total Outstanding: [amount]

Age Bucket Amount % of Total
Current (0-30 days) [amount] [%]
31-60 days [amount] [%]
61-90 days [amount] [%]
90+ days (Overdue) [amount] [%]

Vendors with Outstanding (from report):

  • ...

Cash Context

Current Cash Position: [from bank accounts] AR - AP Net: [receivables - payables]

Example

User: "Who owes me money?"

Response:

Accounts Receivable Report

Customer Current 31-60 61-90 90+ Total
TechCorp 45,000 0 0 0 45,000
StartupXYZ 20,000 8,000 0 0 28,000
BigClient 0 0 22,000 0 22,000

Summary:

  • Total AR: SGD 95,000
  • Current: SGD 65,000 (68%)
  • Overdue (60+): SGD 22,000 (23%)

Action: Follow up with BigClient on SGD 22,000 (61-90 days).


User: "What bills do I need to pay?"

Response:

Accounts Payable Report

Vendor Current 31-60 61-90 90+ Total
AWS 12,500 0 0 0 12,500
Landlord 8,000 0 0 0 8,000
Supplier 0 0 0 3,000 3,000

Summary:

  • Total AP: SGD 23,500
  • Due soon (Current): SGD 20,500
  • Overdue (90+): SGD 3,000

Cash available: SGD 245,000 (from bank accounts) Coverage: 10x current payables

Error Handling

Scenario Response
No receivables "No outstanding customer invoices found."
No payables "No outstanding bills to pay."
Report parsing error Show raw report data and explain structure
Very old items (180+ days) Flag as potential bad debt