DataSinking vs Quickbooks MCP

A side-by-side look at the DataSinking and Quickbooks MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

DataSinking logoDataSinkingFinance & Fintech · Local subprocess (stdio)Full-text Asian financial reports (China, Korea, Japan) as clean Markdown — 6 tools for RAG agents.67GreatAuth: api key requiredQuickbooks MCP logoQuickbooks MCPFinance & Fintech · Local subprocess (stdio)MCP server for QuickBooks Online API integration64GoodAuth: oauth 2.0

Verdict: choose DataSinking for finance & fintech work as a local process; choose Quickbooks MCP for finance & fintech as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

DataSinking logoChoose DataSinking when

  • You need dedicated capabilities in the Finance & Fintech domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: API key required.
  • You have the keys it needs: DATASINK_API_KEY.
  • You want tools like list_exchanges, list_stocks, list_reports.
Explore DataSinking

Quickbooks MCP logoChoose Quickbooks MCP when

  • You need dedicated capabilities in the Finance & Fintech domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: OAuth 2.0.
  • You have the keys it needs: QBO_CREDENTIAL_MODE, QBO_CLIENT_ID, QBO_CLIENT_SECRET, QBO_CREDENTIAL_FILE, QBO_INLINE_OUTPUT, QBO_SANDBOX, AWS_REGION, QBO_SECRET_NAME.
  • You want tools like qbo_authenticate, get_company_info, query.
Explore Quickbooks MCP

Feature & specification comparison

Rows where the two servers differ are marked.

SpecDataSinking logoDataSinkingQuickbooks MCP logoQuickbooks MCP
CategoryFinance & FintechFinance & Fintech
Quality signal67/100 · Great64/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthAPI key requiredOAuth 2.0
PricingNot declaredNot declared
Required env varsDATASINK_API_KEYQBO_CREDENTIAL_MODEQBO_CLIENT_IDQBO_CLIENT_SECRETQBO_CREDENTIAL_FILEQBO_INLINE_OUTPUTQBO_SANDBOXAWS_REGIONQBO_SECRET_NAME
Verified ownerCommunity listingCommunity listing
GitHub stars2214
Directory activity 1 views 0 installs 0 upvotes 2 views 0 installs 0 upvotes
Tools641

Tools & capabilities

DataSinking tools 6

  • list_exchangesList the exchanges DataSinking covers. Returns exchange codes (nyse / nasdaq / cboe / sse / szse / bj / jpx / ksc / koe / knx / twse / tpex / lse) with the number of reports available per exchange. Call this first to discover coverage. Sources: US = SEC EDGAR, A-shares = cninfo.com.cn, Japan = EDINET, Korea = DART, Taiwan = MOPS, UK = FCA NSM.
  • list_stocksList the stocks on one exchange, including the report count per company.
  • list_reportsList a company's reports — metadata only (id, title, period), no body text. Each item carries a `source` field naming the official disclosure platform; keep that attribution when you cite it.
  • get_reportFetch one report's full text (metadata + Markdown body). The `source` field names the official disclosure platform; keep that attribution when you cite it. Expensive in tokens — prefer get_section when you only need one chapter. Content is annotated with block markers (`<!-- ds:block:N -->`) so you can cite a specific paragraph or table.
  • list_sectionsList every section of a report with its size, before you decide what to pull. Returns `sections` (titles, in order) plus `section_details` — same order, one entry per section with `title`, `has_tables`, `chars` and `estimated_tokens`. Use `estimated_tokens` to avoid pulling a chapter that would blow your context, and `has_tables` to know whether the chapter needs special handling (tables are the part RAG pipelines usually get wrong). Then call get_section with a heading keyword — the headings are in the report's own language.
  • get_sectionFetch only one section of a report by keyword — much cheaper than get_report, best for RAG. Content is annotated with block markers (`<!-- ds:block:N -->`) so you can cite a specific paragraph or table.

