Help us improve
Share bugs, ideas, or general feedback.
From well
Queries the Well workspace financial graph (invoices, companies, accounts, ledger) using MCP tools. Use before calling well_query_records.
npx claudepluginhub wellapp-ai/well --plugin wellHow this skill is triggered — by the user, by Claude, or both
Slash command
/well:querying-well-dataThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Well exposes a workspace's financial graph through three MCP tools:
Builds profit & loss statements from Well workspace posted accounting ledger. Use for P&L, income statement, or net result queries.
Teaches AI correct tool selection order, output formatting, multi-subsidiary/currency handling, and SuiteQL safety for NetSuite AI Service Connector sessions.
Automate Wave Accounting tasks via Rube MCP (Composio): invoices, customers, payments, and small business accounting.
Share bugs, ideas, or general feedback.
Well exposes a workspace's financial graph through three MCP tools:
well_get_schema() — list every available root (entity type).well_get_schema({ root }) — list the fields available on one root, with types and semantic context.well_query_records({ root, fields, whereClause?, orderBy?, limit? }) — read rows.well_get_entity({ root, id }) — fetch one record by id.Always call well_get_schema(root) first, pick the fields you need from what it returns, then call well_query_records. Field paths are arrays: "invoices.issuer.name" → ["invoices", "issuer", "name"]. Do not guess field names — they vary by root and are documented in the schema response (each field carries a type and often a context explaining what it means).
Calling well_get_schema() with no argument returns the full set. It includes far more than invoices and companies — in particular the accounting graph:
invoices, invoice_items, invoice_transactionscompanies, people, payment_meansaccounts, transactions, account_balancesledger_accounts, journals, journal_entriestax_rates, exchange_rates, categories, connectorsmemberships, tasks, workspace_connectorsIf you are about to answer a financial question by reconstructing it from raw invoices, stop and check well_get_schema() first — the posted ledger (journal_entries, ledger_accounts) is almost always the correct, more accurate source. See the well:compte-de-resultat and well:balance-sheet skills.
whereClause is a Hasura-style boolean expression. Use the operator the field's type allows (from the schema):
numeric / date → _eq, _gt, _lt, _gte, _lteenum → _eq, _neq, _in, _nin, _is_nulltext → _eq, _like, _ilike{ "issuer": { "name": { "_ilike": "%acme%" } } }context for currency fields before summing across currencies (see exchange_rates).