Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DATABASE_URLNoThe database URL. Local SQLite in-memory if unset (sqlite:///:memory:). Can also be a SQLite file path or a PostgreSQL connection string.sqlite:///:memory:

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

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_summaryA

Get a summary of expenses, income, and net balance with flexible filtering and optional category breakdown.

  • month: Filter by month (YYYY-MM).

  • start_date: Filter starting from date (YYYY-MM-DD).

  • end_date: Filter ending at date (YYYY-MM-DD).

  • category_id: Optional integer category ID filter from list_categories.

  • type: Filter by transaction type ('expense' or 'income').

  • by_category: Set to True to include detailed category breakdown.

add_transactionA

Add one or more income or expense transactions to the budget.

Supports single transaction parameters OR a batch list/dict of items in items.

Bulk Import Workflow:

  • You can bulk import transactions without categories (category_id is optional).

  • After bulk logging, use get_uncategorized_transactions to review uncategorized transactions sorted by description.

  • Then use update_transaction to systematically assign category IDs to matching descriptions in bulk.

Arguments:

  • items: Optional list of dicts (or single dict) for batch insertion. Each dict can contain: {"amount": float, "category_id": int (optional), "description": str, "type": "expense"|"income", "date": "YYYY-MM-DD"}.

  • amount: Transaction monetary value (used if items is omitted).

  • category_id: Optional integer category ID from list_categories (omitting logs as 'Uncategorized').

  • description: Details or description of transaction (used if items is omitted).

  • type: Must be either 'expense' or 'income' (defaults to 'expense').

  • date: Optional transaction date formatted as YYYY-MM-DD or ISO string.

get_transactionsA

Get transactions based on specified filter criteria.

  • category_id: Optional integer filter by category ID.

  • type: Filter by type ('income' or 'expense').

  • month: Filter by month formatted as YYYY-MM.

  • start_date: Filter transactions on or after YYYY-MM-DD.

  • end_date: Filter transactions on or before YYYY-MM-DD.

  • min_amount: Filter transactions with amount >= min_amount.

  • max_amount: Filter transactions with amount <= max_amount.

  • search: Keyword search matching description or category.

  • limit: Maximum number of records to return (default 50).

get_uncategorized_transactionsA

Get all uncategorized transactions sorted alphabetically by description.

Designed for systematic categorization after bulk import: Use this tool to retrieve transactions imported without categories. Because results are sorted by description, similar merchant/expense descriptions are grouped together, enabling fast and consistent bulk updates via update_transaction.

Arguments:

  • type: Optional filter by transaction type ('income' or 'expense').

  • search: Optional keyword search filter for description.

  • limit: Maximum number of records to return (default 100).

update_transactionA

Update one or more existing transactions by ID.

Supports single transaction updates OR a batch list/dict of update items in items. Use this tool to assign category_id, amount, description, type, or date.

Systematic Categorization Workflow:

  • Pass a batch list in items containing {"transaction_id": id, "category_id": cat_id} to categorize multiple transactions at once.

Arguments:

  • items: Optional list of update dicts. Each dict must include "transaction_id" and optional update fields.

  • transaction_id: ID of transaction to update (used if items is omitted).

  • category_id: Integer category ID from list_categories to assign a category.

  • amount: Optional new monetary amount.

  • description: Optional new description.

  • type: Optional new type ('expense' or 'income').

  • date: Optional new date (YYYY-MM-DD).

delete_transactionB

Delete one or more transactions by ID.

Supports a single integer ID or a list of integer IDs in transaction_ids.

  • transaction_ids: Integer ID or list of integer IDs to delete.

  • transaction_id: Alias for single ID deletion.

list_categoriesA

List established categories available for transactions.

  • type: Optional filter by 'expense' or 'income'. Use this tool to see standard existing categories before creating new ones.

add_categoryA

Create one or more categories in the category library.

Supports single category parameters OR a batch list/dict of items in items.

  • items: Optional list of dicts. Each dict can contain: {"name": str, "type": "expense"|"income", "description": str}.

  • name: Unique category name (used if items is omitted).

  • type: Category type ('expense' or 'income', defaults to 'expense').

  • description: Optional description explaining what belongs in this category.

update_categoryA

Update an existing category's name, type, or description.

  • category_id_or_name: ID or current name of the category to update (required).

  • new_name: Optional new category name.

  • type: Optional new type ('expense' or 'income').

  • description: Optional new description string.

delete_categoryA

Delete one or more categories from the library.

Supports a single category ID/name or a list of category IDs/names in category_ids_or_names.

  • category_ids_or_names: ID/name or list of IDs/names to delete.

  • category_id_or_name: Alias for single category deletion.

  • reassign_to_category_id: Target category ID to reassign linked transactions to.

budget_dashboardC

Browse the interactive budget dashboard with a category breakdown chart and transaction data table.

spending_trendsB

Browse spending trends over time grouped by year-month with a line chart and transaction data table.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Prefab Renderer (budget_dashboard)
Prefab Renderer (spending_trends)

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/PedroLiu1999/budget-mcp'

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