PocketSmith MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| POCKETSMITH_USER_ID | No | User ID (auto-detected from token if omitted) | |
| POCKETSMITH_API_TOKEN | Yes | API token from your PocketSmith account | |
| POCKETSMITH_API_BASE_URL | No | Custom API endpoint | https://api.pocketsmith.com/v2 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_meA | Get the currently authenticated PocketSmith user |
| get_userB | Get a PocketSmith user by ID |
| update_userC | Update a PocketSmith user profile |
| get_institutionA | Get a PocketSmith institution by ID |
| update_institutionC | Update a PocketSmith institution |
| delete_institutionB | Delete a PocketSmith institution. Optionally merge accounts into another institution. |
| list_institutionsA | List all institutions for the authenticated user |
| create_institutionC | Create a new institution |
| get_accountA | Get a PocketSmith account by ID, including transaction accounts and scenarios |
| update_accountC | Update a PocketSmith account |
| delete_accountC | Delete a PocketSmith account |
| list_accountsB | List all accounts for the authenticated user |
| reorder_accountsC | Update the display order of accounts |
| create_accountC | Create a new account |
| list_institution_accountsA | List all accounts for a specific institution |
| get_transaction_accountA | Get a PocketSmith transaction account by ID |
| update_transaction_accountA | Update a PocketSmith transaction account (e.g. change its institution or starting balance) |
| list_transaction_accountsA | List all transaction accounts for the authenticated user |
| get_transactionA | Get a single PocketSmith transaction by ID |
| update_transactionB | Update a PocketSmith transaction |
| delete_transactionC | Delete a PocketSmith transaction |
| list_transactionsC | List transactions for the authenticated user with optional filters |
| list_account_transactionsC | List transactions for a specific account |
| list_category_transactionsB | List transactions for a specific category |
| list_transaction_account_transactionsC | List transactions for a specific transaction account |
| create_transactionB | Create a new transaction in a transaction account |
| get_categoryA | Get a PocketSmith category by ID, including children |
| update_categoryC | Update a PocketSmith category |
| delete_categoryB | Delete a PocketSmith category |
| list_categoriesA | List all categories for the authenticated user (returns tree structure) |
| create_categoryB | Create a new category |
| list_category_rulesA | List all category rules for the authenticated user |
| create_category_ruleA | Create a category rule that auto-categorises transactions by payee match |
| list_budgetB | List budget analysis for all categories for the authenticated user |
| get_budget_summaryB | Get a budget summary for the authenticated user |
| get_trend_analysisB | Get trend analysis for specific categories and scenarios over a date range |
| delete_forecast_cacheA | Clear the forecast cache to force recalculation |
| get_eventB | Get a PocketSmith event by ID |
| update_eventC | Update a PocketSmith event |
| delete_eventC | Delete a PocketSmith event |
| list_eventsA | List events for the authenticated user within a date range |
| list_scenario_eventsA | List events for a specific scenario within a date range |
| create_eventC | Create a new event in a scenario |
| get_attachmentA | Get a PocketSmith attachment by ID |
| update_attachmentB | Update a PocketSmith attachment title |
| delete_attachmentC | Delete a PocketSmith attachment |
| list_attachmentsC | List attachments for the authenticated user |
| create_attachmentB | Create a new attachment (upload) |
| list_transaction_attachmentsA | List attachments for a specific transaction |
| assign_attachmentA | Assign an existing attachment to a transaction |
| unassign_attachmentA | Unassign an attachment from a transaction |
| list_labelsA | List all labels used across the authenticated user's transactions |
| list_saved_searchesA | List all saved searches for the authenticated user |
| list_currenciesA | List all currencies supported by PocketSmith |
| get_currencyA | Get details for a specific currency by code |
| list_time_zonesA | List all time zones supported by PocketSmith |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 56 tools
Tools are grouped by resource, but there are many similar list endpoints (e.g., list_accounts, list_institution_accounts, list_transaction_accounts, list_transaction_account_transactions) that could be confused, especially without reading descriptions carefully. The distinction between 'account' and 'transaction account' is not immediately obvious from names alone.
Most tools follow a consistent verb_noun pattern (list_*, get_*, create_*, update_*, delete_*). Minor deviations exist (get_me, reorder_accounts, assign_attachment, unassign_attachment, delete_forecast_cache) but these are understandable and do not break the overall pattern.
With 56 tools, this far exceeds the 'typical' range of 3-15 and falls into the extreme mismatch category. Even for a comprehensive API, the sheer number creates a heavy, unwieldy surface that is likely to overwhelm agents and users.
The tool set covers CRUD for most major resources (accounts, transactions, categories, institutions, events, attachments) and includes read-only access for budgets, trends, currencies, and time zones. However, there is no delete or update for category rules, no delete for saved searches, and no create/delete for labels, which are minor but notable gaps.