Yuki MCP by usefulapi
io.usefulapi/yukiusefulapi.iostreamable-httpv1.0.0Scanned
Read Yuki administrations, open invoices, ledger balances, contacts and documents.
16 tools: 2 change things and 14 only read.
- Reads private data · 11
- Reads text others write · 16
- Can send data out · 0
- 2 findings
Anlyon alternative
2 of these tools change something. Run those as governed actions.
Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.
Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.
Import an OpenAPI spec →Tools
Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.
16 tools
Changes things 2Claude Code: ask
yuki_list_outstanding_creditor_itemsOpen items on the creditors list (unpaid purchase invoices): date, description, contact, open and original amount, reference, due date.Reads private dataReads text others write1 finding
Why it is in this group
- The name "yuki_list_outstanding_creditor_items" says "list": a word for reading.
- The description's first verb is "open": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- private-dataThe description's first sentence says "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Findings
- Warn
The server marks "yuki_list_outstanding_creditor_items" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "yuki_list_outstanding_creditor_items" says "list": a word for reading.
Description, as the server wrote it 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.
Annotations the server declares
- title: List open purchase invoices
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_list_outstanding_debtor_itemsOpen items on the debtors list (unpaid sales invoices): date, description, contact, open and original amount, reference, due date.Reads private dataReads text others write1 finding
Why it is in this group
- The name "yuki_list_outstanding_debtor_items" says "list": a word for reading.
- The description's first verb is "open": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- private-dataThe description's first sentence says "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Findings
- Warn
The server marks "yuki_list_outstanding_debtor_items" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "yuki_list_outstanding_debtor_items" says "list": a word for reading.
Description, as the server wrote it 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.
Annotations the server declares
- title: List open sales invoices
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
Only reads 14Show 14 read-only tools
yuki_get_documentDetails of one archive document by id (subject, type, contact, dates, amounts, folder).Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_get_document" says "get": a word for reading.
What it can reach
- private-dataThe name "yuki_get_document" says "get" and "document": it reads documents.
- private-dataThe description's first sentence says "document": it reads documents.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Details of one archive document by id (subject, type, contact, dates, amounts, folder). Archive.FindDocument.
Annotations the server declares
- title: Get document
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_get_document_download_urlA presigned download URL for the file of one archive document (the link works for a short time; open it in a browser).Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_get_document_download_url" says "get": a word for reading.
What it can reach
- private-dataThe name "yuki_get_document_download_url" says "get" and "document": it reads documents.
- private-dataThe description's first sentence says "file": it reads files.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe name "yuki_get_document_download_url" says "get" and "url": it reads web pages, which anyone can write.
- untrusted-inputThe description's first sentence says "url": it reads web pages, which anyone can write.
Description, as the server wrote it 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.
Annotations the server declares
- title: Get document download link
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_get_gl_account_balanceThe balance of every general ledger account of an administration on a date (yyyy-mm-dd): account code, description, amount.Reads text others writeNo findings
Why it is in this group
- The name "yuki_get_gl_account_balance" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it The balance of every general ledger account of an administration on a date (yyyy-mm-dd): account code, description, amount. Accounting.GLAccountBalance.
Annotations the server declares
- title: Get general ledger balances
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_get_gl_account_schemeThe general ledger accounts (chart of accounts) of an administration: code, description, type.Reads text others writeNo findings
Why it is in this group
- The name "yuki_get_gl_account_scheme" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it The general ledger accounts (chart of accounts) of an administration: code, description, type. Use the codes in yuki_list_gl_account_transactions. AccountingInfo.GetGLAccountScheme.
Annotations the server declares
- title: Get chart of accounts
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_get_net_revenueThe net revenue (turnover) of an administration in a date range, by transaction date.Reads text others writeNo findings
Why it is in this group
- The name "yuki_get_net_revenue" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it The net revenue (turnover) of an administration in a date range, by transaction date. Accounting.NetRevenue.
Annotations the server declares
- title: Get net revenue
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_list_administrationsList the administrations (companies with their own books) this access key can reach: id, name, address, Chamber of Commerce and VAT numbers, start date.Reads text others writeNo findings
Why it is in this group
- The name "yuki_list_administrations" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- title: List administrations
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_list_document_folder_tabsThe tabs inside one archive folder (id, name).Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_list_document_folder_tabs" says "list": a word for reading.
What it can reach
- private-dataThe name "yuki_list_document_folder_tabs" says "list" and "document": it reads documents.
- private-dataThe description's first sentence says "folder": it reads files.
- private-dataThe input names a folder (input.folder_id), and the tool reads: it reads files.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it The tabs inside one archive folder (id, name). Archive.DocumentFolderTabs.
Annotations the server declares
- title: List archive folder tabs
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_list_document_foldersThe folders of the document archive (id, name).Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_list_document_folders" says "list": a word for reading.
What it can reach
- private-dataThe name "yuki_list_document_folders" says "list" and "document": it reads documents.
- private-dataThe description's first sentence says "folder": it reads files.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- title: List archive folders
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_list_documentsDocuments in the archive (invoices, receipts, bank statements...) with id, subject, type, contact, dates, amount.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_list_documents" says "list": a word for reading.
What it can reach
- private-dataThe name "yuki_list_documents" says "list" and "document": it reads documents.
- private-dataThe description's first sentence says "document": it reads documents.
- private-dataThe input names a folder (input.folder_id), and the tool reads: it reads files.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- title: List archive documents
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_list_domainsList the Yuki domains (customer environments) this access key can reach: id, name and URL.Reads text others writeNo findings
Why it is in this group
- The name "yuki_list_domains" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "list" and "url": it reads web pages, which anyone can write.
Description, as the server wrote it List the Yuki domains (customer environments) this access key can reach: id, name and URL. Accountant keys reach many domains. Accounting.Domains.
Annotations the server declares
- title: List domains
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_list_gl_account_transactionsThe transactions booked on one general ledger account in a date range: date, description, amount, contact, project.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_list_gl_account_transactions" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- title: List general ledger transactions
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_list_projectsProjects of an administration (code, description, company, contact, period, budgets), optionally filtered.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_list_projects" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Projects of an administration (code, description, company, contact, period, budgets), optionally filtered. AccountingInfo.GetProjects.
Annotations the server declares
- title: List projects
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_search_contactsSearch 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.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_search_contacts" says "search": a word for reading.
What it can reach
- private-dataThe name "yuki_search_contacts" says "search" and "contact": it reads contacts.
- private-dataThe description's first sentence says "search" and "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "search" and "email": it reads inbound email, which other people can write.
Description, as the server wrote it 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.
Annotations the server declares
- title: Search contacts
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
yuki_search_documentsSearch archive documents by text in the creator, contact, subject, tag or type (or all).Reads private dataReads text others writeNo findings
Why it is in this group
- The name "yuki_search_documents" says "search": a word for reading.
What it can reach
- private-dataThe name "yuki_search_documents" says "search" and "document": it reads documents.
- private-dataThe description's first sentence says "search" and "document": it reads documents.
- private-dataThe input names a folder (input.folder_id), and the tool reads: it reads files.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it 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.
Annotations the server declares
- title: Search archive documents
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged outbound.
- Reads private data11
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write16
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- yuki_get_document
- yuki_get_document_download_url
- yuki_get_gl_account_balance
- yuki_get_gl_account_scheme
- yuki_get_net_revenue
- yuki_list_administrations
- yuki_list_document_folder_tabs
- yuki_list_document_folders
- yuki_list_documents
- yuki_list_domains
- yuki_list_gl_account_transactions
- yuki_list_outstanding_creditor_items
- and 4 more
- Can send data out0
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Findings
Matches of fixed checks, with the text they matched.
The server marks "yuki_list_outstanding_debtor_items" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "yuki_list_outstanding_debtor_items" says "list": a word for reading.
The server marks "yuki_list_outstanding_creditor_items" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "yuki_list_outstanding_creditor_items" says "list": a word for reading.
History
Changes to its tool definitions and to its remote endpoint, newest first.
No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http yuki https://yuki.usefulapi.io/mcpclaude mcp add --transport http yuki https://yuki.usefulapi.io/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__yuki__yuki_list_domains",
"mcp__yuki__yuki_list_administrations",
"mcp__yuki__yuki_get_gl_account_balance",
"mcp__yuki__yuki_list_gl_account_transactions",
"mcp__yuki__yuki_get_net_revenue",
"mcp__yuki__yuki_get_gl_account_scheme",
"mcp__yuki__yuki_list_projects",
"mcp__yuki__yuki_search_contacts",
"mcp__yuki__yuki_list_document_folders",
"mcp__yuki__yuki_list_document_folder_tabs",
"mcp__yuki__yuki_list_documents",
"mcp__yuki__yuki_search_documents",
"mcp__yuki__yuki_get_document",
"mcp__yuki__yuki_get_document_download_url"
],
"ask": [
"mcp__yuki__yuki_list_outstanding_debtor_items",
"mcp__yuki__yuki_list_outstanding_creditor_items"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as yuki. Review it before you use it.
Capability tags behind 16 rules
- mcp__yuki__yuki_list_domains untrusted-input
- mcp__yuki__yuki_list_administrations untrusted-input
- mcp__yuki__yuki_list_outstanding_debtor_items private-data, untrusted-input
- mcp__yuki__yuki_list_outstanding_creditor_items private-data, untrusted-input
- mcp__yuki__yuki_get_gl_account_balance untrusted-input
- mcp__yuki__yuki_list_gl_account_transactions private-data, untrusted-input
- mcp__yuki__yuki_get_net_revenue untrusted-input
- mcp__yuki__yuki_get_gl_account_scheme untrusted-input
- mcp__yuki__yuki_list_projects private-data, untrusted-input
- mcp__yuki__yuki_search_contacts private-data, untrusted-input
- mcp__yuki__yuki_list_document_folders private-data, untrusted-input
- mcp__yuki__yuki_list_document_folder_tabs private-data, untrusted-input
- mcp__yuki__yuki_list_documents private-data, untrusted-input
- mcp__yuki__yuki_search_documents private-data, untrusted-input
- mcp__yuki__yuki_get_document private-data, untrusted-input
- mcp__yuki__yuki_get_document_download_url private-data, untrusted-input
Pin
Keep the decision: fail CI when the tools change, follow every change, or show a badge.
Pin in CI
Fail a build when the tools you reviewed are not the tools the server serves today.
curl -s "https://anlyon.dev/api/v1/servers/io.usefulapi/yuki/verify?hash=0cf66b422c2caf4cfe62542c01a153208de9d1943ea9cb6d47322f4c6dba7989" | jq -e '.changed == false'Pinned hash 0cf66b422c2c, from Oct 26, 2026, 01:17 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/io.usefulapi/yuki/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/io.usefulapi/yuki)Source: MCP Registry · repository. Synced Oct 26, 2026, 01:17 UTC.