关于 QuickBooks Online
QuickBooks Online 是面向 MCP 主机的服务,可用于处理 QuickBooks Online 业务记录。工具涵盖常见会计实体、报表和发票操作,包括创建与更新记录。
主要功能
- 01管理客户和供应商
- 02创建和更新发票
- 03列出并创建账单
- 04创建估算单
- 05运行查询和财务报表
- 06下载发票 PDF
适用场景
- 01创建或修改客户发票
- 02记录供应商账单和估算单
- 03查看财务报表和账户数据
MCP 相关
向 MCP 主机提供 21 个工具,用于查询 QuickBooks Online、获取记录和报表,以及管理客户、供应商、发票、账单和估算单。通过 OAuth 凭据配置访问。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @mindstone/mcp-server-quickbooksQUICKBOOKS_CLIENT_IDIntuit Developer app client IDQUICKBOOKS_CLIENT_SECRET密钥Intuit Developer app client secretQUICKBOOKS_REFRESH_TOKEN密钥OAuth 2.0 refresh tokenQUICKBOOKS_REALM_IDQuickBooks company (realm) IDQUICKBOOKS_ENVIRONMENTsandbox or productionMCP_HOST_BRIDGE_STATEOptional path to a host bridge state file used for credential managementMINDSTONE_REBEL_BRIDGE_STATEBackwards-compatible alias for MCP_HOST_BRIDGE_STATE本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
21收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| realmId | string | 是 | QuickBooks 公司 ID(Realm ID) |
| clientId | string | 是 | Intuit Developer 应用 Client ID |
| environment | enum | 否 | "sandbox" 或 "production"(默认值:production)sandbox | production |
| clientSecret | string | 是 | Intuit Developer 应用的客户端密钥 |
| refreshToken | string | 是 | 授权流程中的 OAuth2 刷新令牌 |
详细介绍
@mindstone/mcp-server-quickbooks
面向 Model Context Protocol 宿主的 QuickBooks Online MCP 服务。通过标准化的 MCP 接口管理 QuickBooks Online 中的发票、账单、客户、供应商、员工和账户。
状态
- 版本: 0.4.3 · npm
- 身份验证: OAuth (
QUICKBOOKS_REFRESH_TOKEN) - 工具: 21(客户、供应商、发票、账单、报价单、报告)
- 服务类型: cloud-api
- 机器可读:
STATUS.json
默认启用生产环境写入
每个会修改 QuickBooks 的工具
(create_quickbooks_invoice、create_quickbooks_bill、
create_quickbooks_customer、create_quickbooks_vendor、
create_quickbooks_estimate、send_quickbooks_invoice_email、
update_quickbooks_invoice、update_quickbooks_customer、
update_quickbooks_vendor)都会直接执行写入操作,无需选择启用:
此功能默认启用,宿主的工具审批层负责把关。只读工具(list_*、get_*、query_*、download_*、
configure_quickbooks)不受影响。
0.3.0–0.4.0 版本通过 QB_ALLOW_PROD_WRITES=1
环境变量限制这些写入操作。该限制现已移除;程序不再读取此变量,
可从宿主配置中删除。
要求
- Node.js 20+
- npm
一键安装
点击按钮后,宿主会提示你填写:QUICKBOOKS_CLIENT_ID、QUICKBOOKS_CLIENT_SECRET、QUICKBOOKS_REFRESH_TOKEN、QUICKBOOKS_REALM_ID、QUICKBOOKS_ENVIRONMENT。
Claude Desktop / Claude Code / Goose / Continue.dev 的手动配置(QuickBooks Online)
{
"mcpServers": {
"QuickBooks Online": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-quickbooks"
],
"env": {
"QUICKBOOKS_CLIENT_ID": "",
"QUICKBOOKS_CLIENT_SECRET": "",
"QUICKBOOKS_REFRESH_TOKEN": "",
"QUICKBOOKS_REALM_ID": "",
"QUICKBOOKS_ENVIRONMENT": "production"
}
}
}
}
快速开始
安装和构建
cd <path-to-repo>/connectors/quickbooks
npm install
npm run build
npx(发布后)
npx -y @mindstone/mcp-server-quickbooks
本地
node dist/index.js
配置
环境变量
QUICKBOOKS_CLIENT_ID— Intuit Developer 应用客户端 IDQUICKBOOKS_CLIENT_SECRET— Intuit Developer 应用客户端密钥QUICKBOOKS_REFRESH_TOKEN— OAuth 2.0 刷新令牌QUICKBOOKS_REALM_ID— QuickBooks 公司(realm)IDQUICKBOOKS_ENVIRONMENT—sandbox或production(默认值:production)MCP_HOST_BRIDGE_STATE— 主机桥接状态文件的可选路径,用于凭据管理MINDSTONE_REBEL_BRIDGE_STATE—MCP_HOST_BRIDGE_STATE的向后兼容别名
主机配置示例
Claude Desktop / Cursor
{
"mcpServers": {
"QuickBooks": {
"command": "npx",
"args": ["-y", "@mindstone/mcp-server-quickbooks"],
"env": {
"QUICKBOOKS_CLIENT_ID": "your-client-id",
"QUICKBOOKS_CLIENT_SECRET": "your-client-secret",
"QUICKBOOKS_REFRESH_TOKEN": "your-refresh-token",
"QUICKBOOKS_REALM_ID": "your-realm-id"
}
}
}
}
本地开发(无需发布到 npm)
{
"mcpServers": {
"QuickBooks": {
"command": "node",
"args": ["<path-to-repo>/connectors/quickbooks/dist/index.js"],
"env": {
"QUICKBOOKS_CLIENT_ID": "your-client-id",
"QUICKBOOKS_CLIENT_SECRET": "your-client-secret",
"QUICKBOOKS_REFRESH_TOKEN": "your-refresh-token",
"QUICKBOOKS_REALM_ID": "your-realm-id"
}
}
}
}
工具(21)
配置
configure_quickbooks— 配置 QuickBooks Online OAuth 凭据
查询
query_quickbooks— 使用 QuickBooks Query Language 运行 QuickBooks 查询get_quickbooks_entity— 按类型和 ID 获取单个实体
报表
get_quickbooks_report— 运行财务报表(ProfitAndLoss、BalanceSheet、CashFlow、AgedReceivables、AgedPayables)
客户
list_quickbooks_customers— 列出客户create_quickbooks_customer— 新建客户update_quickbooks_customer— 稀疏更新客户(使用active: false停用)
供应商
list_quickbooks_vendors— 列出供应商create_quickbooks_vendor— 新建供应商update_quickbooks_vendor— 稀疏更新供应商(使用active: false停用)
发票
list_quickbooks_invoices— 列出发票create_quickbooks_invoice— 新建发票update_quickbooks_invoice— 稀疏更新发票标题字段(dueDate、memo、privateNote)send_quickbooks_invoice_email— 将发票通过电子邮件发送给对应客户download_quickbooks_invoice_pdf— 将发票下载为 PDF(保存到系统临时目录)
报价单
list_quickbooks_estimates— 列出报价单(quotes)create_quickbooks_estimate— 新建报价单
账单
list_quickbooks_bills— 列出账单(应付账款)create_quickbooks_bill— 新建账单
员工
list_quickbooks_employees— 列出员工
科目
list_quickbooks_accounts— 列出会计科目表
不可信内容封装
QuickBooks 中的文本(客户/供应商显示名称、备注、行描述、报表单元格)可能受到攻击者影响,因此连接器会在将其返回给模型之前,将其封装在 <untrusted-content source="quickbooks:…"> 中。类型化实体载荷采用默认拒绝策略进行清理:除非键属于范围严格限定的结构性谓词(ID、SyncToken、日期/时间戳、枚举),且值通过形状检查,否则每个字符串都会被封装,包括数组中的字符串(它们没有键上下文)。query_quickbooks、get_quickbooks_entity 和报表会将每个字符串键和值整体封装。Id、SyncToken、日期和金额等结构性值保持原样,以便在后续调用中继续使用。
许可证
FSL-1.1-MIT — Functional Source License,Version 1.1,未来将采用 MIT 许可证。本软件将于 2030-04-08 转为 MIT 许可证。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。