# Kledo MCP by usefulapi (remote · kledo.usefulapi.io)

Read invoices, bills, contacts, bank balances and financial reports in Kledo.

- Trust score: 18/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `kledo.usefulapi.io`: 18/100 (this document), [markdown](https://verifymcp.io/servers/io-usefulapi-kledo/kledo.md), [page](https://verifymcp.io/servers/io-usefulapi-kledo/kledo)

## Channel facts

- Endpoint: `https://kledo.usefulapi.io/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.5.3`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 46/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.
  - HTTPS enforcement could not be verified: the plaintext port redirected somewhere other than https, so enforcement is unproven.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 0/100
  - Transport check failed: declared streamable-http, but the endpoint redirected instead of responding directly.
- **Schema Quality & AI Usability**: 0/100
  - Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Tool Safety**: 0/100
  - Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Capabilities**: 0/100
  - Capabilities not yet verified: we couldn't read the endpoint's capabilities.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### How do I install the Kledo MCP by usefulapi server?

Kledo MCP by usefulapi is a hosted endpoint at https://kledo.usefulapi.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http io-usefulapi-kledo 'https://kledo.usefulapi.io/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "io-usefulapi-kledo": {
      "url": "https://kledo.usefulapi.io/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "io-usefulapi-kledo": {
      "type": "http",
      "url": "https://kledo.usefulapi.io/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.io-usefulapi-kledo]
url = "https://kledo.usefulapi.io/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-usefulapi-kledo": {
      "type": "remote",
      "url": "https://kledo.usefulapi.io/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add io-usefulapi-kledo --url 'https://kledo.usefulapi.io/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  io-usefulapi-kledo:
    url: "https://kledo.usefulapi.io/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "io-usefulapi-kledo": {
      "Transport": "http",
      "Url": "https://kledo.usefulapi.io/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add io-usefulapi-kledo -t streamable-http -u 'https://kledo.usefulapi.io/mcp'
```

### Other

```json
{
  "mcpServers": {
    "io-usefulapi-kledo": {
      "type": "http",
      "url": "https://kledo.usefulapi.io/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-02 (score 18, −47)

- [security regression] Endpoint reachability: reachable → not serving MCP
- [security regression] Tool safety: pass → unverified
- [security regression] Authorization: pass → unverified
- [security regression] Stability: 0.03 → unverified
- [functional regression] Schema quality: 100 → unverified
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified

### 2026-11-01 (score 65, 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-10-31 (score 65)

First indexed and scored.

## MCP tools (21)

### `kledo_list_invoices` (~211 tokens)

List sales invoices

List sales invoices with contact, dates, amounts and status. Supports due-date and amount filters. Kledo API: GET /finance/invoices.

Input parameters:

- `amount_gte` (number): Minimum total after tax.
- `amount_lte` (number): Maximum total after tax.
- `contact_id` (string): Filter by contact id.
- `date_from` (string): Transaction date from (yyyy-mm-dd).
- `date_to` (string): Transaction date to (yyyy-mm-dd).
- `due_date_from` (string): Due date from (yyyy-mm-dd).
- `due_date_to` (string): Due date to (yyyy-mm-dd).
- `order_by` (string): Sort direction.
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.
- `sort_by` (string): Sort column.
- `status_id` (string): Filter by status id (comma separated for several).

### `kledo_get_invoice` (~42 tokens)

Get a sales invoice

Get one sales invoice with its line items, payments and contact. Kledo API: GET /finance/invoices/{id}.

Input parameters:

- `id` (required): Record id.

### `kledo_list_quotes` (~140 tokens)

List sales quotes

List sales quotes (penawaran). Kledo API: GET /finance/quotes.

Input parameters:

- `contact_id` (string): Filter by contact id.
- `date_from` (string): Transaction date from (yyyy-mm-dd).
- `date_to` (string): Transaction date to (yyyy-mm-dd).
- `order_by` (string): Sort direction.
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.
- `sort_by` (string): Sort column.
- `status_id` (string): Filter by status id (comma separated for several).

### `kledo_list_sales_orders` (~137 tokens)

List sales orders

List sales orders. Kledo API: GET /finance/orders.

Input parameters:

- `contact_id` (string): Filter by contact id.
- `date_from` (string): Transaction date from (yyyy-mm-dd).
- `date_to` (string): Transaction date to (yyyy-mm-dd).
- `order_by` (string): Sort direction.
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.
- `sort_by` (string): Sort column.
- `status_id` (string): Filter by status id (comma separated for several).

### `kledo_list_purchase_invoices` (~180 tokens)

List purchase invoices

List purchase invoices (vendor bills) with amounts and status. Kledo API: GET /finance/purchaseInvoices.

Input parameters:

- `contact_id` (string): Filter by contact id.
- `date_from` (string): Transaction date from (yyyy-mm-dd).
- `date_to` (string): Transaction date to (yyyy-mm-dd).
- `due_date_from` (string): Due date from (yyyy-mm-dd).
- `due_date_to` (string): Due date to (yyyy-mm-dd).
- `order_by` (string): Sort direction.
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.
- `sort_by` (string): Sort column.
- `status_id` (string): Filter by status id (comma separated for several).

### `kledo_get_purchase_invoice` (~40 tokens)

Get a purchase invoice

Get one purchase invoice with its line items. Kledo API: GET /finance/purchaseInvoices/{id}.

Input parameters:

- `id` (required): Record id.

### `kledo_list_expenses` (~141 tokens)

List expenses

List recorded expenses (biaya). Kledo API: GET /finance/expenses.

Input parameters:

- `contact_id` (string): Filter by contact id.
- `date_from` (string): Transaction date from (yyyy-mm-dd).
- `date_to` (string): Transaction date to (yyyy-mm-dd).
- `order_by` (string): Sort direction.
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.
- `sort_by` (string): Sort column.
- `status_id` (string): Filter by status id (comma separated for several).

### `kledo_list_contacts` (~144 tokens)

List contacts

List customers, vendors and other contacts with receivable/payable totals when requested. Kledo API: GET /finance/contacts.

Input parameters:

- `group_id` (string): Contact group id.
- `include_stats`: 1 = include receivable/payable stats.
- `name` (string): Filter by contact name.
- `order_by` (string): Sort direction.
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.
- `sort_by` (string): Sort column.
- `type_id` (string): Contact type id (customer, vendor, ...).

### `kledo_get_contact` (~56 tokens)

Get a contact

Get one contact with address, phone, email and (optionally) stats. Kledo API: GET /finance/contacts/{id}.

Input parameters:

- `id` (required): Record id.
- `include_stats`: 1 = include stats.

### `kledo_list_products` (~126 tokens)

List products

List products and services with prices; optionally with stock per warehouse. Kledo API: GET /finance/products.

Input parameters:

- `include_warehouse_qty`: 1 = include quantity per warehouse.
- `order_by` (string): Sort direction.
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.
- `search_column` (string): Column the search applies to.
- `sort_by` (string): Sort column.
- `stock_status` (string): Filter by stock level.

### `kledo_get_product` (~38 tokens)

Get a product

Get one product or service with prices and settings. Kledo API: GET /finance/products/{id}.

Input parameters:

- `id` (required): Record id.

### `kledo_list_accounts` (~77 tokens)

List chart of accounts

List accounts of the chart of accounts, optionally with balances. Kledo API: GET /finance/accounts.

Input parameters:

- `include_balance`: 1 = include account balance.
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.

### `kledo_get_bank_balances` (~35 tokens)

Get bank balances

Get the balance of every cash and bank account. Kledo API: GET /finance/bank/balances.

### `kledo_list_bank_transactions` (~110 tokens)

List bank transactions

List bank transactions (money in, money out, transfers). Kledo API: GET /finance/bankTrans.

Input parameters:

- `bank_account_id` (string): Filter by bank account id.
- `date_from` (string): Date from (yyyy-mm-dd).
- `date_to` (string): Date to (yyyy-mm-dd).
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.
- `search` (string): Free-text search.

### `kledo_report_profit_loss` (~73 tokens)

Profit and loss report

Profit and loss (laba rugi) for a period. Kledo API: GET /reportings/profitLoss.

Input parameters:

- `date_from` (string): Period start (yyyy-mm-dd).
- `date_to` (string): Period end (yyyy-mm-dd).
- `type` (string): Column breakdown.

### `kledo_report_balance_sheet` (~48 tokens)

Balance sheet report

Balance sheet (neraca) as of a date. Kledo API: GET /reportings/balanceSheet.

Input parameters:

- `date` (string): As-of date (yyyy-mm-dd).

### `kledo_report_trial_balance` (~57 tokens)

Trial balance report

Trial balance for a period. Kledo API: GET /reportings/trialBalance.

Input parameters:

- `date_from` (string): Period start (yyyy-mm-dd).
- `date_to` (string): Period end (yyyy-mm-dd).

### `kledo_report_cash_flow` (~73 tokens)

Cash flow report

Cash flow statement for a period (direct or indirect method). Kledo API: GET /reportings/cashFlow.

Input parameters:

- `date_from` (string): Period start (yyyy-mm-dd).
- `date_to` (string): Period end (yyyy-mm-dd).
- `method` (string): Cash flow method.

### `kledo_report_aged_receivable` (~72 tokens)

Aged receivable report

Unpaid customer invoices grouped by age. Kledo API: GET /reportings/agedReceivable.

Input parameters:

- `date` (string): As-of date (yyyy-mm-dd).
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.

### `kledo_report_aged_payable` (~72 tokens)

Aged payable report

Unpaid vendor bills grouped by age. Kledo API: GET /reportings/agedPayable.

Input parameters:

- `date` (string): As-of date (yyyy-mm-dd).
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page.

### `kledo_report_executive_summary` (~67 tokens)

Executive summary report

Executive summary (revenue, cost, cash, receivables) for a month. Kledo API: GET /reportings/executiveSummary.

Input parameters:

- `month` (string): Month number 1-12.
- `year` (string): Four-digit year.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/io-usefulapi-kledo/kledo#diagnostics

## Score history

- 2026-11-05: 18
- 2026-11-04: 18
- 2026-11-03: 18
- 2026-11-02: 18
- 2026-11-01: 65
- 2026-10-31: 65

## Common questions

### What is the Kledo MCP by usefulapi server?

Kledo MCP by usefulapi is listed in the public MCP registry as io.usefulapi/kledo. Read invoices, bills, contacts, bank balances and financial reports in Kledo. This page covers its hosted endpoint (https://kledo.usefulapi.io/mcp).

### Is the Kledo MCP by usefulapi server safe to use?

Kledo MCP by usefulapi scores 18 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Kledo MCP by usefulapi server expose?

Kledo MCP by usefulapi exposes 21 tools: kledo_list_invoices, kledo_get_invoice, kledo_list_quotes, kledo_list_sales_orders, kledo_list_purchase_invoices, and 16 more. Their descriptions and schemas cost roughly 1,939 tokens of context every time the server is loaded.

### Does the Kledo MCP by usefulapi server require authentication?

Its publisher declares no required credentials for Kledo MCP by usefulapi. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.

### Is the Kledo MCP by usefulapi server still maintained?

Kledo MCP by usefulapi is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What did VerifyMCP test on the Kledo MCP by usefulapi server?

VerifyMCP ran 4 checks on Kledo MCP by usefulapi, covering TLS certificate, HSTS header, DNSSEC and Transport. 7 items could not be completed, a gap on our side rather than a finding about Kledo MCP by usefulapi: Authorization, HTTPS, Schema quality, Stability and 3 more. 5 categories score 0 for that reason, because we only credit what we can confirm. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- Remote endpoint: https://kledo.usefulapi.io/mcp
- Repository: https://github.com/m190/usefulapi-mcp
- Website: https://usefulapi.io/kledo/
- Changelog RSS feed: https://verifymcp.io/servers/io-usefulapi-kledo/kledo.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-usefulapi-kledo/kledo/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/io-usefulapi-kledo/kledo.json
- HTML version of this page: https://verifymcp.io/servers/io-usefulapi-kledo/kledo
