Skip to main content
Glama
oliverames

MCP Server for Wave

by oliverames

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
WAVE_OP_PATHNo1Password secret reference to read the token, e.g. op://Vault/Item/credential (optional)
WAVE_TIMEOUT_MSNoPer-request timeout in milliseconds (optional, default 20000)20000
WAVE_BUSINESS_IDNoDefault business ID so tools can omit business_id (optional)
WAVE_ACCESS_TOKENYesOAuth2 bearer token from the Wave developer portal (required)
WAVE_ALLOW_WRITESNoSet to 1 to register the 44 tools that change or send data (optional, default off)0
WAVE_HTTP_RETRIESNoNumber of retries on 429 and 5xx (optional, default 2)2
WAVE_TOTAL_BUDGET_MSNoTotal time for one call including retries in milliseconds (optional, default 50000)50000
WAVE_ACCESS_TOKEN_FILENoPath to a file containing the access token (optional)
WAVE_MAX_RESPONSE_BYTESNoReject responses above this size in bytes (optional, default 8388608)8388608
WAVE_DISABLE_AGENT_CONFIG_FALLBACKNoSet to 1 to read only the environment, not agent config files (optional, default off)0

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
wave_auth_statusA

Report how this server resolved its Wave credentials and whether write tools are enabled. Makes no Wave API request, so it works even when the token is missing or expired -- use it first when other tools report authentication problems.

wave_get_userA

Get the Wave user account that owns the current access token. Useful for confirming which account a token authenticates as.

wave_list_currenciesA

List the currency codes Wave supports. Wave supports about 160 currencies, so pass search to narrow the list.

wave_get_currencyA

Get one currency by ISO 4217 code.

wave_list_countriesA

List the countries Wave supports, with each one's default currency.

wave_get_countryA

Get one country and its provinces or states. Use this to find the province codes that address fields expect.

wave_get_provinceA

Get one province or state by its code.

wave_list_account_typesA

List the five top-level account types in Wave's chart of accounts: ASSET, LIABILITY, EQUITY, INCOME, and EXPENSE, each with its normal balance.

wave_list_account_subtypesA

List account subtypes -- the value wave_create_account needs. Every account belongs to a subtype (CASH_AND_BANK, EXPENSE, INCOME, ...), which in turn determines its type. Some subtypes are system-created and cannot be used for new accounts.

wave_get_oauth_applicationA

Get the OAuth application that issued the current access token.

wave_list_businessesA

List the Wave businesses this access token can reach. Start here: every other tool needs a business ID. Pass one to wave_set_default_business so later calls can omit it.

wave_get_businessA

Get full detail for one business: currency, address, type, and settings.

wave_set_default_businessA

Set the business that later tool calls use when none is given. This is session state on the running server, not a change in Wave. Set WAVE_BUSINESS_ID in the environment to make it persist across restarts.

wave_get_invoice_estimate_settingsA

Get the branding applied to invoices and estimates: accent color and logo.

wave_list_accountsA

List the chart of accounts, with balances. Filter by type to find the account a transaction needs: EXPENSE for expense categories, INCOME for revenue, ASSET with subtype CASH_AND_BANK for bank accounts, LIABILITY with subtype CREDIT_CARD for cards.

wave_get_accountA

Get one account by ID, including its current balance.

wave_list_customersA

List customers, with each one's outstanding and overdue balance. Wave can filter by exact email only; name_contains is applied by this server after fetching, so combine it with fetch_all=true when searching a large customer list.

wave_get_customerA

Get one customer by ID, including address and shipping details.

wave_list_vendorsA

List vendors -- the suppliers a business buys from. Vendors are read-only in Wave's API: they can be listed and read but not created, changed, or deleted. Wave filters by exact email only; name_contains is applied locally, so pair it with fetch_all=true on a long vendor list.

wave_get_vendorA

Get one vendor by ID, including address and shipping details.

wave_list_productsA

List products and services. Invoice and estimate line items must reference a product, so this is the usual first step when building either one.

wave_get_productA

Get one product by ID, including its accounts and default sales taxes.

wave_list_sales_taxesA

List sales taxes, with their current rate and rate history.

wave_get_sales_taxA

Get one sales tax by ID, including its full rate history.

wave_list_invoicesA

List invoices, filtered by status, customer, date range, or amount due. To find unpaid invoices use status "UNPAID"; "OVERDUE" narrows that to ones past their due date.

wave_get_invoiceA

Get one invoice in full: line items, taxes, discounts, and payments.

wave_get_invoice_paymentA

Get one invoice payment by ID. To see every payment on an invoice, call wave_get_invoice instead: it returns them all.

wave_list_estimatesB

List estimates (quotes), filtered by status, customer, or date range.

wave_get_estimateA

Get one estimate in full: line items, deposits, and acceptance history.

wave_get_estimate_paymentA

Get one estimate deposit payment by ID. To see every deposit on an estimate, call wave_get_estimate with include_deposit_payments=true.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Wave businessesEvery Wave business this access token can reach, with IDs and currencies.
Chart of accountsThe default business's chart of accounts, with types, subtypes, and balances.
CustomersThe default business's customers, with outstanding and overdue balances.
VendorsThe default business's vendors. Read-only: Wave's API has no vendor mutations.
Products and servicesThe default business's products. Invoice and estimate line items must reference one.
Sales taxesThe default business's sales taxes, with current rates and rate history.
Account type taxonomyWave's account types and subtypes -- the vocabulary wave_create_account expects.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/oliverames/wave-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server