Skip to main content
Glama

Veqen: AI cost monitoring and protection

Approve a month

approve_month

Approves and freezes a month's journal entries (period YYYY-MM). Confirm with the user first. Needs an owner, admin or finance member.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "period": "<period>"
    },
    "name": "approve_month"
  }
}

Input Schema

NameRequiredDescriptionDefault
periodYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.5/5.0
Behavior4/5

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

Beyond the annotations, it discloses the consequential effect (freezing entries, not just approving) and the authorization requirement, which annotations cannot express. It does not say whether a freeze is reversible or what happens on a repeat call, which matters given idempotentHint=false.

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?

Three short sentences: effect and scope first, then the confirmation requirement, then the permission gate. No filler and nothing buried.

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

Completeness5/5

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

An output schema exists, so return values need no explanation. For a one-parameter mutation, the description covers the action, its lock effect, the human confirmation step, and the required role.

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 description coverage is 0%, so the description carries the burden, and it does supply the period format ('YYYY-MM') matching the regex pattern. That compensates for the single undocumented parameter, though it could clarify timezone/calendar or whether the month must be closed.

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?

States a specific verb pair (approves and freezes) plus the exact resource (a month's journal entries) and the period identifier format. An agent can distinguish this from siblings like month_end or reconciliation_status without opening any schema.

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?

Gives a clear precondition ('Confirm with the user first') and the required role (owner, admin or finance member), which is genuine selection context. It stops short of naming when to prefer a sibling such as month_end or what to do if the month is already approved, so no explicit exclusions.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources