Skip to main content
Glama

upGrowth Growth Toolkit

Marketing campaign ROI

campaign_roi
Read-onlyIdempotent

Calculates ROI for a marketing campaign or channel (content, email, events, influencer, recruitment marketing) on revenue and on gross profit.

Input Schema

NameRequiredDescriptionDefault
costYesTotal campaign cost.
currencyNoISO currency code for display, for example INR, USD or AED. Defaults to INR.INR
campaign_nameNoOptional label.
gross_margin_pctNoOptional margin for profit-based ROI.
attributed_revenueYes

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?

The annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the description does not need to restate that safety profile. It adds only the domain scope of revenue and gross-profit ROI, without explaining formula behavior, edge cases, or return behavior. There is no contradiction with the 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 definition is a single, front-loaded sentence with no filler. It states the calculation and the relevant scope immediately.

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?

The annotations and high schema coverage carry most of the necessary context, but with no output schema the description should say more about what ROI values are returned. It also omits formula details and does not describe the one schema parameter lacking a description, attributed_revenue, beyond the word 'revenue'.

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

Parameters3/5

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

Schema description coverage is 80%, which sets the baseline at 3. The description's phrase 'on revenue and on gross profit' loosely maps to attributed_revenue and gross_margin_pct, but it adds no syntax, defaults, or constraints beyond what the schema already documents.

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 uses a specific verb, 'Calculates ROI,' and a specific resource, 'marketing campaign or channel.' It also scopes the calculation to revenue and gross profit and names example channel types, making the purpose clear. It does not explicitly differentiate itself from nearby siblings such as roas_check or seo_roi.

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 usage by listing campaign/channel contexts and two ROI bases, but it gives no explicit when-to-use guidance. It also does not mention exclusions or direct the agent to alternatives like roas_check or seo_roi.

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.