Kledo MCP by usefulapi
Read invoices, bills, contacts, bank balances and financial reports in Kledo.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"kledo": {
"url": "https://kledo.usefulapi.io/mcp"
}
}
}Puntos de conexión remotos
https://kledo.usefulapi.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (21)
🟢kledo_list_invoices(search, contact_id, status_id, date_from, date_to, ...)
List sales invoices with contact, dates, amounts and status. Supports due-date and amount filters. Kledo API: GET /finance/invoices.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"description": "Free-text search.",
"type": "string"
},
"contact_id": {
"description": "Filter by contact id.",
"type": "string"
},
"status_id": {
"description": "Filter by status id (comma separated for several).",
"type": "string"
},
"date_from": {
"description": "Transaction date from (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Transaction date to (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"sort_by": {
"description": "Sort column.",
"type": "string",
"enum": [
"trans_date",
"status_id",
"amount_after_tax",
"ref_number",
"memo"
]
},
"order_by": {
"description": "Sort direction.",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"due_date_from": {
"description": "Due date from (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"due_date_to": {
"description": "Due date to (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"amount_gte": {
"description": "Minimum total after tax.",
"type": "number"
},
"amount_lte": {
"description": "Maximum total after tax.",
"type": "number"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_get_invoice(id)
Get one sales invoice with its line items, payments and contact. Kledo API: GET /finance/invoices/{id}.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
],
"description": "Record id."
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_list_quotes(search, contact_id, status_id, date_from, date_to, ...)
List sales quotes (penawaran). Kledo API: GET /finance/quotes.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"description": "Free-text search.",
"type": "string"
},
"contact_id": {
"description": "Filter by contact id.",
"type": "string"
},
"status_id": {
"description": "Filter by status id (comma separated for several).",
"type": "string"
},
"date_from": {
"description": "Transaction date from (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Transaction date to (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"sort_by": {
"description": "Sort column.",
"type": "string",
"enum": [
"trans_date",
"status_id",
"amount_after_tax",
"ref_number",
"memo"
]
},
"order_by": {
"description": "Sort direction.",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_list_sales_orders(search, contact_id, status_id, date_from, date_to, ...)
List sales orders. Kledo API: GET /finance/orders.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"description": "Free-text search.",
"type": "string"
},
"contact_id": {
"description": "Filter by contact id.",
"type": "string"
},
"status_id": {
"description": "Filter by status id (comma separated for several).",
"type": "string"
},
"date_from": {
"description": "Transaction date from (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Transaction date to (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"sort_by": {
"description": "Sort column.",
"type": "string",
"enum": [
"trans_date",
"status_id",
"amount_after_tax",
"ref_number",
"memo"
]
},
"order_by": {
"description": "Sort direction.",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_list_purchase_invoices(search, contact_id, status_id, date_from, date_to, ...)
List purchase invoices (vendor bills) with amounts and status. Kledo API: GET /finance/purchaseInvoices.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"description": "Free-text search.",
"type": "string"
},
"contact_id": {
"description": "Filter by contact id.",
"type": "string"
},
"status_id": {
"description": "Filter by status id (comma separated for several).",
"type": "string"
},
"date_from": {
"description": "Transaction date from (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Transaction date to (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"sort_by": {
"description": "Sort column.",
"type": "string",
"enum": [
"trans_date",
"status_id",
"amount_after_tax",
"ref_number",
"memo"
]
},
"order_by": {
"description": "Sort direction.",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"due_date_from": {
"description": "Due date from (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"due_date_to": {
"description": "Due date to (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_get_purchase_invoice(id)
Get one purchase invoice with its line items. Kledo API: GET /finance/purchaseInvoices/{id}.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
],
"description": "Record id."
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_list_expenses(search, contact_id, status_id, date_from, date_to, ...)
List recorded expenses (biaya). Kledo API: GET /finance/expenses.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"description": "Free-text search.",
"type": "string"
},
"contact_id": {
"description": "Filter by contact id.",
"type": "string"
},
"status_id": {
"description": "Filter by status id (comma separated for several).",
"type": "string"
},
"date_from": {
"description": "Transaction date from (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Transaction date to (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"sort_by": {
"description": "Sort column.",
"type": "string",
"enum": [
"trans_date",
"status_id",
"amount_after_tax",
"ref_number",
"memo"
]
},
"order_by": {
"description": "Sort direction.",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_list_contacts(search, name, type_id, group_id, include_stats, ...)
List customers, vendors and other contacts with receivable/payable totals when requested. Kledo API: GET /finance/contacts.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"description": "Free-text search.",
"type": "string"
},
"name": {
"description": "Filter by contact name.",
"type": "string"
},
"type_id": {
"description": "Contact type id (customer, vendor, ...).",
"type": "string"
},
"group_id": {
"description": "Contact group id.",
"type": "string"
},
"include_stats": {
"description": "1 = include receivable/payable stats.",
"anyOf": [
{
"type": "number",
"const": 0
},
{
"type": "number",
"const": 1
}
]
},
"sort_by": {
"description": "Sort column.",
"type": "string",
"enum": [
"name",
"company",
"email",
"phone",
"type_id",
"payable",
"receivable"
]
},
"order_by": {
"description": "Sort direction.",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_get_contact(id, include_stats)
Get one contact with address, phone, email and (optionally) stats. Kledo API: GET /finance/contacts/{id}.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
],
"description": "Record id."
},
"include_stats": {
"description": "1 = include stats.",
"anyOf": [
{
"type": "number",
"const": 0
},
{
"type": "number",
"const": 1
}
]
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_list_products(search, search_column, stock_status, include_warehouse_qty, sort_by, ...)
List products and services with prices; optionally with stock per warehouse. Kledo API: GET /finance/products.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"description": "Free-text search.",
"type": "string"
},
"search_column": {
"description": "Column the search applies to.",
"type": "string",
"enum": [
"name",
"code",
"description"
]
},
"stock_status": {
"description": "Filter by stock level.",
"type": "string",
"enum": [
"available",
"empty",
"almost_empty"
]
},
"include_warehouse_qty": {
"description": "1 = include quantity per warehouse.",
"anyOf": [
{
"type": "number",
"const": 0
},
{
"type": "number",
"const": 1
}
]
},
"sort_by": {
"description": "Sort column.",
"type": "string",
"enum": [
"name",
"code",
"category_name",
"base_price",
"price",
"qty"
]
},
"order_by": {
"description": "Sort direction.",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_get_product(id)
Get one product or service with prices and settings. Kledo API: GET /finance/products/{id}.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
],
"description": "Record id."
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_list_accounts(search, include_balance, page, per_page)
List accounts of the chart of accounts, optionally with balances. Kledo API: GET /finance/accounts.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"description": "Free-text search.",
"type": "string"
},
"include_balance": {
"description": "1 = include account balance.",
"anyOf": [
{
"type": "number",
"const": 0
},
{
"type": "number",
"const": 1
}
]
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_get_bank_balances
Get the balance of every cash and bank account. Kledo API: GET /finance/bank/balances.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_list_bank_transactions(bank_account_id, search, date_from, date_to, page, ...)
List bank transactions (money in, money out, transfers). Kledo API: GET /finance/bankTrans.
Esquema de entrada
{
"type": "object",
"properties": {
"bank_account_id": {
"description": "Filter by bank account id.",
"type": "string"
},
"search": {
"description": "Free-text search.",
"type": "string"
},
"date_from": {
"description": "Date from (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Date to (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_report_profit_loss(date_from, date_to, type)
Profit and loss (laba rugi) for a period. Kledo API: GET /reportings/profitLoss.
Esquema de entrada
{
"type": "object",
"properties": {
"date_from": {
"description": "Period start (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Period end (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"type": {
"description": "Column breakdown.",
"type": "string",
"enum": [
"monthly",
"yearly",
"quarters",
"custom"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_report_balance_sheet(date)
Balance sheet (neraca) as of a date. Kledo API: GET /reportings/balanceSheet.
Esquema de entrada
{
"type": "object",
"properties": {
"date": {
"description": "As-of date (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_report_trial_balance(date_from, date_to)
Trial balance for a period. Kledo API: GET /reportings/trialBalance.
Esquema de entrada
{
"type": "object",
"properties": {
"date_from": {
"description": "Period start (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Period end (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_report_cash_flow(method, date_from, date_to)
Cash flow statement for a period (direct or indirect method). Kledo API: GET /reportings/cashFlow.
Esquema de entrada
{
"type": "object",
"properties": {
"method": {
"description": "Cash flow method.",
"type": "string",
"enum": [
"direct",
"indirect"
]
},
"date_from": {
"description": "Period start (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Period end (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_report_aged_receivable(date, page, per_page)
Unpaid customer invoices grouped by age. Kledo API: GET /reportings/agedReceivable.
Esquema de entrada
{
"type": "object",
"properties": {
"date": {
"description": "As-of date (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_report_aged_payable(date, page, per_page)
Unpaid vendor bills grouped by age. Kledo API: GET /reportings/agedPayable.
Esquema de entrada
{
"type": "object",
"properties": {
"date": {
"description": "As-of date (yyyy-mm-dd).",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"per_page": {
"description": "Results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢kledo_report_executive_summary(month, year)
Executive summary (revenue, cost, cash, receivables) for a month. Kledo API: GET /reportings/executiveSummary.
Esquema de entrada
{
"type": "object",
"properties": {
"month": {
"description": "Month number 1-12.",
"type": "string",
"pattern": "^(0?[1-9]|1[0-2])$"
},
"year": {
"description": "Four-digit year.",
"type": "string",
"pattern": "^\\d{4}$"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Comunidad
Evidencia