Quickbooks MCP tools 41

  • qbo_authenticateAuthenticate with QuickBooks using OAuth (local credential mode only). Step 1: Call with no arguments to get the authorization URL. Step 2: After authorizing in browser, call with authorization_code and realm_id from the callback URL. This tool only works when QBO_CREDENTIAL_MODE is 'local' (the default).
  • get_company_infoGet information about the connected QuickBooks company.
  • queryExecute a QuickBooks query using SQL-like syntax. Supports querying any entity type (Customer, Vendor, Invoice, Bill, Account, Item, Department, etc.). Results are written to a file to preserve context. Defaults to MAXRESULTS 1000 if not specified. Examples: 'SELECT * FROM Customer', 'SELECT * FROM SalesReceipt WHERE TxnDate >= \'2025-11-01\' AND TxnDate <= \'2025-11-30\''
  • list_accountsList all accounts in the chart of accounts. Returns AcctNum (the user-facing account number), Name, AccountType, AccountSubType, and CurrentBalance. Use AcctNum to reference accounts in other queries or operations.
  • get_profit_lossGet a Profit and Loss (Income Statement) report. Can be broken down by department/location.
  • get_balance_sheetGet a Balance Sheet report. Can be broken down by department/location.
  • get_reportRun a QuickBooks report that has no dedicated tool: A/R and A/P aging, customer and vendor balances, transaction lists, general ledger, journal, sales by customer/item/class/department, cash flow, and detail variants. Answers what is outstanding and how old it is, which the entity query tools cannot — a report sees postings that carry no account reference in entity JSON. Profit and Loss, Balance Sheet and Trial Balance have their own tools.
  • get_trial_balanceGet a Trial Balance report. Useful for month-end close and reconciliation. Note: Trial Balance does not support department/location breakdown in QuickBooks Online.
  • query_account_transactionsQuery all transactions affecting a specific account, across all 13 posting transaction types. Returns a consolidated list with date, type, amount (debit/credit), and description. Useful for investigating account balance discrepancies. Note: the A/R side of invoices, credit memos, and payments has no account reference in QBO's data model and cannot appear here — use account_period_summary for A/R totals.
  • account_period_summaryGet a period summary for an account: opening balance, total debits/credits, closing balance, and transaction count. Uses the General Ledger report. Supports department filtering.
  • create_journal_entryCreate a journal entry. Accepts account/department/entity names (will lookup IDs automatically). Validates debits=credits before creating. Lines may carry an entity (vendor, customer, or employee) — QuickBooks requires one on any line posting to Accounts Receivable or Accounts Payable. Returns entry details and a link to view in QuickBooks.
  • get_journal_entryFetch a single journal entry by ID with full details including SyncToken (needed for edits). Returns formatted summary and writes full object to temp file.
  • +29 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

DataSinking

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "datasinking": {
      "command": "npx",
      "args": [
        "-y",
        "datasinking-mcp"
      ],
      "env": {
        "DATASINK_API_KEY": "YOUR_DATASINK_API_KEY_HERE"
      }
    }
  }
}

Quickbooks MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "quickbooks-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "quickbooks-mcp"
      ],
      "env": {
        "QBO_CREDENTIAL_MODE": "YOUR_QBO_CREDENTIAL_MODE_HERE",
        "QBO_CLIENT_ID": "YOUR_QBO_CLIENT_ID_HERE",
        "QBO_CLIENT_SECRET": "YOUR_QBO_CLIENT_SECRET_HERE",
        "QBO_CREDENTIAL_FILE": "YOUR_QBO_CREDENTIAL_FILE_HERE",
        "QBO_INLINE_OUTPUT": "YOUR_QBO_INLINE_OUTPUT_HERE",
        "QBO_SANDBOX": "YOUR_QBO_SANDBOX_HERE",
        "AWS_REGION": "YOUR_AWS_REGION_HERE",
        "QBO_SECRET_NAME": "YOUR_QBO_SECRET_NAME_HERE"
      }
    }
  }
}

Frequently asked questions

DataSinking is categorized under Finance & Fintech and uses a local stdio subprocess. Quickbooks MCP belongs to Finance & Fintech and uses a local stdio subprocess. Pick DataSinking for finance & fintech work and Quickbooks MCP for finance & fintech.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

DataSinking has no declared pricing — check the project's own site. Auth: api key required. Quickbooks MCP has no declared pricing — check the project's own site. Auth: oauth 2.0. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add datasinking and quickbooks-mcp as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, DataSinking has a quality signal of 67/100 (Great) with 1 views, 0 installs and 22 GitHub stars. Quickbooks MCP has 64/100 (Good) with 2 views, 0 installs and 14 GitHub stars.