d6b74c42f6
Add dry-run-default connect dispatcher and per-integration scripts with gitignored local capability state, docs, and unit tests. Mutations require --apply and use nemohermes/openshell only.
2.0 KiB
2.0 KiB
QuickBooks Online
Status: Connect script implemented. Design: design/mcp-integrations.md.
- Agent path: local QBO MCP on Docker network with Hermes.
- Allow: P&L/reports, invoice/bill/vendor/customer read, company info.
- Deny: payment/bill_payment tools; write/update/delete off for MVP.
- Connect: operator
scripts/connect/connect-quickbooks.sh.
Connect procedure
# Preview (default)
./scripts/connect.sh quickbooks --dry-run
# Execute (prompts for credentials)
./scripts/connect.sh quickbooks --apply
What the script does
- Dry-run: Shows MCP image, container name, Docker network, allowed/denied tools.
- Apply:
- Prompts for QBO Client ID, Client Secret, Access Token, Realm ID.
- Stores credentials via
openshell provider set qbo-*. - Registers MCP server type via
nemohermes config set. - Applies tool allowlist (read-only) and denylist (payment/write tools).
- Records status in
.local/capability_state.json. - Provides guidance for starting the MCP container.
Owner steps (browser only)
- Create a QBO application at developer.intuit.com.
- Complete OAuth flow to obtain Client ID, Client Secret, and Access Token.
- Note the Realm ID (company ID).
- Provide credentials to the operator.
Tool filters
| Allowed (read) | Denied |
|---|---|
get_report |
create_payment |
search_invoice |
bill_payment |
get_invoice |
create_invoice |
search_bill |
update_invoice |
get_bill |
delete_invoice |
search_vendor |
create_bill |
get_vendor |
update_bill |
search_customer |
delete_bill |
get_customer |
|
get_company_info |
MCP container
The QBO MCP server runs as a Docker container on the same network as Hermes:
- Image:
ghcr.io/intuit/quickbooks-online-mcp-server:latest - Container:
lumina-qbo-mcp - Network:
lumina-network