Skip to main content
Glama

LinkJolt

Server Details

For businesses that pay affiliates: set up and run your affiliate program from your AI assistant.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A3.9/5.0

Scored across 27 tools

Disambiguation4/5

Most tools target distinct resources and actions, and descriptions clearly separate campaign, affiliate, coupon, conversion, payout, team, and setup workflows. A few boundaries are softer, especially check_tracking vs get_tracking_instructions vs get_setup_status, and search vs fetch vs the list/get tools, but the descriptions generally guide selection.

Naming Consistency4/5

The set mostly follows a predictable snake_case verb_noun convention: create_campaign, get_campaign, list_affiliates, update_conversion, etc. Minor deviations are bare verbs like fetch and search, plus plan_affiliate_program and get_linkjolt_plans, but they remain readable and consistent with the overall style.

Tool Count3/5

27 tools is heavy and just above the typical comfortable range, though the server covers a broad affiliate-management domain with campaigns, affiliates, coupons, conversions, payouts, teams, tracking, and planning. The surface is not obviously bloated, but several list/get/fetch tools contribute to a large toolset that could be consolidated.

Completeness4/5

Core affiliate-program workflows are covered: campaign creation/update/listing, affiliate invites and approvals, coupon creation/listing, conversion creation/approval, stats, tracking checks, and setup guidance. Gaps exist around destructive or administrative operations such as deleting campaigns/coupons and managing payouts or awards, though some of these appear intentionally dashboard-only or read-only.

Available Tools

27 tools
check_trackingCheck tracking worksA
Read-only
Inspect

Check that affiliate tracking works, after the tracking script has been added: fetches a page of the site (the business website unless url is given) and looks for this account's tag, then says whether a browser has run the script, whether a payment platform is connected, and whether a test-mode purchase has reached LinkJolt (the one tool that shows test sales). Each check comes with a sentence and next names the first thing left to do. Run it after the script is deployed, and again after the person buys once in their payment platform's test mode through an affiliate link. Requires Pro plan or higher, or a new account that has not picked a plan yet.

NameRequiredDescriptionDefault
urlNoThe page to check, e.g. https://acme.com/pricing (default: the business website)

TDQS

A4.8/5.0
Behavior5/5

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

Beyond readOnly/openWorld annotations, it discloses the external fetch (a live page of the site), the plan gate, and the shape of the response including that 'next' names the first remaining action. That is real behavioral context an agent cannot get from the annotations alone, and nothing conflicts with them.

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?

Purpose is front-loaded and every clause carries information, but the middle sentence is long and stacked with parentheticals ('the one tool that shows test sales'), which slows scanning. Slightly tighter phrasing would earn a 5.

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?

With no output schema, the description still tells the agent what comes back: per-check sentences plus a 'next' item naming the first remaining step. Combined with the plan prerequisite and the two run-timing triggers, an agent has everything needed to invoke it correctly.

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% for the single optional url parameter, so the baseline is 3. The description earns one extra point by explaining the default ('the business website unless url is given') and framing why you would target a specific page, e.g. a pricing page where the tag must be present.

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 and resource ('Check that affiliate tracking works') and then spells out the mechanism: fetches a page, looks for the account tag, and reports on script execution, payment-platform connection and test-purchase arrival. It also carves itself out from siblings by noting it is 'the one tool that shows test sales', which separates it from get_setup_status and get_tracking_instructions.

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

Usage Guidelines5/5

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

Gives explicit triggers: run it after the script is deployed, and again after the person buys once in test mode through an affiliate link. It also states the eligibility condition (Pro plan or higher, or a new account without a plan), so an agent knows when the call is appropriate and when it will be rejected.

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

create_campaignCreate campaignAInspect

Create an affiliate campaign: what affiliates earn per sale and where their links send people. Returns the campaign and its joinUrl, the link to share with affiliates so they can sign up. Confirm the commission with the user before calling. A new campaign is active at once and, unless isPublic is false, listed in LinkJolt's Discovery marketplace where affiliates browse programs. Recurring commissions pay on renewals too. The plan's campaign limit applies. Requires Pro plan or higher; live keys only.

NameRequiredDescriptionDefault
nameYesCampaign name affiliates see, at least 2 characters
isPublicNoList the campaign in the Discovery marketplace (default true)
targetUrlNoWhere affiliate links send people, usually the business's website or pricing page
descriptionNoWhat the program offers, shown to affiliates
commissionTypeYesPercentage of the sale, or a fixed amount per sale
commissionValueYesThe percent (e.g. 20) or the fixed amount in the brand currency (e.g. 30)
autoApproveAffiliatesNoApprove affiliates who join through the join link without review (default false)
recurringCommissionModeNoLimit renewals by months since the first sale, or by number of payments (default duration)
recurringCommissionTypeNoRenewals pay the same rate as the first sale, or a custom rate (default same)
recurringCommissionCountNoPayments that pay commission, including the first; omit for no limit
recurringCommissionValueNoThe renewal rate when recurringCommissionType is custom
enableRecurringCommissionsNoAlso pay commission on subscription renewals (default false)
recurringCommissionDurationMonthsNoMonths of renewals that pay commission; omit for no limit

TDQS

A4.5/5.0
Behavior5/5

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

Goes well beyond the annotations: the campaign is active immediately, is publicly listed in Discovery unless isPublic is false, plan limits apply, and Pro plan plus live keys are required. It also discloses the return payload (campaign plus joinUrl) and the sharing semantics of that join link — exactly the mutation side effects an agent needs.

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?

Front-loads purpose, then the return value, the confirmation rule, the side effects, and the plan prerequisites in descending order of importance. Five sentences, each carrying a distinct fact; nothing is repeated from the name or title.

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?

For a 13-parameter, non-idempotent, world-visible write operation with no output schema, the description covers prerequisites, side effects, quota, user confirmation, and the return shape. There is no output schema, yet the agent still learns the response includes the campaign and joinUrl.

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 coverage is 100%, so the schema already carries full parameter documentation and the baseline is 3. The description adds only light meaning beyond that — the behavioral consequence of isPublic and the fact that recurring commissions pay on renewals — without adding format, range, or interaction detail the schema lacks.

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?

