{"protocol":"WebMCP","standard":"document.modelContext.registerTool","version":"1.0.0","description":"Netify WebMCP Browser Agent Tools for African Trade Receivables","toolsCount":12,"httpExecutionUrl":"https://app.netify.ng/api/webmcp/execute?tool={tool_name}","quickExecutionExamples":{"getCollectionPriority":"https://app.netify.ng/api/webmcp/execute?tool=get_collection_priority&limit=5","searchCustomers":"https://app.netify.ng/api/webmcp/execute?tool=search_customers&query=ABC","getCustomerEvidence":"https://app.netify.ng/api/webmcp/execute?tool=get_customer_evidence&customerId=f14e802a-573d-46bb-8257-317bdc3cddb0","listReceivables":"https://app.netify.ng/api/webmcp/execute?tool=list_receivables"},"liveTopOverdueDebtorsPreview":[{"rank":1,"customerId":"f14e802a-573d-46bb-8257-317bdc3cddb0","customerName":"ABC Stores","totalOutstanding":"₦850,000","oldestOverdueDays":21,"priorityScore":75,"urgency":"HIGH","reasons":["NGN 850,000 overdue","21 days overdue","Missed 1 payment commitment","No confirmed payments on record"]},{"rank":2,"customerId":"7e8093e8-ce07-4d20-8628-0b6ad59286a2","customerName":"Northern Distribution","totalOutstanding":"₦1,200,000","oldestOverdueDays":36,"priorityScore":66,"urgency":"MEDIUM","reasons":["NGN 1,200,000 overdue","36 days overdue","Missed 1 payment commitment"]},{"rank":3,"customerId":"e86a8453-e1c2-4526-92a1-42b3d31c125f","customerName":"Musa Enterprises","totalOutstanding":"₦450,000","oldestOverdueDays":0,"priorityScore":66,"urgency":"MEDIUM","reasons":["NGN 450,000 overdue","Commitment due today","No confirmed payments on record"]}],"tools":[{"name":"get_collection_priority","description":"Retrieve prioritized debtor accounts ranked by urgency, aging days, risk score, and broken commitments from the live collections queue.","category":"READ_ONLY","inputSchema":{"type":"object","properties":{"limit":{"type":"number","description":"Maximum number of priority customers to return (default: 10)"},"currency":{"type":"string","description":"Currency filter e.g. NGN, KES, GHS, USD"}}},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=get_collection_priority"},{"name":"search_customers","description":"Search customer accounts by business name or address with live ledger balances and risk status.","category":"READ_ONLY","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Customer name or location to search"}},"required":["query"]},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=search_customers"},{"name":"get_customer_evidence","description":"Fetch detailed debtor evidence for a specific customer: active invoices, historical payments, WhatsApp/SMS commitment logs, and past collection activities.","category":"READ_ONLY","inputSchema":{"type":"object","properties":{"customerId":{"type":"string","description":"The unique ID of the customer account"}},"required":["customerId"]},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=get_customer_evidence"},{"name":"get_customer_risk_profile","description":"Retrieve AI-grounded risk explanation, behavioral patterns, and recommended recovery strategy for a customer.","category":"READ_ONLY","inputSchema":{"type":"object","properties":{"customerId":{"type":"string","description":"The unique ID of the customer account"}},"required":["customerId"]},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=get_customer_risk_profile"},{"name":"draft_follow_up_message","description":"Generate a culturally appropriate, evidence-grounded collection reminder draft for a customer with specific channel and tone. Does NOT send message (safe proposal).","category":"PROPOSAL","inputSchema":{"type":"object","properties":{"customerId":{"type":"string","description":"The unique customer ID"},"tone":{"type":"string","description":"Tone of the message","enum":["RESPECTFUL_REMINDER","DIRECT_FOLLOWUP","URGENT_ESCALATION","PARTIAL_PAYMENT_PROPOSAL"]},"channel":{"type":"string","description":"Delivery channel","enum":["WHATSAPP","SMS","PHONE_CALL","EMAIL"]}},"required":["customerId"]},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=draft_follow_up_message"},{"name":"record_collection_activity","description":"Persist a verified collection activity record or customer payment promise into the live timeline. Requires human review.","category":"MUTATING","inputSchema":{"type":"object","properties":{"customerId":{"type":"string","description":"Customer ID"},"receivableId":{"type":"string","description":"Receivable ID (optional if customerId provided)"},"type":{"type":"string","description":"Activity type e.g. PAYMENT_REMINDER, FOLLOW_UP, CALL"},"channel":{"type":"string","description":"Channel e.g. WHATSAPP, SMS, PHONE, IN_PERSON"},"outcome":{"type":"string","description":"Outcome e.g. CONTACTED, PROMISED_PAYMENT, NO_RESPONSE"},"notes":{"type":"string","description":"Activity notes and details"}},"required":["type","channel","outcome"]},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=record_collection_activity"},{"name":"list_receivables","description":"Query live invoices and receivables filtered by status (OPEN, OVERDUE, PAID) or customer ID.","category":"READ_ONLY","inputSchema":{"type":"object","properties":{"customerId":{"type":"string","description":"Filter receivables by customer ID"},"status":{"type":"string","description":"Status filter: OPEN, OVERDUE, PARTIALLY_PAID, PAID","enum":["OPEN","OVERDUE","PARTIALLY_PAID","PAID"]},"isOverdue":{"type":"boolean","description":"Filter only overdue receivables"}}},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=list_receivables"},{"name":"create_payment_commitment","description":"Record a customer promise-to-pay date and amount into the live database. Requires human confirmation.","category":"MUTATING","inputSchema":{"type":"object","properties":{"customerId":{"type":"string","description":"The unique customer ID"},"amount":{"type":"number","description":"Amount the customer promised to pay"},"promisedFor":{"type":"string","description":"Date customer promised to pay (ISO 8601 string e.g. 2026-09-05T00:00:00Z)"},"notes":{"type":"string","description":"Notes regarding the commitment agreement"}},"required":["amount","promisedFor"]},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=create_payment_commitment"},{"name":"list_notifications","description":"List live business notifications for the active organization. Returns recent alerts, payment signals, promise reminders, and risk escalations with their read status.","category":"READ_ONLY","inputSchema":{"type":"object","properties":{"unreadOnly":{"type":"boolean","description":"If true, returns only unread notifications"},"category":{"type":"string","enum":["ALL","RISK","PAYMENT","COMMITMENT","AI","SYSTEM"],"description":"Filter by category: RISK (overdue/missed promises), PAYMENT (received), COMMITMENT (promise due), AI, SYSTEM"},"pageSize":{"type":"number","description":"Max number of notifications to return (default: 20, max: 50)"}}},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=list_notifications"},{"name":"mark_notification_read","description":"Mark a specific notification as read by its ID. Use after the agent has surfaced or acted on the alert.","category":"MUTATING","inputSchema":{"type":"object","properties":{"notificationId":{"type":"string","description":"The UUID of the notification to mark as read"}},"required":["notificationId"]},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=mark_notification_read"},{"name":"query_business_memory","description":"Query long-term behavioral memory records, commitment fulfillment rates, payment habits, and debtor notes derived from live business events.","category":"READ_ONLY","inputSchema":{"type":"object","properties":{"customerId":{"type":"string","description":"The UUID of the customer to inspect memories for"}},"required":["customerId"]},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=query_business_memory"},{"name":"get_daily_briefing","description":"Fetch executive collection briefing including total overdue receivables, today promises, and high-urgency debtor accounts.","category":"READ_ONLY","inputSchema":{"type":"object","properties":{"currency":{"type":"string","description":"Target currency filter (e.g. NGN, KES, USD)"}}},"executeEndpoint":"https://app.netify.ng/api/webmcp/execute?tool=get_daily_briefing"}],"documentationUrl":"https://app.netify.ng/webmcp","authorization":{"type":"oauth2","standard":"RFC 7636 (PKCE) + RFC 6749","authorizationEndpoint":"https://app.netify.ng/oauth/authorize","tokenEndpoint":"https://app.netify.ng/api/oauth/token","revocationEndpoint":"https://app.netify.ng/api/oauth/revoke","grantsEndpoint":"https://app.netify.ng/api/oauth/grants","supportedResponseTypes":["code"],"supportedCodeChallengeMethods":["S256","plain"],"supportedScopes":["receivables:read","customers:read","customer_evidence:read","customer_risk:read","business_memory:read","notifications:read","collection_messages:draft","payment_commitments:write","collection_activity:write","notifications:write"]},"judgeCredentials":{"url":"https://app.netify.ng/login","email":"merchant@netify.ng","password":"Password123!"}}