Token导航 LogoToken导航

MCP Server · AI代理

yuki MCP

一个连接AI代理与Yuki会计系统的MCP服务器,通过SOAP API实现会计数据交互。

未说明官方级别未说明来源级核验工具 30
TypeScriptClaudeAI代理

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
CodeMill-Solutions
提供方
CodeMill-Solutions

工具数量

30

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

4

仓库热度

收录来源

1 个

MCP World

选型结论

yuki MCP 属于AI代理类 MCP Server,公开资料标注 30 个工具,通过传输方式未标注接入,适配 Claude,没有现成的安装命令;接入前要先准备 API Key。

分类

AI代理

传输方式

未说明

认证方式

API Key

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 30 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

小雪

A. 模型上下文协议 将AI代理连接到的(MCP)服务器 由纪 通过Yuki的SOAP API进行会计。

使用Node.js、TypeScript和 @modelcontextprotocol/sdk.

______________________________________________________________________

安装

npm install @codemill-solutions/yuki-mcp

然后将其添加到MCP主机配置中(例如。 claude_desktop_config.json):

{
  "mcpServers": {
    "yuki": {
      "command": "node",
      "args": ["node_modules/@codemill-solutions/yuki-mcp/dist/index.js"],
      "env": {
        "YUKI_API_KEY": "your-api-key-here",
        "YUKI_DOMAIN_ID": "your-administration-guid-here"
      }
    }
  }
}

______________________________________________________________________

先决条件

  • Node.js 20+
  • 启用API访问的Yuki帐户
  • 您的Yuki API密钥(Yuki→ 设置→ API)

______________________________________________________________________

设置

1.安装依赖项

npm install

2.配置环境变量

cp .env.example .env

编辑 .env:

YUKI_API_KEY=your-api-key-here
YUKI_DOMAIN_ID=your-administration-guid-here  # optional at startup

YUKI_DOMAIN_ID 可以留空——服务器在没有它的情况下启动。调用 get_administrations 要发现正确的GUID,请通过 administrationId 单个工具上的参数。

3.建造

npm run build

4.连接到MCP主机

添加到MCP主机配置中(例如。 claude_desktop_config.json):

{
  "mcpServers": {
    "yuki": {
      "command": "node",
      "args": ["/absolute/path/to/yuki-mcp/dist/index.js"],
      "env": {
        "YUKI_API_KEY": "your-api-key-here",
        "YUKI_DOMAIN_ID": "your-administration-guid-here"
      }
    }
  }
}

______________________________________________________________________

多管理支持

如果你能做到 多届Yuki政府 (每个都有自己的API密钥),您可以提供一个JSON文件,该文件映射 administrationId 到其对应的API密钥。然后,服务器会自动对每次管理进行身份验证,不需要单个共享密钥。

密钥文件格式

{
  "a1b2c3d4-0000-0000-0000-000000000001": "api-key-for-admin-1",
  "a1b2c3d4-0000-0000-0000-000000000002": "api-key-for-admin-2"
}

路径解析(第一场比赛获胜)

优先级路径
1YUKI_API_KEYS_FILE 环境变量(显式路径)
2~/.yuki/api-keys.json (默认用户级位置)
3./api-keys.json (当地发展后备方案)

环境变量

YUKI_API_KEYS_FILE=/path/to/your/api-keys.json

当存在密钥文件时, YUKI_API_KEY 变为可选--文件密钥用于所有特定于管理的工具调用,以及 YUKI_API_KEY (如果设置)作为不针对特定管理的工具的后备方案(例如。 get_administrations).

如果两者都没有 YUKI_API_KEY 启动时找不到密钥文件,服务器会记录一个警告,但会继续运行——工具在调用时会返回一个错误。

______________________________________________________________________

可用工具(30)

行政部门

工具说明
get_administrations列出此API密钥的所有管理机构(公司)。 先运行这个 找到正确的 administrationId.
get_administration_id按确切名称查找管理的GUID。当您知道名称但不知道GUID时很有用。

关系

工具关键参数说明
search_relationssearchValue, searchOption?, active?, pageNumber?按名称、代码、增值税号、电子邮件等搜索客户和供应商。每页最多返回100个结果。
upsert_contactfullName, contactCode?, contactType?,…创建或更新联系人。当 contactCode 匹配更新的现有记录;否则创建新联系人。

销货

工具关键参数说明
get_sales_invoicesdateOutstanding?, sortOrder?, includeBankTransactions?检索未付的销售发票。
process_sales_invoicereference, subject, date, dueDate, contact, lines创建并预订新的销售发票。可选择将其通过电子邮件发送给客户。

购货发票

工具关键参数说明
get_missing_invoices--检索仍需要匹配的购买发票的银行付款--相当于“Postbus”→ Yuki网络界面中的“Ontbrekende manufacturer”
get_purchase_invoicesdateOutstanding?, sortOrder?, includeBankTransactions?检索未付的采购发票。
process_purchase_invoicedate, invoiceAmount, invoiceVatAmount, contact, lines预订进货发票。接受可选的base64格式的PDF。

