Skip to main content
Glama

finance

Gamification: Create spending challenge

create_spending_challenge
    Create a personal spending challenge.

    Args:
        name: Challenge name (e.g., "No Coffee November")
        category_name: Category to track (e.g., "Dining", "Entertainment")
        metric: "spending_limit" (stay under target) or "spending_avoidance" (spend $0)
        target_amount: Target amount (used for spending_limit; set 0 for avoidance)
        duration_days: Duration in days (7 or 30)

    Returns:
        Created challenge details
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
metricYes
category_nameYes
duration_daysNo
target_amountYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already indicate this is a write operation (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds the metric semantics (spending_limit vs spending_avoidance) and the target_amount behavior (set 0 for avoidance), which is useful. However, it doesn't disclose what happens on creation (e.g., whether it's immediately active, whether it affects gamification points, or whether duplicate challenges are allowed).

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

Conciseness4/5

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

The description is compact and well-structured with a clear Args list. Every line adds value, and the parameter explanations are front-loaded. It could be slightly more concise by removing the Returns line, but it's not bloated.

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?

For a creation tool with no output schema, the description covers the parameters well but omits behavioral context like whether the challenge starts immediately, whether there are constraints on active challenges, or what the response contains beyond 'Created challenge details'. The sibling list shows related tools (list_challenges, join_challenge) but the description doesn't connect to them.

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 full burden. It explains the meaning of each parameter, including the relationship between metric and target_amount, and provides examples for name and category_name. It also clarifies that duration_days is 7 or 30, which the schema does not. This is strong compensation for the lack of schema descriptions.

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

Purpose4/5

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

The description states a clear verb ('Create') and resource ('personal spending challenge'), and the title adds the 'Gamification' context. It distinguishes itself from sibling tools like list_challenges and join_challenge by focusing on creation, though it doesn't explicitly name those siblings.

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

Usage Guidelines3/5

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

The description implies when to use it (when creating a spending challenge) but provides no explicit guidance on when not to use it or alternatives. Siblings like join_challenge and list_challenges exist, but the description doesn't mention them or explain the difference.

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