# Yuki MCP by usefulapi (remote · yuki.usefulapi.io)

Read Yuki administrations, open invoices, ledger balances, contacts and documents.

- Trust score: 18/100 (low)
- Change this week: −45
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-06

## Components

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

## Channel facts

- Endpoint: `https://yuki.usefulapi.io/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.11.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-06.

- **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 Yuki MCP by usefulapi server?

Yuki MCP by usefulapi is a hosted endpoint at https://yuki.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-yuki 'https://yuki.usefulapi.io/mcp'
```

### Cursor

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

### VS Code

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

### Codex

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

### opencode

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

### OpenClaw

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

### Hermes

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

### Netclaw

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

### Vellum

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

### Other

```json
{
  "mcpServers": {
    "io-usefulapi-yuki": {
      "type": "http",
      "url": "https://yuki.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-06 (score 18, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

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

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

### 2026-10-31 (score 67, +4)

- [security improvement] Authorization: partial → pass
- [functional improvement] MCP protocol: fail → pass
- [functional] New prompt “chase_open_sales_invoices”
- [functional] New prompt “check_ledger_balances”
- [functional] New prompt “find_archived_documents”
- [functional] New prompt “report_net_revenue”
- [functional] New prompt “review_open_purchase_invoices”
- [functional] MCP protocol version: 2025-06-18 → 2025-11-25
- [functional] Server version: 1.7.0 → 1.9.0
- [functional] Server version: 1.6.0 → 1.7.0
- [functional] Server version: 1.5.2 → 1.6.0

### 2026-10-30 (score 63, 0)

- [functional] Server version: 1.5.1 → 1.5.2
- [functional] Server version: 1.5.0 → 1.5.1

### 2026-10-29 (score 63, 0)

- [functional] Server version: 1.4.0 → 1.5.0
- [functional] Server version: 1.3.0 → 1.4.0

### 2026-10-28 (score 63, +1)

- [functional] Server version: 1.1.0 → 1.3.0

### 2026-10-27 (score 62, 0)

- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: 1.0.0 → 1.1.0

### 2026-10-26 (score 62)

First indexed and scored.

## MCP tools (16)

### `yuki_list_domains` (~67 tokens)

List domains

List the Yuki domains (customer environments) this access key can reach: id, name and URL. Accountant keys reach many domains. Accounting.Domains.

Input parameters:

- `offset` (integer): Skip this many items (default 0). Use the previous reply's next_offset to read on.

### `yuki_list_administrations` (~83 tokens)

List administrations

List the administrations (companies with their own books) this access key can reach: id, name, address, Chamber of Commerce and VAT numbers, start date. Use the ids in the other tools. Accounting.Administrations.

Input parameters:

- `offset` (integer): Skip this many items (default 0). Use the previous reply's next_offset to read on.

### `yuki_list_outstanding_debtor_items` (~215 tokens)

List open sales invoices (debtors)

Open items on the debtors list (unpaid sales invoices): date, description, contact, open and original amount, reference, due date. Optionally within a date range. Accounting.OutstandingDebtorItems / OutstandingDebtorItemsByDate.

Input parameters:

- `administration_id` (string): Yuki administration id (from yuki_list_administrations). Optional when the key has a single administration.
- `end_date` (string): With start_date: end of the range (yyyy-mm-dd).
- `include_bank_transactions` (boolean): Also list unmatched bank transactions as open items (default false).
- `limit` (integer): Most items to return (default 100, max 500).
- `offset` (integer): Skip this many items (default 0). Use the previous reply's next_offset to read on.
- `sort_order` (string): Sort order (default DateDesc).
- `start_date` (string): With end_date: only items dated in this range (yyyy-mm-dd).

### `yuki_list_outstanding_creditor_items` (~213 tokens)

List open purchase invoices (creditors)

Open items on the creditors list (unpaid purchase invoices): date, description, contact, open and original amount, reference, due date. Optionally within a date range. Accounting.OutstandingCreditorItems / OutstandingCreditorItemsByDate.

Input parameters:

- `administration_id` (string): Yuki administration id (from yuki_list_administrations). Optional when the key has a single administration.
- `end_date` (string): With start_date: end of the range (yyyy-mm-dd).
- `include_bank_transactions` (boolean): Also list unmatched bank transactions as open items (default false).
- `limit` (integer): Most items to return (default 100, max 500).
- `offset` (integer): Skip this many items (default 0). Use the previous reply's next_offset to read on.
- `sort_order` (string): Sort order (default DateDesc).
- `start_date` (string): With end_date: only items dated in this range (yyyy-mm-dd).

### `yuki_get_gl_account_balance` (~129 tokens)

Get general ledger balances

The balance of every general ledger account of an administration on a date (yyyy-mm-dd): account code, description, amount. Accounting.GLAccountBalance.

Input parameters:

- `administration_id` (string): Yuki administration id (from yuki_list_administrations). Optional when the key has a single administration.
- `date` (string, required): Balance date, yyyy-mm-dd.
- `limit` (integer): Most items to return (default 100, max 500).
- `offset` (integer): Skip this many items (default 0). Use the previous reply's next_offset to read on.

### `yuki_list_gl_account_transactions` (~173 tokens)

List general ledger transactions

The transactions booked on one general ledger account in a date range: date, description, amount, contact, project. Get account codes from yuki_get_gl_account_scheme. Accounting.GLAccountTransactions.

Input parameters:

- `administration_id` (string): Yuki administration id (from yuki_list_administrations). Optional when the key has a single administration.
- `end_date` (string, required): Last day, yyyy-mm-dd.
- `gl_account_code` (string, required): General ledger account code, e.g. 80000.
- `limit` (integer): Most items to return (default 100, max 500).
- `offset` (integer): Skip this many items (default 0). Use the previous reply's next_offset to read on.
- `start_date` (string, required): First day, yyyy-mm-dd.

### `yuki_get_net_revenue` (~92 tokens)

Get net revenue

The net revenue (turnover) of an administration in a date range, by transaction date. Accounting.NetRevenue.

Input parameters:

- `administration_id` (string): Yuki administration id (from yuki_list_administrations). Optional when the key has a single administration.
- `end_date` (string, required): Last day, yyyy-mm-dd.
- `start_date` (string, required): First day, yyyy-mm-dd.

### `yuki_get_gl_account_scheme` (~123 tokens)

Get chart of accounts

The general ledger accounts (chart of accounts) of an administration: code, description, type. Use the codes in yuki_list_gl_account_transactions. AccountingInfo.GetGLAccountScheme.

Input parameters:

- `administration_id` (string): Yuki administration id (from yuki_list_administrations). Optional when the key has a single administration.
- `limit` (integer): Most items to return (default 100, max 500).
- `offset` (integer): Skip this many items (default 0). Use the previous reply's next_offset to read on.

### `yuki_list_projects` (~140 tokens)

List projects

Projects of an administration (code, description, company, contact, period, budgets), optionally filtered. AccountingInfo.GetProjects.

Input parameters:

- `administration_id` (string): Yuki administration id (from yuki_list_administrations). Optional when the key has a single administration.
- `limit` (integer): Most items to return (default 100, max 500).
- `offset` (integer): Skip this many items (default 0). Use the previous reply's next_offset to read on.
- `search_option` (string): Field to search in (default All).
- `search_value` (string): Text to search for (ignored for All).

### `yuki_search_contacts` (~232 tokens)

Search contacts

Search the contacts (customers and suppliers) of a domain by name, city, postcode, tag, email, website, phone, code, Chamber of Commerce number, VAT number or bank account. Returns at most 100 contacts per page; ask for the next page_number until the reply is empty. Contact.SearchContacts.

Input parameters:

- `active` (string): Active, inactive or both (default Both).
- `domain_id` (string): Yuki domain id (from yuki_list_domains). Optional when the key has a single domain.
- `offset` (integer): Skip this many contacts of the page (default 0). A long page is cut to fit the reply: use next_offset with the same page_number, then the next page_number.
- `page_number` (integer): Page number, starting at 1 (default 1). A page holds up to 100 contacts.
- `search_option` (string): Field to search in (default All).
- `search_value` (string): Text to search for. Empty lists all contacts.
- `sort_order` (string): Sort order (default Name).

### `yuki_list_document_folders` (~83 tokens)

List archive folders

The folders of the document archive (id, name). With an accountant key that reaches several domains, pass domain_id so the archive of that domain is read (default: the key's only domain). Archive.DocumentFolders.

Input parameters:

- `domain_id` (string): Yuki domain id (from yuki_list_domains). Optional when the key has a single domain.

### `yuki_list_document_folder_tabs` (~72 tokens)

List archive folder tabs

The tabs inside one archive folder (id, name). Archive.DocumentFolderTabs.

Input parameters:

- `domain_id` (string): Yuki domain id (from yuki_list_domains). Optional when the key has a single domain.
- `folder_id` (integer, required): Folder id from yuki_list_document_folders.

### `yuki_list_documents` (~288 tokens)

List archive documents

Documents in the archive (invoices, receipts, bank statements...) with id, subject, type, contact, dates, amount. Narrow by archive folder or by document type, and by creation date range. Page with number_of_records and start_record. Archive.Documents / DocumentsInFolder / DocumentsByType.

Input parameters:

- `document_type` (integer): Only this Yuki document type number. Not together with folder_id.
- `domain_id` (string): Yuki domain id (from yuki_list_domains). Optional when the key has a single domain.
- `end_date` (string): Last day, yyyy-mm-dd (default 2100-01-01).
- `folder_id` (integer): Only this archive folder (id from yuki_list_document_folders). Not together with document_type.
- `number_of_records` (integer): Documents per call (default 100, max 500).
- `offset` (integer): Skip this many documents of the fetched batch (default 0). A long batch is cut to fit the reply: use next_offset with the same arguments.
- `sort_order` (string): Sort order (default CreatedDesc).
- `start_date` (string): First day, yyyy-mm-dd (default 1990-01-01).
- `start_record` (integer): Offset of the first document (default 0). Add numberOfRecords to page on.

### `yuki_search_documents` (~272 tokens)

Search archive documents

Search archive documents by text in the creator, contact, subject, tag or type (or all). Optionally limit to a folder or tab and a date range. Archive.SearchDocuments.

Input parameters:

- `domain_id` (string): Yuki domain id (from yuki_list_domains). Optional when the key has a single domain.
- `end_date` (string): Last day, yyyy-mm-dd.
- `folder_id` (integer): Only this folder; -1 or omitted = all folders.
- `number_of_records` (integer): Documents per call (default 100, max 500).
- `offset` (integer): Skip this many documents of the fetched batch (default 0). A long batch is cut to fit the reply: use next_offset with the same arguments.
- `search_option` (string): Where to search (default All).
- `search_text` (string, required): Text to search for.
- `sort_order` (string): Sort order (default CreatedDesc).
- `start_date` (string): First day, yyyy-mm-dd. Omit with end_date to search all years.
- `start_record` (integer): Offset of the first document (default 0). Add numberOfRecords to page on.
- `tab_id` (integer): Only this tab; -1 or omitted = all tabs.

### `yuki_get_document` (~80 tokens)

Get document

Details of one archive document by id (subject, type, contact, dates, amounts, folder). Archive.FindDocument.

Input parameters:

- `document_id` (string, required): Yuki document id (the ID in a document list).
- `domain_id` (string): Yuki domain id (from yuki_list_domains). Optional when the key has a single domain.

### `yuki_get_document_download_url` (~90 tokens)

Get document download link

A presigned download URL for the file of one archive document (the link works for a short time; open it in a browser). Archive.DocumentDownloadUrl.

Input parameters:

- `document_id` (string, required): Yuki document id (the ID in a document list).
- `domain_id` (string): Yuki domain id (from yuki_list_domains). Optional when the key has a single domain.

## Diagnostics

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

## Score history

- 2026-11-06: 18
- 2026-11-05: 18
- 2026-11-04: 18
- 2026-11-03: 18
- 2026-11-02: 18
- 2026-11-01: 67
- 2026-10-31: 67
- 2026-10-30: 63
- 2026-10-29: 63
- 2026-10-28: 63
- 2026-10-27: 62
- 2026-10-26: 62

## Common questions

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

Yuki MCP by usefulapi is listed in the public MCP registry as io.usefulapi/yuki. Read Yuki administrations, open invoices, ledger balances, contacts and documents. This page covers its hosted endpoint (https://yuki.usefulapi.io/mcp).

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

Yuki 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 Yuki MCP by usefulapi server expose?

Yuki MCP by usefulapi exposes 16 tools: yuki_list_domains, yuki_list_administrations, yuki_list_outstanding_debtor_items, yuki_list_outstanding_creditor_items, yuki_get_gl_account_balance, and 11 more. Their descriptions and schemas cost roughly 2,352 tokens of context every time the server is loaded.

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

Its publisher declares no required credentials for Yuki 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 Yuki MCP by usefulapi server still maintained?

Yuki MCP by usefulapi is still listed as active in the MCP registry. We last reached this channel on 6 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 Yuki MCP by usefulapi server?

VerifyMCP ran 4 checks on Yuki 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 Yuki 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://yuki.usefulapi.io/mcp
- Repository: https://github.com/m190/usefulapi-mcp
- Website: https://usefulapi.io/yuki/
- Changelog RSS feed: https://verifymcp.io/servers/io-usefulapi-yuki/yuki.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-usefulapi-yuki/yuki/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/io-usefulapi-yuki/yuki.json
- HTML version of this page: https://verifymcp.io/servers/io-usefulapi-yuki/yuki