交易和银行

工具关键参数说明
get_transactionsglAccountCode, startDate, endDate检索日期范围内总账账户(如银行账户)的日记账分录。使用 get_gl_accounts 找到正确的代码。
get_transaction_detailsreference检查未完成的项目是否仍然存在,并检索其当前状态。
process_journalsubject, entries[]发表一篇普通日记(回忆录)。所有输入金额的总和必须恰好为0。用于银行对账、更正和自定义预订。

会计

工具关键参数说明
get_gl_accountsdate?检索给定日期的所有总账账户及其余额(商业视图)。调用前使用此功能查找帐户代码 get_transactions.
get_gl_accounts_fiscaldate?与 get_gl_accounts 但包括财政调整。用于必须与Yuki的财务报告相匹配的资产负债表和损益表视图。
get_net_revenuestartDate, endDate, fiscal?检索日期范围内的净收入(netto omzet)。集 fiscal=true 包括财政修正。

会计信息

从中获得更丰富的只读视图 AccountingInfo.asmx 服务——标准不提供 Accounting.asmx.

工具关键参数说明
get_gl_account_scheme--检索完整的总账科目方案(rekeningschema):所有具有类型、子类型、描述和活动/非活动状态的代码。用于验证总账代码或构建账户选择器。
get_period_tableyearId检索一年的会计期间表:期间编号、名称和日期范围。用于将交易日期转换为人类可读的报告期间名称。
get_gl_transactions_detailedstartDate, endDate, glAccountCode?, financialMode?详细的交易列表,包括文档类型、存档文件夹、会计期间ID、项目代码和突变用户。比更完整 get_transactions.离开 glAccountCode 所有帐户均为空。
get_transaction_documenttransactionId以base64格式下载已预订交易的源PDF。使用 id 或 hID 从 get_gl_transactions_detailed.
get_start_balancesyearId, financialMode?检索一个会计年度每个总账账户的期初余额(beginbalansen)。

文件

工具关键参数说明
upload_documentfileName, dataBase64, folder?, amount?通过将PDF的内容以base64字符串的形式传递,将其上传到Yuki存档。使用 get_document_folders 首先找到正确的文件夹ID
upload_document_from_pathfilePath, fileName?, folder?, amount?从本地文件路径上传PDF。在内部读取和编码文件——优先于 upload_document 当文件在磁盘上可用时。上传前验证文件是否存在并且是有效的PDF。
get_document_folders--列出管理中可用的所有存档文件夹。
list_documentsfolderId列出特定存档文件夹中的文档。返回文档ID、文件名、日期和金额。
search_documentssearchText对所有存档文档(文件名、金额、OCR内容)进行全文搜索。
get_documentdocumentId按ID(名称、文件夹、日期、金额、状态)检索单个存档文档的元数据。
download_documentdocumentId以base64编码字符串的形式下载存档文档
get_cost_categories--列出可用的总账成本类别,用作 costCategory 上传工具中的参数。

后台办公室

工具关键参数说明
get_workflowadministrationId?检索后台工作流程项目——无法自动处理并等待会计审查的文档。
get_outstanding_questionsadministrationId?在处理相关文件之前,检索会计师提出的需要回复的未决问题。

______________________________________________________________________

测试

选项1-MCP检查员(工具级,无LLM)

npm run inspect

在以下位置打开浏览器UI http://localhost:5173 在那里,您可以调用单个工具并检查原始响应。

选项2——代理测试工具(带Claude)

运行一个完整的代理循环:Claude对任务进行推理,调用工具,并返回最终答案——就像AI代理使用此MCP一样。

将您的Anthropic API密钥添加到 .env:

ANTHROPIC_API_KEY=sk-ant-...

然后运行一个场景:

npm run agent                                              # default: get_administrations
npm run agent -- --scenario outstanding-invoices
npm run agent -- --scenario search-relations --arg "Bedrijf BV"
npm run agent -- --scenario gl-accounts
npm run agent -- --scenario bank-transactions --arg "1200"
npm run agent -- --scenario full-workflow

可用场景: get-administrations, search-relations, outstanding-invoices, outstanding-payables, gl-accounts, bank-transactions, full-workflow.

______________________________________________________________________

建筑

src/
├── index.ts                  # Entry point — loads env + keys file, registers tools, starts stdio transport
├── yuki-client.ts            # SOAP client: per-key session cache, envelope builder, axios HTTP, fast-xml-parser
└── tools/
    ├── administrations.ts    # get_administrations, get_administration_id
    ├── relations.ts          # search_relations, upsert_contact
    ├── invoices.ts           # get_sales_invoices, get_purchase_invoices,
    │                         # process_sales_invoice, process_purchase_invoice
    ├── transactions.ts       # get_transactions, get_transaction_details, process_journal
    ├── accounting.ts         # get_gl_accounts, get_gl_accounts_fiscal, get_net_revenue
    ├── accounting-info.ts    # get_gl_account_scheme, get_period_table,
    │                         # get_gl_transactions_detailed, get_transaction_document,
    │                         # get_start_balances, get_missing_invoices
    ├── documents.ts          # upload_document, upload_document_from_path,
    │                         # get_document_folders, list_documents, search_documents,
    │                         # get_document, download_document, get_cost_categories
    └── backoffice.ts         # get_workflow, get_outstanding_questions

