awaken-mcp-server
v0.0.1
Published
Set `AWAKEN_API_KEY` and run the server over stdio:
Readme
Awaken MCP Server
Set AWAKEN_API_KEY and run the server over stdio:
export AWAKEN_API_KEY=your_awaken_api_key
bun link
bunx --no-install awaken-mcp-serverPassing the API key as the first CLI argument also works, but the environment variable is safer because it avoids exposing secrets in process listings.
For local development in this repo, bun start still works. The package now also exposes a CLI binary via bunx; after publishing or installing it as a dependency, bunx awaken-mcp-server is the expected entrypoint.
For Codex, configure the MCP server with the API key in env. A working example:
[mcp_servers.awaken]
command = "bunx"
args = ["awaken-mcp-server"]
env = { AWAKEN_API_KEY = "awk_client_..." }
startup_timeout_sec = 5.0If env is omitted or the key is wrong, user-scoped queries like me { activeClient { id } } may return null and any tool that relies on the default active client will fail.
The server connects over stdio and talks to https://api.awaken.tax/graphql using:
Authorization: ApiKey <your_key>Available tools:
awaken_get_active_clientawaken_list_labelsawaken_get_transaction_type_optionsawaken_list_transactionsawaken_label_transactionsawaken_split_transactionawaken_split_wallet_transactions_and_label_fees
Notes:
clientIdis optional on every tool. If omitted, the server falls back tome.activeClient.id.- Passing
clientIdexplicitly is still safer when you already know the client fromhttps://awaken.tax/clients/{id}. awaken_list_labelsis the discovery tool for valid Awaken labels and categories.awaken_get_transaction_type_optionsshows transaction-specific category/label options and whether Awaken considers them applicable.walletAddressmaps to Awaken'sfromOrToAddressfilter.amountGreaterThanandamountLessThanare local post-filters usingpriceCentswhen available.startDateandendDatemust useYYYY-MM-DD.awaken_label_transactionsrequireslabelunlesswipeLabelistrue.- For bulk fee categorization, start with
dryRun: trueand review the plan before applying mutations. awaken_split_wallet_transactions_and_label_feesnow returns bothresultsandfailuresso partial mutation failures are visible instead of failing as a single opaque error.
