Skip to main content
Glama
bu5hm4nn

zoho-bookkeeper-mcp

by bu5hm4nn

create_expense

Record a new expense by providing expense and payment account IDs, date, amount, and optional customer or vendor details.

Instructions

Create a new expense record. Requires account_id (expense account) and paid_through_account_id (payment account). Use list_accounts to find valid account IDs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
organization_idNoZoho org ID (uses ZOHO_ORGANIZATION_ID env var if not provided)
account_idYesExpense account ID
paid_through_account_idYesPayment account ID (bank/cash/credit card)
dateYesExpense date (YYYY-MM-DD)
amountYesExpense amount (max 999,999,999.99, 2 decimal places)
descriptionNoDescription of the expense
reference_numberNoReference number
customer_idNoCustomer ID if billable
vendor_idNoVendor ID
is_billableNoWhether expense is billable to a customer
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a write operation (readOnlyHint=false) and open-world behavior. The description adds no additional behavioral context such as side effects, validation failures, or rate limits. It meets a baseline but does not enhance beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with only two sentences. It frontloads the purpose, then provides requirements and a helpful suggestion, with no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 10 parameters and no output schema, the description does not explain the return value or the role of optional parameters like customer_id or reference_number. While the schema covers them, the description could summarize usage conditions for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds value by emphasizing two critical required parameters and linking to a relevant helper tool (list_accounts), which aids understanding beyond the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Create a new expense record' with a specific verb and resource. It is distinct from sibling tools like add_expense_receipt or get_expense, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description highlights required parameters (account_id, paid_through_account_id) and suggests using list_accounts to find valid IDs. While it doesn't explicitly exclude other scenarios, it provides clear context for when to use the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/bu5hm4nn/zoho-bookkeeper-mcp'

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