scripts/
└── test-agent.ts             # Agent test harness (Claude + MCP client loop)

认证流程

Yuki使用两步身份验证模式:

  1. Authenticate(accessKey) → 返回临时 sessionID
  2. 所有后续通话都包括 sessionID

YukiClient.getSessionID(adminId?) 透明地处理这个问题。当与A通话时 administrationId,它从加载的密钥映射中解析匹配的API密钥。在进程的生命周期内,每个API键缓存会话ID- Authenticate 每个键只调用一次,而不是每个工具调用一次。

注: Yuki服务中的参数大小写不同-- sessionId (小写d)on Sales.asmx 和 Purchase.asmx; sessionID (大写D)on Accounting.asmx, AccountingInfo.asmx, Contact.asmx,以及 Archive.asmx。这是按工具处理的。

XML文档

编写工具(process_sales_invoice, process_purchase_invoice, process_journal, upsert_contact)将结构化数据作为XML字符串传递给Yuki xmlDoc SOAP参数。这 XmlValue 包装器确保此XML原始嵌入(不是实体编码)在SOAP信封中。所有用户提供的值都是通过XML转义的 escapeXml().

______________________________________________________________________

费率限制

Yuki执行 每天1000个API请求 (可升级至5000至10000)。每次工具调用都是一个请求。会话ID已缓存,因此 Authenticate 每个服务器进程每个API键只调用一次,而不是每个工具调用一次。

设计代理工作流,一次性获取广泛列表并从代理的上下文窗口引用它们,而不是在每一步都重新获取。

______________________________________________________________________

故障排除

错误可能原因
SOAP Fault: Authentication failedYUKI_API_KEY 不正确或在Yuki设置中未启用API访问
No API key found for administration …The administrationId 传递给工具的密钥不在加载的密钥文件中--检查 YUKI_API_KEYS_FILE
SOAP Fault: Administration not found错了 administrationId --奔跑 get_administrations 获取正确的GUID
Journal entries do not balance金额 process_journal 总和不等于0——检查借记/贷记标志
HTTP 500 from api.yukiworks.nl通常是错误的XML命名空间或格式错误 xmlDoc --在以下位置检查WSDL https://api.yukiworks.nl/ws/{Service}.asmx?wsdl
File does not appear to be a PDF文件位于 filePath 不以开头 %PDF magic bytes--检查您是否指向有效的PDF
File not foundfilePath 传递给 upload_document_from_path 不存在或无法访问
Network error没有连接到 api.yukiworks.nl --请求在30秒后超时

______________________________________________________________________

关于CodeMill解决方案

CodeMill解决方案 是一家总部位于荷兰的荷兰软件公司。我们构建智能、可扩展和定制的解决方案,帮助组织发展、优化流程并实现其数字化目标。

我们的服务包括:

  • 定制应用 --门户、仪表板、业务软件和真正增值的完全定制的平台。
  • API集成 -通过智能API连接将您的应用程序与其他系统和外部平台连接。
  • 移动应用 --iOS和Android应用程序作为web应用程序的逻辑扩展。

yuki-mcp 是我们的开源集成之一,使Yuki的会计平台可以通过模型上下文协议供人工智能代理访问。

📧 info@codemill.dev 🌐 codemill.dev 💼 领英 🐙

______________________________________________________________________

许可证

麻省理工学院——见 许可证.

工具与能力

工具数量

30

资源数量

0

提示词数量

0

能力标签

会计自动化TypeScript本地部署SOAPAPIAI代理集成财务数据管理多账户支持

支持客户端

Claude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

多步任务编排

把拆解、检索、执行串成一条链,模型按步骤调用工具。

长期上下文

把会话、笔记和知识放到外部存储,换个会话还能接着做。

接自有流程

把内部系统和模型连起来,让助手调用已有的工作流。

选择建议

值得选的地方

  • 工具数量 30 个,一次接入能覆盖的操作比单点工具更全。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 需要自备API Key,没有凭据没法直接试。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。

更适合

  • 需要在AI代理场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 暂时拿不到API Key的人。
  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
yuki MCP

MCP World · 本页

30未说明未标注1 个2026-05-17
Everything Claude Code

MCP World

0stdio有1 个2026-05-17
Filesystem 560c4363

MCP World

13未说明未标注2 个2026-05-17
Time 7365cb6d

MCP.so

2SSE有2 个2026-05-17
Server Everything (everything)

MCP World

11stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

yuki MCP 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

yuki MCP 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

yuki MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

yuki MCP 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

yuki MCP 支持哪些客户端?

公开资料标注支持 Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

来源标签

会计自动化TypeScript本地部署SOAPAPIAI代理集成财务数据管理多账户支持

来源分类路径

会计自动化

继续浏览同类 MCP