ExpenseOnDemand MCP by usefulapi

io.usefulapi/expenseondemand · v1.0.2 · finance-and-payments

ExpenseOnDemand MCP by usefulapi is healthy: it completed an MCP handshake in 370 ms and exposes 15 tools.

Read exports, payroll totals and users; add, update or deactivate employees in ExpenseOnDemand.

Endpoint: https://expenseondemand.usefulapi.io/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count15
Latency370 ms
Last checked (UTC)2026-11-05T15:05:42.236Z

Health history

Checked (UTC)StatusLatencyError
2026-11-05T15:05:42.236ZHealthy370

Tools (15)

expenseondemand_export_accountingFetch approved expense data for an accounting integration, filtered by report, date range, category, claimant, cost centre, grade and payment type. Reads data only; the POST carries the filter body. Accounting API: POST /accounting/api/AccountingExport.
expenseondemand_get_payroll_exportGet the total approved expense amount per employee for payroll: name, email, expense count and total amount. Accounting API: GET /accounting/api/PayrollExport.
expenseondemand_list_export_templatesList the export report types configured for the subscription, with their report ids and fields. Use a reportId as exportReportId in expenseondemand_export_accounting. Meta API: GET /meta/api/GetExportTemplates.
expenseondemand_list_expense_categoriesList the expense categories of the subscription with id, name, active flag and base category id. Meta API: GET /meta/api/GetExpenseCategoriesForOrganisation.
expenseondemand_list_gradesList the employee grades of the subscription with id, name and active flag. Meta API: GET /meta/api/GetGradesForOrganisation.
expenseondemand_list_customersList the customers of the subscription with id, name, codes and active flag. Customer API: GET /customer/api/GetCustomersForOrganisation.
expenseondemand_add_customerAdd a customer to the subscription. The id is generated by ExpenseOnDemand. Creates a new record each call. Customer API: POST /customer/api/AddCustomerForSubscription.
expenseondemand_update_customerUpdate an existing customer by id. Send every field you want to keep: the vendor may clear fields you leave out, so read the record first with expenseondemand_list_customers. Customer API: POST /customer/api/UpdateCustomerForSubscription.
expenseondemand_list_cost_centresList the cost centres of the subscription with id, name, codes and active flag. Cost Centre API: GET /costCentre/api/GetCostCentresForOrganisation.
expenseondemand_add_cost_centreAdd a cost centre to the subscription. The id is generated by ExpenseOnDemand. Creates a new record each call. Cost Centre API: POST /costCentre/api/AddCostCentreForSubscription.
expenseondemand_update_cost_centreUpdate an existing cost centre by id. Send every field you want to keep: the vendor may clear fields you leave out, so read the record first with expenseondemand_list_cost_centres. Cost Centre API: POST /costCentre/api/UpdateCostCentreForSubscription.
expenseondemand_list_usersList the users (employees) of the subscription with email, name, status (1 Active, 2 Inactive, 3 NotInvited, 4 Pending, 5 Deleted), role and approver email. Users API: GET /users/api/GetUsersForOrganisation.
expenseondemand_add_employeeAdd an employee to the subscription. ExpenseOnDemand treats the new employee as invited. Creates a record each call, so check expenseondemand_list_users first. Users API: POST /users/api/AddEmployee.
expenseondemand_update_employeeUpdate an existing employee, identified by email. Send every field you want to keep: the vendor may clear fields you leave out, so read the record first with expenseondemand_list_users. Users API: POST /users/api/UpdateEmployee.
expenseondemand_deactivate_employeeDeactivate an employee by email, so they can no longer submit or approve expenses. Users API: POST /users/api/DeactivateEmployee.