Opens with a specific verb and resource ('Create an affiliate campaign') and immediately qualifies the resource in business terms — what affiliates earn per sale and where links send people — so the agent knows exactly what the object is. It is clearly distinguishable from update_campaign, get_campaign, and list_campaigns by verb.

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 concrete pre-call guidance ('Confirm the commission with the user before calling') plus prerequisites ('Requires Pro plan or higher; live keys only') and a quota constraint ('The plan's campaign limit applies'). It doesn't name alternatives, but the create/read/update sibling split is unambiguous from the name alone.

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

create_conversionRecord conversionAInspect

Manually record a conversion (a sale to credit to an affiliate). Like any tracked sale, a live one notifies the merchant's team and emails the affiliate it credits. Requires an Ultimate or Scale plan key with write access. Test keys record test data and email nobody.

NameRequiredDescriptionDefault
amountYesSale amount (positive, major units, e.g. 49.99)
clickIdNoOriginating click id, when known
orderIdNoYour order reference; duplicates are rejected
currencyNo3-letter ISO code; defaults to the campaign currency
campaignIdYesThe campaign the sale belongs to
affiliateIdYesThe affiliate to credit
customerNameNoBuyer name, shown on the commissions page
customerEmailNoBuyer email (enables fraud checks)
conversionTypeNoDefaults to one_time
parentConversionIdNoFor recurring: the original conversion id

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing real side effects: a live conversion notifies the merchant's team and emails the credited affiliate, while test keys do neither. Combined with the plan/permission requirement, an agent knows the blast radius before calling.

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, each earning its place: what it does, what side effects it triggers, and what auth/test-mode constraints apply. No filler and the core action is front-loaded.

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

Completeness4/5

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

For a 10-parameter mutation with no output schema, the description covers the important behavioral surface — side effects, plan/write requirement, test-mode behavior. It does not mention what the call returns (e.g. a conversion id) or error behavior on duplicate orderId, but those are marginal given the rich schema.

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 100%, so every parameter including amount units, currency defaulting, duplicate orderId rejection and parentConversionId is already documented. The description only echoes 'a sale to credit to an affiliate' and adds no syntax or format detail beyond the schema; baseline 3 applies.

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 and resource ('Manually record a conversion') and immediately disambiguates with a parenthetical defining a conversion as a sale credited to an affiliate. This clearly separates it from list_conversions and update_conversion without opening either 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?

The word 'Manually' signals the use case (recording a sale that didn't arrive via automatic tracking), and prerequisites are given explicitly: an Ultimate or Scale plan key with write access, plus the note that test keys work but store test data. It stops short of naming an alternative tool or an explicit when-not condition.

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

create_couponCreate or register coupon codeA
Idempotent
Inspect

Give an affiliate a discount code so sales using it are credited to them. With createInProvider true, LinkJolt creates the code in the brand's connected Stripe, Polar or Creem (the one it creates codes in unless provider is given), as the dashboard's Add coupon does: set percentOff, or amountOff with currency, and duration (once, forever, or repeating with durationInMonths). Without it, the code must already exist in the payment platform and this registers it (for a Stripe code customers type, pass its promo_ id). Confirm the code, the discount and the affiliate with the person first. If no platform that creates codes is connected, the answer gives the link to connect Stripe. Requires an Ultimate or Scale plan key with write access; a test key only registers.

NameRequiredDescriptionDefault
codeYesThe readable code, e.g. SARAH20
currencyNo3-letter ISO code for amountOff
durationNoWith createInProvider: how long the discount lasts for a customer
providerNoWhere the discount lives (default stripe when registering; with createInProvider, the platform the brand creates codes in)
amountOffNoFixed amount off, with currency: the real discount with createInProvider, a label when registering
campaignIdYesThe campaign the coupon belongs to
percentOffNoPercent off (1-100): the real discount with createInProvider, a label when registering
affiliateIdYesThe affiliate the code is attributed to
descriptionNoWith createInProvider: the discount's name in the payment platform (default: the code)
appleOfferTypeNoApple offer type: 1 introductory, 2 promotional, 3 offer code
creemDiscountIdNoRegistering a Creem code: its discount id (dis_...)
polarDiscountIdNoRegistering a Polar code: its discount id
createInProviderNoCreate the code in the brand's connected Stripe, Polar or Creem instead of registering one that already exists
durationInMonthsNoWith duration repeating: for how many months (1-36)
paddleDiscountIdNoRegistering a Paddle code: its discount id (dsc_...)
stripePromotionCodeIdNoRegistering a Stripe code: its promotion code id (promo_...). Needed for a code customers type: Stripe sends only this id with the sale, never the code text

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations (which only declare it is not read-only and is idempotent), the description discloses that it writes to an external payment platform (Stripe/Polar/Creem), which field values are real vs. cosmetic in each mode, the plan/key permission requirement, and the edge case that a missing platform connection returns a connect link rather than creating anything.

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?

Front-loaded with the outcome, then modes, then prerequisites — good ordering and no filler. It is a dense run-on paragraph with long clauses, which slightly hurts scannability for a 16-parameter tool, but every sentence carries information.

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?

For a 16-parameter, dual-mode, external-write tool with no output schema, it covers the essentials: mode selection, required permission tier, provider defaults, what happens on failure (connect link), and a confirmation step. Nothing an agent needs in order to call this correctly is missing.

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 earns a bump by explaining the mode-dependent default provider ('the one it creates codes in unless provider is given') and the promo_ id requirement for typed Stripe codes. Most individual field meanings (percentOff, amountOff with currency, duration values) are already in the schema, so it is additive rather than essential.

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?

Opens with a concrete verb+resource+benefit ('Give an affiliate a discount code so sales using it are credited to them') and immediately distinguishes itself from list_coupons by describing creation/registration rather than listing. It also splits its own two modes into named operations (create in provider vs. register existing), so an agent knows exactly what this tool does.

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

Usage Guidelines5/5

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

Explicitly states the two usage modes and the switching condition: 'With createInProvider true, LinkJolt creates the code... Without it, the code must already exist in the payment platform and this registers it.' It adds prerequisites (Ultimate or Scale plan key with write access; a test key only registers) and a procedural instruction ('Confirm the code, the discount and the affiliate with the person first').

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

fetchFetch a recordA
Read-only
Inspect

Use this to fetch the full record behind a search result id (campaign:, affiliate:, coupon:, or conversion:). Requires Pro plan or higher.

NameRequiredDescriptionDefault
idYesA composite id returned by the search tool

Output Schema

NameRequiredDescription
idYes
urlYes
textYes
titleYes
metadataNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so safety is covered structurally. The description adds non-obvious behavioral context the annotations cannot convey — a Pro plan or higher entitlement requirement — which is exactly the kind of gating an agent needs before invoking.

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?

Two short sentences with no waste: the primary purpose and id formats come first, then the entitlement constraint. Nothing is repeated from the schema or annotations.

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

Completeness4/5

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

For a single-parameter read whose output schema is provided and whose safety profile is in annotations, the description covers what's needed: provenance of the id, accepted formats, and the plan gate. Minor gaps remain around error behavior for invalid or cross-account ids, but nothing essential is missing.

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 baseline is 3, but the description goes beyond the schema's generic 'composite id returned by the search tool' by spelling out the four accepted prefixes. That prefix enumeration is genuine added meaning for constructing a valid id.

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 (fetch) and resource (the full record behind a search result id), and enumerates the id namespaces it accepts (campaign:, affiliate:, coupon:, conversion:). This distinguishes it clearly from sibling getters like get_campaign or list_coupons, which target a known entity type rather than a search-result composite id.

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?

Explicitly ties the tool to a preceding search result id, which tells the agent when to use it (after search) and what input it expects. It doesn't name an alternative for cases where the agent already knows the entity type, but the linkage to search is a clear usage condition.

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

get_campaignGet campaignA
Read-only
Inspect

Get one campaign with full detail, including affiliate count. Requires Pro plan or higher.

NameRequiredDescriptionDefault
campaignIdYesThe campaign id

TDQS

A3.6/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so safety behavior is covered. The description adds useful context about the Pro plan requirement and the affiliate count in the response, but it does not describe error behavior or what 'full detail' includes beyond that.

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 two short sentences with no wasted language. The main purpose is front-loaded, and the plan requirement follows naturally.

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

Completeness4/5

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

For a simple single-parameter read tool with annotations and no output schema, the description covers the core retrieval behavior and an important prerequisite. It could be slightly more complete by mentioning behavior when the campaign is missing or the plan is insufficient, but it is adequate overall.

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 100%, and the single campaignId parameter is already documented in the schema. The description does not add syntax, format, or validation meaning beyond what the schema provides, so the baseline of 3 is appropriate.

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 and resource: 'Get one campaign with full detail, including affiliate count.' It clearly distinguishes a single-campaign lookup from list-style siblings like list_campaigns, though it does not explicitly name alternatives.

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 specifying retrieval of one campaign and adds a prerequisite: 'Requires Pro plan or higher.' However, it does not explicitly say when to prefer this over list_campaigns or what to do if the plan requirement is not met.

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

get_linkjolt_plansGet LinkJolt plansA
Read-only
Inspect

LinkJolt's plans and prices, each plan's monthly tracked-sales limit, what this connector can do on each plan, and how the free trial works. Needs no LinkJolt account. Use it when someone asks what LinkJolt costs or which plan they need.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds genuinely new behavioral context by stating 'Needs no LinkJolt account' — an auth prerequisite the agent cannot infer from annotations, and one that matters for a connector otherwise operating inside an authenticated account.

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?

Two sentences: the first enumerates the payload, the second the trigger condition. Front-loaded with the resource, zero filler, and no restatement of the title or annotations.

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?

With no output schema and no parameters, the description carries the full burden of describing results, and it does so concretely — prices, per-plan tracked-sales limits, per-plan connector capabilities, and free-trial behavior. An agent knows exactly what it will get and whether to call it.

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?

The tool takes zero parameters, so there is nothing to disambiguate and the baseline of 4 applies. The description correctly does not waste words on inputs and instead spends them on return content.

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 resource (LinkJolt plans and prices) plus the exact contents returned: monthly tracked-sales limits, per-plan connector capabilities, and free-trial mechanics. No sibling tool deals with pricing, so it is unambiguously distinguishable from the campaign/affiliate/stat operations in the sibling list.

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 an explicit trigger: 'Use it when someone asks what LinkJolt costs or which plan they need.' That is a clear usage context. It stops short of naming alternatives or when-not conditions, though for a zero-parameter pricing lookup there are effectively none.

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

get_program_overviewProgram overviewA
Read-only
Inspect

This month's program snapshot in one call: revenue, conversions, commissions, top affiliates by commission, and the most recent conversions. In clients that show MCP Apps cards (Claude, ChatGPT) this renders as an interactive card; other clients get the same data as JSON. Requires Pro plan or higher.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
periodNo
revenueYes
currencyNo
commissionsNo
topAffiliatesYes
conversionsCountYes
recentConversionsYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuinely non-structured context: client-dependent rendering (interactive card in Claude/ChatGPT vs JSON elsewhere) and an entitlement prerequisite ('Requires Pro plan or higher'), both of which affect how an agent should invoke and present the result.

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?

Three sentences, front-loaded with the data payload and followed by rendering and entitlement notes. Every sentence carries distinct information, though the card-rendering clause is only marginally relevant to tool selection.

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

Completeness4/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-value explanation is not required, and the description covers scope (this month), delivery format, and the plan prerequisite. The only remaining gap is the absence of routing guidance relative to sibling aggregation tools.

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?

The tool takes zero parameters, so there is nothing for the description to disambiguate. Baseline for a parameterless tool is 4; the description adds the useful note that scope is fixed to the current month.

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 names a specific resource ('this month's program snapshot') and enumerates the exact contents (revenue, conversions, commissions, top affiliates, recent conversions), so an agent knows precisely what comes back. It does not, however, contrast itself with close siblings like get_stats or list_conversions, so differentiation is left to inference.

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?

'in one call' implicitly signals this as a consolidated alternative to several separate calls, which is useful, but the description never explicitly says when to prefer it over get_stats or list_conversions. Usage is implied rather than stated.

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

get_setup_statusGet setup statusA
Read-only
Inspect

Where this LinkJolt account is in setting up its affiliate program: the business name and website, the launch steps (business details, campaign, payment connection, first affiliate, first sale) with the next one to do, the tracking script tag for the site and whether it has been seen, and each campaign's join link. Call it first when helping someone set up or launch. When business.needsDetails is true the name is a placeholder LinkJolt made at sign-up (from the email domain, or the person's first name): ask for the real one. Connecting Stripe or another payment platform can only be done by the person in the browser; connectLinks gives Stripe's one-click link for this account and the page for the others. Requires Pro plan or higher, or a new account that has not picked a plan yet.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, non-destructive, closed-world), and the description adds real behavioral context beyond them: a plan-tier entitlement gate, the fact that the returned business name may be an auto-generated placeholder derived from email domain or first name, and that Stripe/payment connection is browser-only with connectLinks supplying the one-click URL. Nothing contradicts 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?

Front-loaded with the resource and its contents before any conditional guidance, then ordered by actionability: when to call, placeholder-name handling, payment connection constraint, eligibility. The parenthetical step list and field names are dense but every clause carries information an agent would otherwise have to guess.

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?

There is no output schema, so the description carries the return-value burden and does it: it lists the returned sections, explains the meaning of the needsDetails flag and connectLinks, and discloses the plan prerequisite. An agent has enough to call it correctly and interpret the result without additional tools.

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?

The tool takes zero parameters, so the baseline is 4 and there is no parameter syntax to disambiguate. The description instead spends its space on field-level semantics of the response (needsDetails, connectLinks), which is useful but not parameter documentation.

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?

Names a specific resource (account's affiliate-program setup state) and enumerates the concrete payload: business name/website, the five launch steps plus the next one, tracking script tag and whether it has been seen, and per-campaign join links. The phrase 'Call it first when helping someone set up or launch' separates it from siblings like get_program_overview or check_tracking.

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

Usage Guidelines5/5

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

Explicitly says when to call it ('first when helping someone set up or launch'), states an eligibility precondition ('Requires Pro plan or higher, or a new account that has not picked a plan yet'), and gives branching guidance for the needsDetails flag and for payment connection, which can only be completed by the person in the browser.

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

get_statsGet account statsA
Read-only
Inspect

Get aggregate stats for the brand: revenue, commissions, conversions, clicks (optionally within a date range), with money also listed per currency in byCurrency. Requires Pro plan or higher.

NameRequiredDescriptionDefault
toNoEnd of the range as an ISO date
fromNoStart of the range as an ISO date

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare this a safe, read-only, closed-world call, so the description doesn't need to re-establish that. It adds two things structured fields don't: an entitlement prerequisite (Pro plan) that will cause failures if unmet, and a return-shape detail ('money also listed per currency in byCurrency') that an agent can use to interpret the response.

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?

A single front-loaded sentence that leads with the verb and the metric list, then the optional filter, then the prerequisite. Dense but every clause carries information; the parenthetical date-range note is slightly awkwardly embedded but not wasteful.

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

Completeness4/5

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

With no output schema, the description must convey return contents, and it does so by listing the metrics and the byCurrency breakdown. Gaps remain around aggregation granularity and the default period when no range is given, but nothing essential for a correct call is missing.

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 100% and both params are documented as ISO dates, so the baseline is 3. The description only adds that the range is optional and that 'from'/'to' form a pair; it doesn't state what happens when only one bound is supplied or what default window applies when both are omitted.

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?

Names a specific verb ('Get aggregate stats') and resource ('for the brand') and enumerates the metrics returned (revenue, commissions, conversions, clicks), which distinguishes it from the list_* siblings that return raw records. It does not explicitly name a sibling alternative, but the aggregate framing is clear enough that an agent won't confuse it with list_conversions or get_program_overview.

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 real usage gate ('Requires Pro plan or higher') and clarifies that the date range is optional, so an agent knows it can call this with no arguments. No explicit when-not or named alternative, which keeps it short of a 5, but the context is sufficient to decide whether and how to call it.

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

get_teamGet teamA
Read-only
Inspect

Get one Affiliate Team with members, campaigns and goals. Requires the Scale plan.

NameRequiredDescriptionDefault
teamIdYesThe team id

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish that this is a safe, read-only, non-destructive, non-open-world operation. The description adds useful context beyond annotations by noting the included related data (members, campaigns, goals) and the Scale plan requirement. It stops short of describing error behavior or pagination, but the annotation coverage lowers the burden.

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 two sentences with no wasted words. The core action and returned scope are front-loaded, followed by the prerequisite, making it easy to scan.

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?

Given the low complexity, single required parameter, 100% schema coverage, and rich read-only annotations, the description is complete enough. It explains what is returned and the plan prerequisite without needing an output schema.

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 100%, and the sole parameter teamId is documented as 'The team id' in the schema. The description does not add syntax, format, or validation details beyond the schema. A baseline score of 3 is appropriate because the schema already carries the parameter semantics.

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 specific verb and resource: 'Get one Affiliate Team.' It also clarifies the returned scope by mentioning members, campaigns, and goals, which helps distinguish this from list_teams. However, it does not explicitly name or compare against sibling tools.

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

Usage Guidelines2/5

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

The only usage-related information is the prerequisite 'Requires the Scale plan.' There is no guidance on when to use this tool versus list_teams, get_campaign, or other related tools. The agent must infer that a teamId is needed to fetch a single team.

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

get_tracking_instructionsGet tracking instructionsA
Read-only
Inspect

The steps to track affiliate sales on one payment platform, filled in with this account's own tracking script and webhook address: the same text the Integrations page gives to AI assistants. Use it to help add the tracking script to the site and pass the referral to checkout, then check_tracking to confirm it works. Connecting the platform itself happens in the browser (connectLinks: Stripe in one click, the others on the Integrations page), and for Stripe, Paddle, Polar and Creem connecting there sets up the webhook, so a manual webhook step is only needed without that connection. Requires Pro plan or higher, or a new account that has not picked a plan yet.

NameRequiredDescriptionDefault
platformYesWhere the business takes payment. payment-links covers Stripe Payment Links, Gumroad and Lemon Squeezy.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already establish that this is a read-only, non-destructive, non-open-world operation, and the description adds important behavior beyond that: the output is personalized with the account's tracking script and webhook address, and access requires Pro plan or higher or a new unpicked account. It also discloses platform-specific webhook behavior for Stripe, Paddle, Polar, and Creem without contradicting 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.

Conciseness4/5

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

The description is front-loaded with what the tool returns and then adds usage, connection, and plan prerequisites. It is dense and long for a single paragraph, but most clauses carry actionable context rather than filler.

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?

For a one-parameter read-only tool with no output schema, the description is complete: it explains what the return contains, how to use it, the relevant next step, platform connection caveats, and access prerequisites. An agent has enough context to call it correctly and understand the result.

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 enum and platform descriptions already carry most of the parameter meaning. The description adds useful context that the selected platform determines whether a manual webhook step is needed, especially for Stripe, Paddle, Polar, and Creem, which goes beyond the schema.

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?

It states a specific verb and resource: returns tracking instructions for affiliate sales on a chosen payment platform, personalized with this account's script and webhook. It also makes clear the return is the same text shown on the Integrations page for AI assistants, which distinguishes it from setup/checking tools like check_tracking.

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

Usage Guidelines5/5

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

The description explicitly says to use it to add the tracking script to the site and pass the referral to checkout, then use check_tracking to confirm it works. It also explains that platform connection happens in the browser and that manual webhook steps are only needed when that connection is not used.

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

invite_affiliateInvite affiliateA
Idempotent
Inspect

Email one person an invitation to join a campaign as an affiliate. This sends a real email in the business's name, so confirm the address and campaign with the user first. Refused when the person is already on the campaign or already has a waiting invitation. At most 10 a minute. Requires Pro plan or higher.

NameRequiredDescriptionDefault
nameNoThe person's name, used in the email greeting
emailYesThe person's email address
campaignIdYesThe campaign to invite them to

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only declare the generic safety profile (readOnlyHint=false, openWorldHint=true, idempotentHint=true). The description adds materially: a real email is sent under the business's name, the call is refused for duplicate/campaign-existing recipients, it is rate limited to 10 per minute, and it requires a Pro plan. These are exactly the traits an agent cannot infer from the structured fields.

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?

Four short sentences, front-loaded with the action, then the user-confirmation requirement, then failure modes, then rate and plan limits. No sentence is redundant.

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

Completeness4/5

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

For a mutation tool with no output schema, the description covers side effects, refusal cases, rate limits, and plan gating, which is strong. It stops short of saying what a successful call returns or where the invitation state becomes visible, a minor remaining gap.

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 coverage is 100%, so name, email, and campaignId are already documented. The description adds only a soft constraint (verify the address and campaign with the user) and no format or semantic detail beyond the schema, which is the expected baseline-3 case.

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, resource, and scope: email ONE person an invitation to join a campaign as an affiliate. The 'one person' scope distinguishes it cleanly from list_affiliates and update_affiliate_status, and no sibling performs the same action.

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 explicit preconditions (confirm address and campaign with the user first) and explicit refusal conditions (already on campaign, already has a waiting invitation), plus a plan prerequisite. The only gap is that it never names an alternative tool for adjacent tasks such as bulk or re-inviting.

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

list_affiliatesList affiliatesA
Read-only
Inspect

List affiliates across your campaigns, with earnings and click counts. Requires Pro plan or higher.

NameRequiredDescriptionDefault
pageNoPage number, starting at 1 (default 1)
sortNoSort as field:direction, e.g. joinedAt:desc
limitNoResults per page, max 100 (default 25)
statusNoFilter by status
campaignIdNoOnly affiliates on this campaign

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare this as a non-destructive read operation, and the description adds meaningful context beyond them by stating the plan requirement and hinting at returned fields (earnings and click counts). It does not cover pagination behavior or full response structure, but the added entitlement and return-content details are useful.

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 two tight sentences with no wasted text, and the core operation is front-loaded before the plan requirement. Every sentence contributes useful information.

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

Completeness4/5

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

Given the rich schema and read-only annotations, the description is largely sufficient: it identifies the resource, plan requirement, and some return content. It could be more complete by clarifying pagination or when to choose this listing tool over related reporting tools.

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 100%, so all five parameters are already documented in the schema. The description only vaguely implies campaign filtering with "across your campaigns" and adds no syntax or behavioral nuance beyond the schema.

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 specific verb and resource: "List affiliates," with scope across campaigns and returned data such as earnings and click counts. It is clearly distinguishable from sibling list tools by resource, though it does not explicitly name alternatives or exclusions.

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?

It gives a useful prerequisite ("Requires Pro plan or higher") but does not explain when to use this tool rather than related tools such as get_stats, list_payouts, or update_affiliate_status. Usage is implied by the tool name and description rather than explicitly guided.

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

list_awardsList bonus awardsA
Read-only
Inspect

List team bonus awards across all teams, for reconciliation. Read-only: approving awards is deliberately not available to assistants. Requires the Scale plan.

NameRequiredDescriptionDefault
pageNoPage number, starting at 1 (default 1)
limitNoResults per page, max 100 (default 25)
statusNoFilter by award status
teamIdNoOnly awards for this team
periodKeyNoFilter by period, e.g. 2026-07
affiliateIdNoOnly awards for this affiliate

TDQS

A4/5.0
Behavior4/5

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

Beyond the readOnlyHint/destructiveHint annotations, the description adds two facts the agent cannot get from structured data: the read-only nature is a deliberate assistant limitation rather than just a hint, and the tool is plan-gated on Scale. It doesn't mention pagination defaults or authorization scope, which the schema partially covers.

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, each carrying distinct information: what it does, what it deliberately doesn't do, and what it costs to access. Nothing is padded and the core purpose is front-loaded.

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

Completeness4/5

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

For a zero-required-parameter read tool with a rich, fully described schema and safety annotations, the description covers purpose, plan gating, and the approval exclusion. The only marginal gap is that it doesn't hint at what an award record contains or how reconciliation should interpret status values, but that is minor without an output schema.

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 100%, so all six filters (page, limit, status, teamId, periodKey, affiliateId) are already documented in the schema. The description adds no syntax or format detail beyond that, so the baseline 3 applies.

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?

States a specific verb and resource (list bonus awards) plus the scope 'across all teams' and a use case (reconciliation). It doesn't need to differentiate from a close sibling because no other award-related tool exists, though it also doesn't position itself against list_payouts or list_team_goals which could cause confusion about which financial data lives where.

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 clear context for calling it (reconciliation), an explicit exclusion ('approving awards is deliberately not available to assistants'), and a hard prerequisite ('Requires the Scale plan'). No alternative tool is named for award mutation, but the exclusion effectively tells the agent not to attempt approval.

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

list_campaignsList campaignsA
Read-only
Inspect

List the affiliate campaigns on this LinkJolt account (the brand the API key belongs to), with stats. Requires Pro plan or higher.

NameRequiredDescriptionDefault
pageNoPage number, starting at 1 (default 1)
sortNoSort as field:direction, e.g. createdAt:desc
limitNoResults per page, max 100 (default 25)

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so safety is covered. The description adds real value beyond that: results are scoped to the brand owning the API key, responses include stats, and a Pro plan is required — none of which appear in 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.

Conciseness4/5

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

One compact sentence covering resource, scope, and return shape, followed by a short plan requirement. Front-loaded and waste-free, though the parenthetical scope clause is slightly dense.

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

Completeness4/5

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

With no output schema, 'with stats' usefully signals what comes back, and the plan prerequisite prevents a failed call. For a three-optional-parameter list tool this is nearly sufficient; only explicit sibling routing is missing.

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 coverage is 100%, so page, sort, and limit are fully documented with defaults and the max-100 cap. The description adds no pagination or sort semantics of its own, which is acceptable given the schema does the work, but nothing extra is contributed.

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?

States a specific verb (List) and resource (affiliate campaigns) plus the exact scope: the LinkJolt account tied to the API key. The singular sibling get_campaign is implicitly distinguished by 'List', though the description never names it explicitly.

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 prerequisite 'Requires Pro plan or higher' is a useful gating condition, but there is no guidance on when to pick this over get_campaign for a single record or other list_* siblings. Usage is only implied by the verb.

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

list_conversionsList conversionsA
Read-only
Inspect

List conversions (tracked sales) with filters for status, campaign, affiliate and date range. Requires Pro plan or higher.

NameRequiredDescriptionDefault
toNoOnly conversions on or before this ISO date
fromNoOnly conversions on or after this ISO date
pageNoPage number, starting at 1 (default 1)
sortNoSort as field:direction, e.g. createdAt:desc
limitNoResults per page, max 100 (default 25)
statusNoFilter by payment status
campaignIdNoOnly conversions for this campaign
affiliateIdNoOnly conversions for this affiliate

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already establish read-only, non-destructive, closed-world behavior, so the description need not repeat safety semantics. It adds useful access context with the Pro plan requirement and clarifies what a conversion represents ('tracked sales').

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 only two sentences and front-loads the core purpose and filters. Every sentence carries useful information with no wasted wording.

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

Completeness4/5

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

For a list tool with no output schema, full parameter documentation, and annotations covering safety, the description is largely complete. It could mention pagination or return shape, but those details are either schema-covered or obvious for a listing operation.

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 100%, so all eight parameters are already documented in the schema. The description summarizes the main filter groups but does not add syntax, defaults, or constraints beyond what the schema provides, making the baseline 3 appropriate.

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 uses the specific verb 'List' with the resource 'conversions (tracked sales)' and names the supported filter dimensions. This clearly distinguishes it from mutation siblings like create_conversion and update_conversion.

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?

It states the filtering context and adds a prerequisite ('Requires Pro plan or higher'), which helps an agent decide whether the call is available. However, it does not explicitly name alternatives or when not to use this tool.

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

list_couponsList couponsA
Read-only
Inspect

List registered affiliate coupon codes. Requires Pro plan or higher.

NameRequiredDescriptionDefault
codeNoLook up one code
pageNoPage number, starting at 1 (default 1)
limitNoResults per page, max 100 (default 25)
providerNoFilter by provider
campaignIdNoOnly coupons for this campaign
affiliateIdNoOnly coupons for this affiliate

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare the tool read-only and non-destructive. The description adds the plan-tier gating, which is valuable. It says nothing about the response contents, pagination metadata, or what happens on a lower plan.

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?

Two short sentences, front-loaded, with no wasted words.

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?

This is a simple read-only list tool with full schema coverage, so it is mostly adequate. However, with no output schema, the description does not say what coupon fields are returned or how pagination totals appear.

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 coverage is 100% and documents defaults and limits. The description adds no parameter information, so the baseline of 3 applies.

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?

"List registered affiliate coupon codes" gives a specific verb and resource. It is distinct from create_coupon by verb alone, but it does not explicitly set itself apart from siblings such as search or fetch.

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 Pro plan requirement is a useful prerequisite. There is no guidance on when to use the code parameter versus a general search, and no mention of the search/fetch alternatives.

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

list_payoutsList payoutsA
Read-only
Inspect

List the affiliate payout queue for reconciliation. Requires Pro plan or higher.

NameRequiredDescriptionDefault
toNoOnly payouts on or before this ISO date
fromNoOnly payouts on or after this ISO date
pageNoPage number, starting at 1 (default 1)
limitNoResults per page, max 100 (default 25)
statusNoFilter by payout status
affiliateIdNoOnly payouts for this affiliate
conversionIdNoOnly payouts for this conversion

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so safety is covered; the description adds the non-obvious entitlement gate (Pro plan), which is genuine behavioral context. It omits pagination behavior and return shape, which are not in 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?

Two short sentences, purpose first, prerequisite second — zero filler and nothing an agent must sift through.

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?

There is no output schema, yet the description never says what a payout record contains or how pagination/results are returned. The plan gate is covered, but for a 7-parameter listing tool with no output schema the return-value gap leaves it only minimally adequate.

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 100% with all seven filters, defaults, and the 100-result cap documented inline. The description adds nothing beyond the schema, so the baseline 3 applies.

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?

States a specific verb and resource (list the affiliate payout queue) plus a stated purpose (reconciliation), which distinguishes it from adjacent list_* siblings like list_conversions and list_awards. It stops short of naming which sibling to prefer for payout-adjacent data.

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?

'For reconciliation' gives a clear usage context, and 'Requires Pro plan or higher' is a real prerequisite an agent must check before calling. No explicit exclusions or alternative-tool routing are provided.

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

list_team_goalsList team targetsA
Read-only
Inspect

List a team's targets and current-period progress. Requires the Scale plan.

NameRequiredDescriptionDefault
teamIdYesThe team id

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds a non-obvious operational constraint, the Scale plan requirement, plus an indication of what is returned (targets with current-period progress), which is real value beyond 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?

Two short sentences with zero waste, front-loading the action and the returned content before the prerequisite. Nothing is padded or repeated.

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

Completeness4/5

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

For a one-parameter read tool with no output schema, the description covers purpose, returned content and a plan gate. The only gap is that it never states behavior when the team has no targets or how progress is scoped to the current period.

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?

With a single required teamId parameter at 100% schema coverage, the schema already carries the parameter meaning. The description adds nothing about the id format or scope, so the baseline of 3 applies.

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 gives a specific verb and resource ('List a team's targets') plus the returned content ('current-period progress'), which separates it from list_teams and the other list_* siblings. It stops short of naming an alternative tool explicitly, so it is clear but not sibling-differentiating at the highest level.

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?

'Requires the Scale plan' is a genuine prerequisite that tells the agent when the call will fail rather than when to choose it. There is no guidance on when to prefer this over other listing tools or on what to do if the plan requirement is unmet, leaving usage largely implied.

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

list_teamsList teamsA
Read-only
Inspect

List Affiliate Teams with rosters, targets and pending awards. Requires the Scale plan.

NameRequiredDescriptionDefault
pageNoPage number, starting at 1 (default 1)
limitNoResults per page, max 100 (default 25)

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=false), so the description's job is to add context — and it does, disclosing the returned payload shape (rosters, targets, pending awards) and the plan entitlement requirement. That entitlement note is meaningful behavioral information not present in 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?

Two tight sentences, zero filler, with the payload scope front-loaded and the prerequisite second. Every clause carries information the agent needs.

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

Completeness4/5

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

With no output schema, the description usefully enumerates what comes back (rosters, targets, pending awards), which is exactly the gap an agent would otherwise hit. Pagination and the plan gate are covered; only the absence of output structure detail keeps it from a 5.

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 100% with only page and limit, both fully documented in the schema. The description adds no additional parameter semantics, so the baseline 3 applies.

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?

States a specific verb and resource ('List Affiliate Teams') and further specifies what the listing includes: rosters, targets and pending awards. It is clearly distinguishable from the singular get_team and from list_team_goals/list_awards, though it does not explicitly name a sibling as an alternative.

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?

Adds a real eligibility gate — 'Requires the Scale plan' — which tells the agent when this tool can be used at all. It does not spell out an explicit alternative ('use get_team for one team'), but the list-vs-get distinction is clear from the naming and content scope.

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

plan_affiliate_programPlan an affiliate programA
Read-only
Inspect

Plan an affiliate program for a product before launching it: a commission rate, whether to pay on renewals, and how to approve affiliates, from LinkJolt's published benchmarks of real SaaS programs, plus what an affiliate would earn per sale at typical rates. Needs no LinkJolt account. Use it when someone asks what commission to offer or how to structure a program.

NameRequiredDescriptionDefault
priceYesWhat a customer pays per billing period, e.g. 49
billingNoHow the price is billed (default monthly)
currencyNoThree-letter currency code of the price (default USD)
commissionPercentNoA commission rate the person is considering, e.g. 25

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false; the description adds valuable context beyond them: the recommendations are derived from LinkJolt's published benchmarks of real SaaS programs, no auth/account is required, and it also computes per-sale affiliate earnings. It does not detail output shape, but the annotation coverage lowers the burden.

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?

Front-loaded with the core action, followed by the output set, the data source, the no-account note, and the use case. Dense but every clause carries information; only the earnings-per-sale clause slightly duplicates the output enumeration.

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

Completeness4/5

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

For a read-only advisory tool with no output schema, the description tells the agent what kind of recommendations come back and where they are sourced from, which is enough to call it correctly. A brief note on whether results are deterministic or vary by currency/billing would round it out.

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 100%, so all four parameters are already documented with examples and a default ('default monthly', 'default USD'). The description hints at the role of commissionPercent via 'what an affiliate would earn per sale at typical rates' but adds no syntax or constraint detail beyond the schema. Baseline 3 applies.

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 + resource ('Plan an affiliate program for a product before launching it') and enumerates the concrete outputs: commission rate, renewal payout policy, affiliate approval approach, and per-sale earnings. This is clearly distinguishable from sibling tools like create_campaign or get_program_overview, which are operational rather than advisory.

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?

Explicitly names the triggering question ('when someone asks what commission to offer or how to structure a program') and adds a precondition not visible in the schema ('Needs no LinkJolt account'). It stops short of naming alternatives or exclusions, but no sibling overlaps this planning function.

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

update_affiliate_statusApprove or reject affiliateA
DestructiveIdempotent
Inspect

Approve or reject an affiliate who applied to a campaign and is waiting for review (list_affiliates with status pending shows who is waiting, with each campaign they applied to). Approving lets them promote the campaign at once: they get their link by email, and a coupon code too when the campaign makes them. Rejecting is final from here: they cannot apply again, and only the dashboard can let them back in. Confirm each decision with the user before calling. This never approves sales or commissions. Requires Pro plan or higher.

NameRequiredDescriptionDefault
actionYesapprove lets them in; reject turns them down
campaignIdYesThe campaign they applied to
affiliateIdYesThe affiliate who applied

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond annotations: it discloses the downstream effects of approve (email link, coupon when applicable), the irreversibility of reject ('cannot apply again, and only the dashboard can let them back in'), and the boundary against approving sales/commissions. Annotations flag destructiveHint and idempotentHint, and the description supplies the consequences that make those hints actionable.

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?

Front-loaded with the decision and the discovery path, then effects, then constraints. Dense but each sentence carries distinct information; the parenthetical about list_affiliates is slightly bulky but functional.

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?

No output schema exists, and the description covers what an agent would otherwise need to infer: what happens on each branch, what is irreversible, plan gating, and the confirmation requirement. Nothing material is missing for a 3-parameter mutation.

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 baseline is 3; the description earns an extra point by explaining what each action actually causes rather than restating the enum, and by clarifying that campaignId is the campaign the affiliate applied to. No format/syntax detail for the IDs is added, so it stops short of a 5.

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 paired verb (approve/reject) on a specific resource (an affiliate's application to a campaign) and scopes it to 'waiting for review'. An agent can distinguish this from update_campaign, invite_affiliate, or update_conversion without opening a schema.

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

Usage Guidelines5/5

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

Explicitly routes discovery through a sibling: 'list_affiliates with status pending shows who is waiting'. Adds a hard prerequisite ('Confirm each decision with the user before calling') and an eligibility gate ('Requires Pro plan or higher'), plus an exclusion ('This never approves sales or commissions').

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

update_businessUpdate business detailsA
DestructiveIdempotent
Inspect

Set the business name and website for this LinkJolt account (the brand the connection belongs to). Affiliates see the name on the join page and in emails. Send either or both. Requires Pro plan or higher, or a new account that has not picked a plan yet; live keys only.

NameRequiredDescriptionDefault
websiteNoThe website, e.g. acme.com (https:// is added when missing)
businessNameNoThe business or product name, at least 2 characters

TDQS

A4.2/5.0
Behavior4/5

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

Goes beyond the annotations by explaining the visible effect (affiliates see the name on the join page and in emails) and the gating conditions (plan tier, live keys). It does not state what happens to a field that is omitted — whether the existing value is preserved or cleared — which matters given the partial-update framing and idempotent/destructive hints.

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: what it sets, who sees it, then constraints. The purpose and optionality come first, prerequisites last — zero filler.

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

Completeness4/5

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

Covers purpose, effect, optionality, and access constraints, which is sufficient for a 2-optional-param update with no output schema. The remaining gap is the omission/clearing semantics of a partial update, which an agent would need before deciding whether to send one field only.

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 coverage is 100%, so both parameters are already documented with examples and the https:// normalization rule. The description adds only indirect meaning for businessName (its audience visibility) and nothing new about the website field, so this sits at the baseline.

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 (Set) and resource (business name and website on this LinkJolt account) with the exact fields it mutates. The resource is clearly distinct from siblings like update_campaign or update_affiliate_status, so an agent can distinguish it without opening the 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?

"Send either or both" clarifies that no parameter is required and that partial updates are acceptable. It also gives real prerequisites (Pro plan or higher, or a new unplanned account; live keys only), which is strong context, but it never names an alternative tool or a when-not-to-use condition.

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

update_campaignChange campaignA
DestructiveIdempotent
Inspect

Change an existing campaign: its name, description, where links send people, status (active, or inactive to pause it), the commission, whether it is listed in the Discovery marketplace, whether new affiliates are approved automatically, or the recurring commission terms. Send only what changes; everything else stays as it is. Confirm the exact change with the user before calling, because affiliates see the new terms at once. Commission tiers, coupon codes, files and prices are changed on the dashboard. Returns the campaign and changed, the fields that actually changed. Requires Pro plan or higher; live keys only.

NameRequiredDescriptionDefault
nameNoNew campaign name, at least 2 characters
statusNoactive runs the campaign; inactive pauses it
isPublicNoList the campaign in the Discovery marketplace
targetUrlNoWhere affiliate links send people
campaignIdYesThe campaign to change
descriptionNoNew description shown to affiliates
commissionTypeNoPercentage of the sale, or a fixed amount per sale
commissionValueNoThe percent (e.g. 25) or the fixed amount in the campaign currency
autoApproveAffiliatesNoApprove affiliates who join through the join link without review
recurringCommissionModeNoLimit renewals by months since the first sale, or by number of payments
recurringCommissionTypeNoRenewals pay the same rate as the first sale, or a custom rate
recurringCommissionCountNoPayments that pay commission, including the first
recurringCommissionValueNoThe renewal rate when recurringCommissionType is custom
enableRecurringCommissionsNoAlso pay commission on subscription renewals
recurringCommissionDurationMonthsNoMonths of renewals that pay commission

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only say this is destructive, idempotent and open-world; the description adds the substantive consequences: it is a partial update ('Send only what changes; everything else stays as it is'), changes are immediately visible to affiliates, and the response includes the campaign plus a `changed` field listing fields actually modified. That is real behavioral context beyond what any structured field conveys.

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?

A single dense paragraph, front-loaded with the verb and resource, then the mutable-field list, then the partial-update rule, then caveats. Nearly every clause maps to a distinct parameter or constraint, but the enumeration is long enough that tightening a few entries (e.g. the recurring-commission cluster) would improve scanability.

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?

For a 15-parameter mutation tool with no output schema, it covers the full picture: what can change, that only changed fields need sending, plan and key prerequisites, the affiliate-visibility side effect, and the shape of the return value. Nothing an agent needs in order to call this correctly is missing.

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 schema already documents all 15 parameters and the baseline is 3. The description earns an extra point by grouping the patchable fields into meaningful clusters and clarifying semantics that matter for invocation — e.g. 'inactive to pause it' and the partial-update rule that determines which params to send — though it still largely mirrors schema text.

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?

Opens with a specific verb+resource ('Change an existing campaign') and then enumerates exactly which attributes are mutable (name, description, targetUrl, status, commission, Discovery listing, auto-approval, recurring terms). It also draws a hard boundary around what this tool does NOT touch, so an agent can distinguish it from create_campaign, update_conversion, or dashboard-only operations without opening a schema.

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

Usage Guidelines5/5

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

Explicit about when to use it and what to do instead: 'Commission tiers, coupon codes, files and prices are changed on the dashboard.' It also states required preconditions (Pro plan or higher, live keys only) and a mandatory confirm-with-user step before invoking — exactly the routing information an agent needs.

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

update_conversionApprove or reject conversionA
DestructiveIdempotent
Inspect

Approve or reject a pending conversion. Requires an Ultimate or Scale plan key with write access. Refunded conversions are terminal and cannot be changed. Approving a conversion whose commission is more than 5 times its sale (or any commission on a zero sale) is refused with commission_above_sale and changes nothing; show the user the returned sentence and set confirmAboveSale to true only after they confirm. If automatic payouts are switched on for the brand, approving a conversion queues its commission for the next automatic payout run (at least a day later, Stripe payouts only; affiliates paid by PayPal or Wise are paid by hand), and rejecting an approved one takes it back out of that queue. This tool never sends money itself.

NameRequiredDescriptionDefault
statusYesNew status
conversionIdYesThe conversion id
confirmAboveSaleNoApprove even though the commission is more than 5 times its sale. Send true only after the user has seen the commission_above_sale message and confirmed it.

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the destructiveHint/idempotentHint annotations: refunded conversions are terminal, the >5x-sale guard refuses with commission_above_sale and changes nothing, approval queues the commission for the next automatic payout run (Stripe only, at least a day later, PayPal/Wise paid by hand), and rejection removes it from the queue. The closing 'never sends money itself' sets the expectation for any agent tempted to report a payment as made.

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?

Front-loaded with the action and preconditions, then the refusal path, then side effects. It is long for one tool but nearly every clause carries operational weight; the Stripe/PayPal/Wise parenthetical is the one detail that could be trimmed without loss to tool selection.

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?

For a destructive, idempotent mutation with no output schema, the description covers auth requirements, terminal states, the guard/confirmation loop including the returned error sentence, and downstream payout side effects. An agent has everything needed to call it safely and explain outcomes to a user.

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 real meaning on top by explaining the conditional workflow around confirmAboveSale (only after user confirmation of the returned sentence) and the consequence of the status choice on payout queues. conversionId semantics remain purely schema-level, which is fine for an identifier.

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 and resource ('Approve or reject a pending conversion'), immediately distinguishing it from create_conversion and list_conversions in the sibling set. The 'pending' qualifier further narrows the scope of what it acts on.

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 clear preconditions (Ultimate or Scale plan key with write access, conversion must be pending) and an explicit escalation path: set confirmAboveSale=true only after the user has seen the commission_above_sale message and confirmed. It does not explicitly route the agent away from sibling tools, but the precondition framing leaves little ambiguity about when this applies.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 27 tool updates
    • First observedcheck_tracking
    • First observedcreate_campaign
    • First observedcreate_conversion
    • First observedcreate_coupon
    • First observedfetch
    • First observedget_campaign
    • First observedget_linkjolt_plans
    • First observedget_program_overview
    • First observedget_setup_status
    • First observedget_stats
    • First observedget_team
    • First observedget_tracking_instructions
    • First observedinvite_affiliate
    • First observedlist_affiliates
    • First observedlist_awards
    • First observedlist_campaigns
    • First observedlist_conversions
    • First observedlist_coupons
    • First observedlist_payouts
    • First observedlist_team_goals
    • First observedlist_teams
    • First observedplan_affiliate_program
    • First observedsearch
    • First observedupdate_affiliate_status
    • First observedupdate_business
    • First observedupdate_campaign
    • First observedupdate_conversion

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to access affiliate marketing capabilities through AgentFuse's API, allowing them to browse affiliate programs, generate tracked links, and record conversions without writing HTTP code.
    7
    27 npm
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables users to manage affiliate marketing directly within Claude by connecting to the Affilync platform. Affiliates can search campaigns and track earnings, while brands can create campaigns, monitor performance, and manage affiliate applications through natural language.
    20
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    MCP server for managing affiliate and referral programs. Track referrals, manage affiliates, process conversions, and handle payouts through AI assistants like Claude, Cursor, and ChatGPT.
    18
    30 npm
    2
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to search products and generate affiliate links across European and global affiliate networks, automating product discovery and link creation for monetization.
    5
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources