laravelquickbooks是一个laravel软件包,通过http将quickbooks online作为mcp服务器暴露,支持11个实体共50个mcp工具实现完整crud操作;需php 8.2+、laravel 11+,依赖laravel/mcp和spinen/laravel-quickbooks-client。

LaravelQuickBooks ,是一个通过HTTP传输将QuickBooks Online(QBO)作为MCP服务器曝光的Laravel软件包。它在11个QBO实体中提供了50个MCP工具——客户、供应商、发票、账单、估算等——让人工智能代理能够在您的账簿上完成完整的CRUD操作。
该包需要 PHP 8.2+、Laravel 11+,并使用laravel/mcp用于协议层和spinen/laravel-quickbooks-client用于 QuickBooks API 访问。
自动输入身份识别
当人工智能代理引用实体时,可以使用可读取的字符名称,而不是 QuickBooks 内部 ID。该包会自动解析名称:
# Both of these work when creating a bill: vendor: "Office Depot" vendor: "42"
如果一个名称无法解析,该工具会返回一个描述性错误,提示相关搜索工具以找到正确的实体。
多租户隔离
每位经过身份验证的用户都会在一个账户中维护一个正在运行的 QuickBooks 连接quickbooks_connections桌子。ResolveQuickBooksRealm中间件会自动将每个工具调用到正确的公司——人工智能代理无需指定域名或公司ID:
Route::middleware([
'api',
'auth:api', // or 'sanctum'
ResolveQuickBooksRealm::class,
RefreshQuickBooksToken::class,
])->group(function () {
Mcp::server(QuickBooksServer::class)
->at(config('quickbooks-mcp.path'));
});
ARefreshQuickBooksToken中间件在OAuth代币过期前主动刷新,并设置可配置缓冲区(默认配置:5分钟)。
开始
安装该软件包并发布其资源:
composer require rajurayhan/laravel-quickbooks-mcp-server php artisan vendor:publish \ --provider="Raju\QuickBooksMcp\QuickBooksMcpServiceProvider" php artisan migrate
然后在 Intuit OAuth 中配置凭据.env:
QUICKBOOKS_CLIENT_ID=your_client_id QUICKBOOKS_CLIENT_SECRET=your_client_secret QUICKBOOKS_REDIRECT_URI=https://yourdomain.com/quickbooks/callback QUICKBOOKS_DATA_SOURCE=production










