Skip to main content
Glama

Server Details

271 agent-payable tools: competitive intel, finance, KYC, compliance, ESG. x402 per-call.

Status
Unhealthy
Last Tested
Transport
Streamable HTTP
URL
Repository
getgapup/gapup-mcp-public
GitHub Stars
1
Server Listing
gapup-mcp

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsC

Average 3.7/5 across 271 of 271 tools scored. Lowest: 1.6/5.

Server CoherenceD
Disambiguation1/5

Over 50 tools share the identical template 'Gapup agent-payable C-suite expertise' with similar French descriptions and reference cases, making their boundaries indistinguishable. Clusters like competitor_intel, competitive_deep_dive, competitor_moves, competitor_profiles, competitor_pricing_radar, competitor_pricing_scrape, and competitor_recommendations heavily overlap in purpose.

Naming Consistency1/5

Names are chaotic: mix of French and English, snake_case and camelCase, verb_noun, noun, and adjective forms with no uniform pattern. Examples like 'bp_narratif', 'content_enrichment', 'ai_governance_full_report_async', and 'job_result' show no coherent naming convention.

Tool Count1/5

271 tools is far beyond any reasonable MCP server scope, creating an overwhelming selection burden for agents. This count vastly exceeds the 25+ threshold for 'too many' and makes navigation impractical.

Completeness2/5

While the server covers many business domains, it lacks lifecycle operations (e.g., no update/delete tools for the deliverables it generates) and the input specifications are vague ('documented case fields' without documentation), creating functional dead ends. The sheer breadth does not compensate for these gaps.

Available Tools

279 tools
abm_architectC
Read-only
Inspect

Architecte ABM — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Gapup Hub — ABM 20 comptes nommés · Budget €120k · Tier 1×5 + Tier 2×15 · Playbooks 3 niveaux. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
productYes
salesTeamNo
icpCriteriaYes
abmBudgetEurNo
targetAccountsYes
currentChannelsNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the agent knows this is a non-mutating, open-world tool. The description adds minor context: inputs are validated server-side and the output is 'audited.' However, it does not disclose behavior like async handling (despite an async parameter), return format, or any side effects. This meets the baseline but adds limited value beyond annotations.

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

Conciseness3/5

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

The description is short (three sentences) and front-loads the tool's name and a branding phrase. The first sentence includes 'Gapup agent-payable C-suite expertise (CMO),' which is promotional and not directly informative. The reference case is specific to one client and may not generalize. The structure is concise but includes extraneous detail that could be replaced with more useful usage instructions.

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

Completeness2/5

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

This is a complex tool with eight parameters, nested objects, and no output schema. The description does not describe what the deliverable contains, how to interpret the result, or how to handle the async parameter (which is present in the schema). Given the complexity, the description is insufficient for an agent to invoke the tool correctly without additional guidance.

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

Parameters2/5

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

Schema description coverage is only 13%, leaving most parameters undocumented. The description does not explain individual fields; it only says 'send the documented case fields' and provides a reference case that hints at targetAccounts, budget, and tiers. The reference case is not mapped to specific schema properties, so the agent is left without semantic guidance for parameters like company, product, salesTeam, icpCriteria, etc.

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

Purpose3/5

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

The description identifies the tool as an 'Architecte ABM' (ABM Architect) and states it 'Returns a structured, audited deliverable,' which suggests it produces an account-based marketing plan or strategy. However, the verb 'Returns' is generic and the purpose is not clearly differentiated from siblings like abm_lookalike_account_finder or account_expansion_mapper. The reference case provides some context but does not explicitly define the tool's core function.

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?

No explicit guidance is given on when to use this tool versus alternatives. The description does not mention exclusions, prerequisites, or contrast with sibling tools. It only implies that this tool is for ABM-related deliverables, but without comparative context the agent cannot determine when this is the right choice.

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

abm_lookalike_account_finderA
Read-onlyIdempotent
Inspect

As a CMO, discover 50 B2B accounts that closely match your top 10 customers' tech stacks and firmographics. This tool analyzes public web data including robots.txt and OpenGraph metadata to identify lookalike accounts for targeted ABM campaigns. Input your top customer domains and desired firmographic filters to receive a ranked list of potential targets with matching technologies and company attributes.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
tech_stack_keywordsNoSpecific technologies to match in lookalike accounts
firmographic_filtersNo
top_customer_domainsYesList of top 10 customer domains to use as seed accounts

Output Schema

ParametersJSON Schema
NameRequiredDescription
statsNo
statusYes
sourcesYes
warningsYes
lookalike_accountsYes
matched_technologiesNo
Behavior4/5

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

Annotations already declare readOnly, openWorld, and idempotent behavior. The description adds value by disclosing concrete behavioral details: it analyzes public web data including robots.txt and OpenGraph metadata and returns a ranked list. This goes beyond the structured hints without contradicting them.

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 three tightly worded sentences that front-load the audience, output count, method, and necessary inputs. Every sentence contributes useful information with no fluff or repetition.

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 moderately complex tool with nested objects and an async flag, the description adequately covers purpose, data sources, inputs, and output format. The async behavior is not explained in the description, but the schema documents it. The openWorld and readOnly annotations cover the remaining behavioral expectations, making the description sufficiently complete for tool selection and invocation.

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 75% and includes clear descriptions for async, tech_stack_keywords, and top_customer_domains. The description reiterates the main inputs but adds little semantic detail beyond the schema. It does help by framing top_customer_domains and firmographic_filters as the core inputs, but does not fully compensate for undocumented nuances.

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 a specific verb ('discover') and clearly identifies the resource and output: 50 lookalike B2B accounts matching top customers' tech stacks and firmographics. It distinguishes the tool's ABM focus from generic account tools and is not a tautology.

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?

Provides clear context ('As a CMO', 'targeted ABM campaigns') and states the required inputs (top customer domains, firmographic filters). However, it does not explicitly mention when not to use this tool or name alternatives among the many sibling tools, so it lacks explicit exclusions.

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

account_expansion_mapperB
Read-only
Inspect

Mapping d'expansion comptes — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Notion B2B Enterprise — top 30 strategic accounts · expansion plays NRR 130%+ target · Snowflake/Shopify/Vercel/Stripe analyzed. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
accountsYes
ownershipYes
Behavior3/5

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

The readOnlyHint: true annotation already covers the safety profile. The description adds that inputs are validated server-side and that the deliverable is 'audited', but it does not mention potential latency, async behavior, or other operational traits beyond what annotations provide.

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

Conciseness3/5

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

The description is relatively short but includes a lengthy reference case ('Notion B2B Enterprise...') that is not directly instructive and may confuse the agent. The structure mixes purpose with promotional content, preventing it from being a crisp, front-loaded directive.

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

Completeness2/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 should explain what the structured deliverable contains, but it only says 'audited deliverable'. It does not mention the async option, prerequisites, or how the various input fields (focus, knownTriggers) affect the output. The tool is complex enough to warrant more completion.

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

Parameters2/5

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

Schema description coverage is only 20%, and the description does not compensate. It merely says 'send the documented case fields' without explaining the semantics of key fields like company.arrTotalEur, accounts.usageScore, or ownership.averageQuotaPerAeEur. This is insufficient for a complex nested 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 clearly identifies the tool as mapping account expansion ('Mapping d'expansion comptes') and mentions its output as a structured, audited deliverable. However, it does not explicitly distinguish it from sibling tools like upsell_hunter or cross_sell_reco, and the reference case adds some ambiguity.

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 a C-suite/strategic context ('CRO expertise') and notes server-side validation, but it does not state when to use this tool over alternatives such as churn_defender or renewal_optimizer, nor does it give exclusions.

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

action_plan_esgC
Read-only
Inspect

Plan d'action ESG — Gapup agent-payable C-suite expertise (SUSTAINABILITY). Returns a structured, audited deliverable. Reference case: TechCorp SAS — Plan ESG 36 mois (500 FTE, €60M CA, score 54→76/100). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
horizonYes36 mois
ambitionsYes
targetLabelsNo
currentScoresNo
availableResourcesYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds that inputs are validated server-side and provides a reference case, but doesn't disclose return format (beyond 'structured deliverable'), pagination, or authentication needs. It doesn't contradict annotations.

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

Conciseness3/5

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

The description is three sentences, but includes marketing fluff ('Gapup agent-payable C-suite expertise') and repeats the title. The reference case and validation note are useful. It could be more concise by removing the tagline.

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

Completeness2/5

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

The tool has 8 parameters including nested objects, and no output schema. The description offers only a vague 'structured, audited deliverable' and a single reference case, without specifying required fields, how to use the async parameter, or what the deliverable contains. This is inadequate for a tool of this complexity.

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

Parameters1/5

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

Schema description coverage is only 13% (only the async parameter has a description). The description says 'send the documented case fields' but does not explain any specific parameters, such as company, ambitions, availableResources, or horizon. With low coverage, the description fails to compensate.

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

Purpose3/5

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

The description starts with the title 'Plan d\'action ESG' and states it returns a structured, audited deliverable, with a reference case of an ESG plan. However, it lacks a clear verb like 'create' or 'generate' and doesn't explicitly differentiate from sibling ESG tools. The purpose is inferable but vague.

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 description provides no guidance on when to use this tool versus alternatives like sustainability_report or esg_audit_multi. It doesn't mention any prerequisites, use cases, or exclusions. The only context is a marketing tagline and validation note.

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

adversarial_input_stress_testerA
Read-onlyIdempotent
Inspect

An asynchronous risk assessment tool that evaluates AI model resilience against adversarial inputs following NIST AI Risk Management Framework (RMF) red-teaming protocols. Designed for security and compliance personas, it accepts model outputs or decision boundaries and returns structured risk scores, failure modes, and adversarial examples. Requires async:true to avoid timeout errors. Outputs include status, warnings, and source references.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
maxTestsNoMaximum number of adversarial tests to run
modelOutputYesThe AI model's output or decision to be stress-tested
adversarialDatasetNoOptional custom adversarial inputs to test
sensitivityThresholdNoThreshold for flagging high-risk adversarial examples

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
riskScoreNoNormalized risk score from adversarial testing
failureModesNo
adversarialExamplesNo
Behavior4/5

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

Annotations already establish read-only, open-world, and idempotent behavior, lowering the burden. The description adds meaningful behavioral context: the async requirement to avoid timeouts, the fact that it returns status/warnings/source references, and that it is a risk assessment tool. No contradictions with annotations, and the added details enhance transparency beyond 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?

The description is three sentences with no filler. The first sentence states the core purpose, the second adds audience and outputs, and the third gives a critical operational requirement. Every sentence earns its place, and the structure is front-loaded with the primary function.

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 presence of an output schema and strong annotations, the description does not need to explain every return value, but it still mentions status, warnings, and source references, which is helpful. It covers the tool's purpose, target audience, inputs, async behavior, and output highlights. It could be slightly more explicit about how to use the results or edge cases, but it is largely complete for its complexity.

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

Parameters4/5

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

Schema description coverage is 100%, so parameters are already well-documented. The description adds value by explaining that the tool 'accepts model outputs or decision boundaries' (clarifying modelOutput) and explicitly notes the async requirement, which gives pragmatic meaning to the async parameter. This exceeds the baseline but does not fully elaborate on edge-case usage.

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

Purpose5/5

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

The description clearly states a specific verb+resource: 'evaluates AI model resilience against adversarial inputs' and further distinguishes itself by referencing NIST AI RMF red-teaming protocols, structured risk scores, failure modes, and adversarial examples. It effectively differentiates from sibling tools like jailbreak_attempt_detector or model_behavior_drift_monitor by emphasizing proactive stress-testing and risk assessment.

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

Usage Guidelines4/5

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

The description provides clear context for use: it is designed for security and compliance personas and accepts model outputs or decision boundaries, implying when to invoke it. It also gives a concrete operational guideline ('Requires async:true to avoid timeout errors'). However, it does not explicitly name alternatives or state when not to use it, so it stops short of exhaustive guidance.

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

affiliate_fraud_clickstream_detectorA
Read-onlyIdempotent
Inspect

Analyzes affiliate clickstream data from Common Crawl to flag potential fraud patterns (duplicate IPs, rapid clicks, device spoofing). Designed for CMOs to validate affiliate traffic quality and prevent budget waste. Inputs: affiliate network name and date range. Outputs: fraud probability score, suspicious IP list, and pattern analysis. Keywords: affiliate fraud detection, clickstream analysis, marketing attribution, traffic validation.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
thresholdNoFraud probability threshold (0.1-0.99)
date_rangeYes
affiliate_networkYesName of the affiliate network to analyze (e.g., 'CJ Affiliate', 'Rakuten')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
suspicious_ipsNo
fraud_probabilityNoOverall fraud probability score (0-1)
patterns_detectedNo
total_clicks_analyzedNo
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so no contradiction exists. The description adds useful context about the data source (Common Crawl) and expected outputs, but does not disclose potential latency, why async might be needed, or error handling behavior. With annotations covering the read-only and idempotency aspects, this is adequate but not rich.

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 concise, with three front-loaded sentences covering purpose, audience, inputs, and outputs. The appended keyword list is slightly redundant but not harmful. It is well-structured and within a reasonable length.

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 moderately complex tool with an output schema, the description covers purpose, data source, inputs, and outputs. It lacks guidance on when to use the async parameter, but that is documented in the schema. Overall it gives enough context to select and begin using the tool without major gaps.

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 75%, and the schema already documents threshold, async, date_range, and affiliate_network. The description restates that inputs are 'affiliate network name and date range' but adds no additional meaning for threshold or async. It meets the baseline but does not compensate for the remaining 25% gap.

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 a specific verb ('Analyzes') plus a specific resource ('affiliate clickstream data from Common Crawl') and a clear purpose ('flag potential fraud patterns'). It lists concrete patterns (duplicate IPs, rapid clicks, device spoofing) and distinguishes itself from generic siblings like fraud_detector or x402_payment_fraud_detector by specifying the affiliate domain and data source.

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

Usage Guidelines4/5

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

The description clearly establishes when to use it: for CMOs to validate affiliate traffic quality and prevent budget waste. This provides strong contextual guidance. However, it does not explicitly name exclusions or alternatives, so it stops short of a 5.

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

africa_trade_barrier_breakerA
Read-onlyIdempotent
Inspect

As a COO, analyze non-tariff trade barriers (NTBs) across African trade corridors using WITS and UNCTAD STAT data. Input origin/destination countries and product HS codes to receive barrier mapping with severity scores and actionable mitigation strategies. Returns structured risk assessment, regulatory compliance gaps, and supply chain optimization recommendations. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
hs_codeNo6-digit Harmonized System product code
origin_countryYesISO 3-letter country code for export origin
destination_countryYesISO 3-letter country code for import destination
include_regulatory_detailsNoWhether to include detailed regulatory text in output

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
warningsYes
barrier_summaryYes
trade_flow_impactNo
regulatory_detailsNo
mitigation_strategiesYes
Behavior5/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds meaningful behavioral context: external data sources (WITS/UNCTAD), structured output content (risk assessment, compliance gaps, recommendations), and timeout/asynchronous behavior ('Pass async:true to avoid timeout'). This goes well beyond the structured 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?

Four sentences, each earning its place: persona/action/scope, inputs/outputs, return value details, and async guidance. Front-loaded with the core purpose and no filler or redundancy.

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?

The description is strong overall, covering purpose, data sources, inputs, output categories, and timeout behavior; the output schema fills in detailed return structure. Minor gap: it does not clarify that hs_code is optional (only origin/destination are required) and leaves async job polling details to the 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 the schema already documents all five parameters. The description mostly reiterates 'origin/destination countries and product HS codes' and 'Pass async:true to avoid timeout,' adding little beyond the schema. It does not clarify optionality of hs_code, so baseline 3 is 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 opens with a specific verb 'analyze' and precise resource: 'non-tariff trade barriers (NTBs) across African trade corridors' using WITS and UNCTAD STAT data. The 'non-tariff' qualifier distinguishes it from tariff- and preference-focused sibling tools like africa_trade_preference_optimizer and tariff_arbitrage_finder. It also clearly lists inputs and expected outputs.

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

Usage Guidelines4/5

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

The description establishes clear usage context: use when analyzing NTBs for African corridors with origin/destination countries and HS codes. It does not explicitly name alternatives or exclusions, but the scope is unambiguous enough to differentiate from sibling tools, and the async guidance adds practical invocation context.

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

africa_trade_finance_esg_raterA
Read-onlyIdempotent
Inspect

As a COO, evaluate ESG compliance of African trade finance providers using World Bank WITS trade statistics and CDP climate disclosure data. Input the financial institution's name or identifier, and receive an ESG rating with breakdown across environmental, social, and governance dimensions. Ideal for due diligence on trade partners or portfolio risk assessment. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoAssessment year (2018-2023)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
countryCodeNoISO 2-letter country code (e.g., 'ZA' for South Africa)
institutionNameYesFull name of the trade finance provider (e.g., 'Standard Bank Group')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
warningsYes
esgRatingYes
socialScoreNo
tradeVolumeNoAnnual trade finance volume (USD)
carbonIntensityNoCO2 emissions per million USD financed (tons)
governanceScoreNo
environmentalScoreNo
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, and the description adds complementary context by mentioning data sources (WITS, CDP) and the output breakdown. The async:true guidance to avoid timeout is a valuable behavioral detail not present in annotations. No contradictions found.

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 concise at three sentences, covering purpose, input, use case, and async tip without redundancy. The opening 'As a COO' is minor but not distracting, and the structure is front-loaded with the core function.

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 rater with an output schema and rich annotations, the description covers the essential aspects: data sources, output dimensions, use cases, and performance guidance. It doesn't explicitly state the geographic scope boundary, but that is implied by the tool name and target audience.

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 practical meaning for institutionName ('name or identifier') and explains async's purpose ('avoid timeout'), going slightly beyond the schema. Year and countryCode are clear from the schema alone, so the description doesn't need to repeat them.

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

Purpose5/5

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

The description clearly specifies the tool's function: evaluating ESG compliance of African trade finance providers using WITS and CDP data, and returning a breakdown across environmental, social, and governance dimensions. This distinguishes it from sibling ESG tools by focusing on a specific target (African trade finance) and methodology.

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

Usage Guidelines4/5

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

The description provides clear usage context: 'Ideal for due diligence on trade partners or portfolio risk assessment.' It does not explicitly name alternative tools or exclusion criteria, but the use case is specific enough for an agent to make an informed choice.

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

africa_trade_preference_arbitrageA
Read-onlyIdempotent
Inspect

Analyzes AGOA (African Growth and Opportunity Act) and EBA (Everything But Arms) trade preference arbitrage opportunities for COOs evaluating export strategies. Compares tariff rates, trade volumes, and preference utilization across eligible African countries using WITS and OECD trade data. Returns structured analysis of potential duty savings, market access advantages, and compliance requirements. — pass async:true REQUIRED to avoid x402 timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoReference year for trade data
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
hs_codeYes6-10 digit Harmonized System product code
exporting_countryYesISO 2-letter country code of African exporter
importing_countryNoISO 2-letter country code of target market (US/EU)
preference_schemeNoTrade preference scheme to analyze

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
duty_savings_pctNoEstimated duty savings percentage under preference scheme
trade_volume_usdNoAnnual trade volume in USD for given HS code
market_access_scoreNoComposite score of market access advantage (0-100)
compliance_requirementsNoList of compliance requirements for preference eligibility
preference_utilization_rateNoPercentage of eligible exports utilizing preference
Behavior5/5

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

Annotations already declare the tool read-only, open-world, and idempotent. The description adds valuable context: data sources (WITS/OECD), structured output components, and a critical warning that async:true is required to avoid x402 timeout. This goes beyond the annotation hints and warns about a real failure mode.

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 three sentences plus a brief async warning, all of which contribute meaning. It front-loads the core purpose and lists concrete outputs. No redundant or filler content.

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 that an output schema exists and the annotations provide safety semantics, the description covers purpose, data sources, output types, and a critical operational requirement. It is sufficient for an agent to select and invoke the tool correctly. The only minor gap is sibling differentiation, which is assessed in purpose/usage dimensions.

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?

The input schema has 100% parameter description coverage, so the baseline is 3. The description does not add meaning to individual parameters beyond what the schema already provides; it only references async in the operational note. Thus, no significant extra 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 clearly identifies the tool's function: analyzing AGOA and EBA trade preference arbitrage opportunities. It specifies the target user (COOs), data sources (WITS/OECD), and output categories (duty savings, market access, compliance). However, it does not explicitly mention how it differs from closely related siblings like africa_trade_preference_optimizer or agoa_eba_intelligence.

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

Usage Guidelines4/5

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

The description implies usage for export strategy evaluation by COOs, but does not state when to choose this over alternatives. There is no explicit 'use this when' or 'for that, use X instead' guidance. The async note provides operational usage, but not comparative guidance.

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

africa_trade_preference_optimizerA
Read-onlyIdempotent
Inspect

As a COO, analyze AGOA/EBA duty savings opportunities with HS code-level trade route optimization. Input origin country, destination country, and HS code to receive duty savings estimates, optimal trade routes, and preference utilization recommendations. Uses UN Comtrade trade flow data, WCO tariff schedules, and African Union trade agreement rules. Ideal for export market evaluation, supply chain optimization, and trade agreement compliance analysis. Keywords: AGOA, EBA, duty savings, trade optimization, HS code, African trade, export strategy.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
hsCodeYes6-10 digit Harmonized System code (e.g., '010121' for live horses)
quantityNoEstimated annual export quantity in units
valueUsdNoEstimated annual export value in USD
originCountryYesISO 3166-1 alpha-3 country code of export origin (e.g., 'KEN' for Kenya)
destinationCountryYesISO 3166-1 alpha-3 country code of import destination (e.g., 'USA' for United States)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
dutySavingsNoEstimated annual duty savings in USD under optimal preference program
optimalRouteNo
alternativeRoutesNo
complianceWarningsNoPotential compliance risks or documentation requirements
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds value by disclosing data sources (UN Comtrade, WCO tariff schedules, AU trade rules) and output types, providing useful context on expected results and scope. It doesn't mention side effects or limitations, but with strong annotations, this is sufficient.

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 concise and front-loaded: first sentence states purpose, second describes inputs/outputs, third cites data sources, fourth lists use cases, followed by keywords. Every sentence serves a clear function with no fluff or redundancy.

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?

The description covers purpose, inputs, outputs, data sources, and target use cases. The presence of an output schema and thorough parameter descriptions offsets the need for return-value details. Minor omissions like async behavior are already addressed in the schema, so the description is sufficiently complete for tool selection.

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?

The input schema provides detailed descriptions for all six parameters, including examples for hsCode and country codes. The description's mention of 'origin country, destination country, and HS code' merely echoes the schema without adding syntax, constraints, or behavior. With 100% schema coverage, the baseline of 3 is 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 clearly identifies the tool as an analyzer of AGOA/EBA duty savings with HS code-level trade route optimization, specifying distinct outputs (duty savings estimates, optimal trade routes, preference utilization recommendations). This specific combination differentiates it from siblings like 'tariff_arbitrage_finder' or 'agoa_eba_intelligence' by emphasizing route optimization and actionable recommendations.

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

Usage Guidelines4/5

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

The description states 'Ideal for export market evaluation, supply chain optimization, and trade agreement compliance analysis,' giving clear use context. However, it does not explicitly mention when not to use this tool or name any alternatives, which keeps it from a perfect score.

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

agoa_eba_intelligenceA
Read-only
Inspect

Intelligence préférentielle AGOA (US→Africa) et EBA/GSP (EU→Africa). Vérifie l'éligibilité d'un pays africain aux programmes tarifaires préférentiels, l'éligibilité d'un produit par code HS, identifie les meilleures opportunités d'export Afrique→US/EU, et fournit les règles de conformité (rules of origin, valeur ajoutée, docs). Différenciateur Africa diaspora : 39 pays AGOA + 47 LDCs EBA encodés. Sources : AGOA.info · EU EBA · EU GSP+ · WTO Tariff · UN Comtrade.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesMode d'analyse : 'country_eligibility' (statut AGOA/EBA/GSP d'un pays africain) | 'product_eligibility' (éligibilité d'un produit par code HS) | 'trade_opportunity' (top opportunités export Afrique→US/EU) | 'compliance_check' (rules of origin, seuils valeur ajoutée, documentation)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
hs_codeNoCode HS (Harmonized System) 6+ chiffres (requis pour product_eligibility). Exemple : '620342' = pantalons coton homme, '090111' = café arabica non torréfié, '060310' = fleurs fraîches.
country_isoNoCode ISO 2-lettres du pays africain (requis pour country_eligibility). Exemples : KE=Kenya, NG=Nigeria, ZA=Afrique du Sud, ET=Éthiopie, LS=Lesotho, GH=Ghana.
destinationNoMarché de destination pour trade_opportunity : 'US', 'EU', ou 'both' (défaut). Ignoré pour les autres modes.
Behavior4/5

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

Annotations already declare the tool read-only and open-world. The description adds valuable behavioral context by listing data sources (AGOA.info, EU EBA, etc.) and emphasizing the tool's encoded country coverage, which informs the agent about data provenance and scope. No contradictions with annotations.

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

Conciseness5/5

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

The description is three sentences long, front-loaded with the primary purpose, and includes only high-value information: the four modes, coverage differentiator, and data sources. Every sentence earns its place, with no redundancy.

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 multi-mode tool with five parameters and no output schema, the description is thorough. It covers all modes, indicates the Africa→US/EU scope, highlights unique country coverage, and cites sources. The schema handles parameter requirements, so the description is complete enough for an agent to select and invoke the tool correctly.

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?

The input schema provides 100% coverage with descriptions and examples for all five parameters, including enum options and required conditions. The description itself does not add significant parameter-level details beyond reiterating the tool's functionalities, 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.

Purpose5/5

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

The description uses specific verbs (vérifie, identifie, fournit) and clearly defines the tool's resource: AGOA/EBA/GSP preferential trade intelligence for Africa–US/EU trade. It distinguishes itself from siblings by its unique coverage of 39 AGOA countries and 47 EBA LDCs, making the purpose unmistakable.

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

Usage Guidelines4/5

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

The description provides clear usage context by enumerating four modes (country eligibility, product eligibility, trade opportunities, compliance) and the geographic scope. It does not explicitly name alternative tools or state when not to use it, but the context is strong enough for an agent to infer appropriate use cases.

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

ai_act_incident_responseA
Read-onlyIdempotent
Inspect

Generates EU AI Act incident response playbooks with regulator notification templates for risk management teams. Inputs include incident severity, AI system type, and affected stakeholders. Outputs structured playbook steps, regulator notification drafts, and compliance checklists. Essential for high-risk AI system breaches requiring formal EU notification — pass async:true REQUIRED to avoid x402 timeout. Keywords: AI Act compliance, incident response, regulator notification, risk management, ISO 27035, NIST SP 800-61.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
severityYes
incident_typeYes
ai_system_typeNo
incident_descriptionNo
affected_stakeholdersNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
next_stepsNo
playbook_stepsNo
compliance_checklistNo
regulator_notificationNo
Behavior4/5

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

Adds critical behavioral detail beyond the annotations by noting that async:true is REQUIRED to avoid x402 timeout, and by describing the structured outputs. The annotations already declare readOnly, openWorld, and idempotent hints, so the description complements rather than repeats them. No contradiction is present.

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

Conciseness4/5

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

The description is compact and front-loads the purpose, then inputs/outputs, then operational note and keywords. The keywords section is slightly extraneous but the core sentences are efficient and non-repetitive.

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 presence of an output schema, the description adequately covers purpose, inputs, outputs, and the critical async timeout behavior. It could mention interactions with sibling tools or more specific severity thresholds, but it is sufficient for an agent to select and invoke the tool correctly in most scenarios.

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

Parameters2/5

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

Schema description coverage is only 17%, so the description must compensate, but it only lists a subset of inputs (severity, ai_system_type, affected_stakeholders) and omits the required incident_type. It explains the async parameter but provides no additional context for the parameter meanings beyond their names, leaving a significant gap for a required parameter.

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

Purpose5/5

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

The description clearly states the tool generates EU AI Act incident response playbooks with regulator notification templates, specifying the verb, resource, and target audience. It distinguishes itself from sibling tools like incident_response_evidence_collector and ai_act_sandbox by focusing specifically on playbook generation for formal EU notification.

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?

Provides an explicit use case: 'Essential for high-risk AI system breaches requiring formal EU notification.' Also gives operational guidance to pass async:true to avoid timeout. However, it does not explicitly name alternatives or when not to use the tool, so it misses the 'when-not/alternatives' component for a 5.

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

ai_act_sandbox_regulatory_sandboxA
Read-onlyIdempotent
Inspect

A legal-focused tool for simulating EU AI Act regulatory sandbox submissions. Provides structured feedback on compliance, risk levels, and required documentation based on EUR-Lex and OECD AI Policy Observatory sources. Accepts AI system descriptions, intended use cases, and technical specifications as input. Returns detailed assessment with warnings, citations, and actionable recommendations for legal teams and AI developers.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
sectorNoPrimary sector of application
riskLevelYesSelf-assessed risk level of the AI system
intendedUseYesPrimary and secondary use cases of the AI system
documentationNoList of provided documentation types (e.g., 'technical', 'ethical', 'data')
systemDescriptionYesDetailed description of the AI system including purpose, architecture, and data sources

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
assessmentNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true. The description adds useful behavioral context beyond annotations by specifying the data sources (EUR-Lex, OECD) and the nature of the return (warnings, citations, recommendations). It does not detail any side effects, but for a read-only simulator this is sufficient.

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, front-loaded with the core purpose, and every sentence adds value. It avoids redundancy with the schema and 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?

The tool has an output schema (per context signals), so return values are already structured. The description fully covers the tool's purpose, inputs, outputs (feedback type), sources, and target audience. Nothing essential is missing for a simulation tool with readOnly and idempotent annotations.

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 the schema already documents all six parameters with clear descriptions. The description broadly mentions 'AI system descriptions, intended use cases, and technical specifications' which maps to the main parameters but adds no syntax or format details beyond what the schema provides. Baseline 3 is 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 clearly states a specific verb ('simulating') and resource ('EU AI Act regulatory sandbox submissions'), and distinguishes itself from sibling tools like ai_act_incident_response and ai_act_training_data_audit by focusing on sandbox submissions. It also names the deliverable (structured feedback on compliance, risk levels, documentation).

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

Usage Guidelines4/5

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

The description provides clear context on when to use it—for simulating regulatory sandbox submissions and obtaining compliance feedback for legal teams and AI developers. However, it does not explicitly state when not to use it or name alternatives, which would warrant a 5.

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

ai_act_training_data_auditA
Read-onlyIdempotent
Inspect

As a CTO, audit AI training datasets for EU AI Act compliance with bias detection and regulatory risk assessment. Inputs: dataset identifier (Hugging Face ID or URL) and optional risk thresholds. Outputs: compliance score, bias metrics, regulatory warnings, and source references. Ideal for pre-deployment risk evaluation. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
dataset_idYesHugging Face dataset identifier or direct URL to dataset
risk_thresholdNo
include_bias_metricsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
bias_metricsNo
compliance_scoreNo
dataset_metadataNo
regulatory_warningsNo
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds useful behavioral context by describing the output structure and the async option ('Pass async:true to avoid timeout'), which goes beyond the schema and annotations.

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

Conciseness5/5

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

The description is three sentences, front-loading the main purpose, then efficiently listing inputs, outputs, use case, and async tip. Every sentence adds value without redundancy or fluff.

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?

The tool has an output schema, so return values are covered structurally. The description still provides essential context: inputs, outputs, use case, and async behavior. No critical information is missing for selection and invocation.

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 50%, meaning two parameters (risk_threshold and include_bias_metrics) lack schema descriptions. The description mentions 'optional risk thresholds' for risk_threshold and 'dataset identifier (Hugging Face ID or URL)' for dataset_id, but it doesn't explain include_bias_metrics at all. This partially compensates but leaves one parameter semantically undocumented.

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

Purpose5/5

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

The description clearly states the tool audits AI training datasets for EU AI Act compliance, with bias detection and regulatory risk assessment. It specifies the primary resource (training datasets) and distinct outputs (compliance score, bias metrics, regulatory warnings, source references), setting it apart from sibling tools like ai_act_incident_response.

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 explicitly notes the tool is 'Ideal for pre-deployment risk evaluation', giving a clear use case. However, it does not mention when not to use it or suggest alternative tools for other compliance tasks, so it lacks direct exclusions/alternatives but provides enough context.

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

ai_governance_full_report_asyncA
Read-only
Inspect

Audit EU AI Act complet (Règlement UE 2024/1689) — implémentation native audit-grade. Classifie le système IA selon les 4 tiers de risque (unacceptable/high_risk/limited_risk/minimal_risk/gpai) sur la base de l'Annexe III et de l'Article 5. Produit : (1) classification tier + justification + articles applicables, (2) checklist conformité Articles 9-15 + 50 + 53-55, (3) gaps documentation Annexe IV, (4) mapping ISO 42001, (5) deadlines EU AI Act 2025-2029, (6) estimation coût et effort, (7) top 10 recommandations P0/P1/P2. Retourne immédiatement (<300ms) un job_id. Poller avec ai_governance_full_report_result(job_id) après eta_seconds (~90s). Cache 7 jours pour inputs identiques. Async tool — register a webhook via webhooks_manage(register, url, [job.completed]) to receive callbacks instead of polling. Faster + lighter. DISCLAIMER : non substitutif à un avis juridique professionnel.

ParametersJSON Schema
NameRequiredDescriptionDefault
company_sizeNoTaille entreprise : startup (≤50), smb (51-250), mid (251-1000), large (1001-5000), enterprise (>5000)
data_sourcesNoSources de données utilisées par le système IA
affected_personsNoCatégories de personnes affectées par les décisions du système (ex: candidats, employés, clients)
geographic_scopeNoZones géographiques de déploiement (ex: 'EU', 'France', 'Global')
intended_purposeYesFinalité prévue du système IA : à quoi sert-il concrètement
deployment_contextNoContexte de déploiement : interne (usage employés), public, B2B, B2C
ai_system_descriptionYesDescription détaillée du système IA : ce qu'il fait, comment il fonctionne, quelles décisions il prend

Output Schema

ParametersJSON Schema
NameRequiredDescription
job_idYesIdentifiant unique du job — passer à ai_governance_full_report_result
statusYes
eta_secondsYesDurée estimée avant disponibilité du résultat
submitted_atYesTimestamp ISO-8601 de soumission
Behavior5/5

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

Beyond annotations (readOnlyHint=true, destructiveHint=false), the description discloses detailed async behavior: returns in <300ms, job_id-based polling, ~90s eta, 7-day cache, and webhook callback support. It also lists the exact report structure (7 deliverables) and includes a disclaimer that it is not a substitute for professional legal advice. This is highly transparent about what the tool does and its limitations.

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 dense and information-rich, using a numbered list for output components and clear, actionable sentences. It is longer than typical but every sentence adds essential operational detail (timing, caching, webhook, disclaimer). Minor redundancy such as 'Faster + lighter' and mixing disclaimer at the end does not significantly detract, but a slightly more structured layout 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?

The description fully covers the async workflow, including submission, polling, result retrieval, webhook alternative, caching, and expected output format. It also clarifies the legal scope and includes a disclaimer. Given the tool's complexity, this description leaves no critical gaps for an agent to invoke it correctly. The output schema is not needed because the description enumerates the report components.

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?

The input schema has 100% description coverage for all 7 parameters, so the schema already provides the needed semantics. The description adds contextual value by mentioning that classification is based on Annex III and Article 5, but it does not elaborate on individual parameter meanings or constraints beyond what the schema already states. With full schema coverage, the baseline of 3 is 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 clearly states the tool audits the EU AI Act, classifies AI systems into risk tiers, and produces a comprehensive report with seven components. It specifies the exact regulation (Règlement UE 2024/1689) and the classification logic (Annexe III, Article 5). It also distinguishes itself from sibling tools by explicitly naming the polling tool (ai_governance_full_report_result) and webhook management (webhooks_manage), clarifying its role as the async submission endpoint.

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 provides explicit usage instructions: it returns a job_id immediately, tells the agent to poll with ai_governance_full_report_result(job_id) after eta_seconds (~90s), and offers an alternative to register a webhook via webhooks_manage. It also notes caching for identical inputs ('Cache 7 jours') and states the webhook path is 'Faster + lighter', guiding the agent to choose the best invocation pattern.

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

ai_governance_full_report_resultA
Read-onlyIdempotent
Inspect

Poll the result of an ai_governance_full_report_async job. Returns status=pending while running, status=completed with the full EU AI Act governance audit report once done (risk_tier, compliance checklist Articles 9-15/50/53-55, Annex IV documentation gaps, ISO 42001 alignment, deadlines 2025-2029, cost estimate, top-10 recommendations P0/P1/P2, compliance_score), status=failed on error, or status=not_found if the job_id is unknown or expired (TTL 24h). Call this after the eta_seconds hint returned by ai_governance_full_report_async (~90s).

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesThe job_id returned by ai_governance_full_report_async (prefix: aigfr_)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

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

Annotations already establish read-only and idempotent behavior, so the bar is lower. The description goes further by disclosing status lifecycle, 24h TTL for job_id, and a summary of the completed report contents (risk_tier, compliance checklist, ISO 42001 alignment, etc.). This adds meaningful operational context 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?

The description is a single dense sentence but every clause conveys useful information—statuses, TTL, report fields, timing. It is front-loaded with the action ('Poll the result') and avoids filler words. While it could be split into two sentences, it is efficient and well-structured.

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 polling tool, the description covers the full lifecycle: when to call, what each status means, what happens on expiry, and the key output fields. Since an output schema exists, it doesn't need to fully document return types, but the description provides a strong overview of the expected result. The inclusion of deadlines and recommendation priorities shows thorough coverage.

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?

The schema description for job_id already includes the prefix (aigfr_) and origin from ai_governance_full_report_async, so coverage is 100%. The tool description adds no additional parameter-level semantics beyond what the schema provides, but that is not required given the high coverage. 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?

The description uses the specific verb 'Poll' and clearly identifies the resource as the result of ai_governance_full_report_async. It explicitly names the sibling async tool, distinguishing it from other result tools like competitive_deep_dive_result. This is a clear, non-tautological statement of purpose.

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 instructs the agent to call this after the eta_seconds hint returned by ai_governance_full_report_async (~90s). It also explains when each status (pending, completed, failed, not_found) appears, giving the agent criteria to decide whether to keep polling or abandon. This is strong usage guidance with a specific timing recommendation.

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

ai_governance_pilotC
Read-only
Inspect

Pilotage de gouvernance IA — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: TalentScope SAS — scoring IA candidats RH (EU AI Act Annex III §4, high-risk). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
aiUseCasesYes
targetFrameworksYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description is consistent. It adds minor context (server-side validation, audited deliverable) but does not disclose other behavior such as async processing, rate limits, or what 'audited' entails beyond the schema's async parameter.

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

Conciseness3/5

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

Three sentences, but the phrase 'Gapup agent-payable C-suite expertise (RISK)' is cryptic and wastes the agent's attention. The description is not overly long, but not every sentence earns its place.

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

Completeness2/5

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

With nested objects, no output schema, and only 20% schema coverage, the description leaves major gaps: the nature of the deliverable, how inputs map to output, and how this relates to other AI governance tools. It is insufficient for an agent to confidently invoke the tool.

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

Parameters2/5

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

Schema description coverage is only 20% (only the async parameter is described). The description says 'send the documented case fields' but fails to enumerate or explain company, aiUseCases, targetFrameworks, or focus. This does not compensate for the low schema coverage.

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

Purpose3/5

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

The description states it 'Returns a structured, audited deliverable' for AI governance pilotage, but the verb is implicit and the exact nature of the deliverable is vague. It mentions a reference case but does not clearly differentiate from sibling tools like ai_governance_full_report_async.

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?

No explicit guidance on when to use this tool versus alternatives. The reference case (TalentScope SAS, EU AI Act high-risk) implies a context, but there are no when-to-use or when-not-to-use instructions, and no mention of sibling governance tools.

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

anti_demissions_hrC
Read-only
Inspect

Bouclier anti-démissions — Gapup agent-payable C-suite expertise (COO). Returns a structured, audited deliverable. Reference case: Buffer Inc — détection des at-risk parmi 80 FTEs (Q1 2026). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
signalsYes
employeesYes
Behavior3/5

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

The description adds behavioral context beyond the annotations by stating inputs are validated server-side and the output is a 'structured, audited deliverable'. However, it doesn't disclose what happens on validation failure, rate limits, or specific output structure. The readOnlyHint annotation already covers safety, so this is adequate but not rich.

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 concise at three sentences and front-loaded with the tool's purpose. The 'Gapup agent-payable C-suite expertise (COO)' phrase is marketing fluff and the Buffer reference case is illustrative but non-essential. Overall, it is efficient without being overly terse.

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

Completeness2/5

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

For a tool with complex nested inputs and no output schema, the description is incomplete. It mentions a structured deliverable but doesn't describe its contents, how to interpret results, or the required fields beyond a vague reference to 'case fields'. The Buffer case gives a concrete example but doesn't suffice for operational completeness.

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

Parameters2/5

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

With schema description coverage at only 20%, the description needed to compensate for the many undocumented parameters (company, signals, employees, focus). It merely says 'send the documented case fields' without explaining what fields are expected or how they map to the schema. This adds minimal value beyond the raw 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 the tool is an 'anti-attrition shield' and references 'detection des at-risk parmi 80 FTEs', clearly indicating it detects employees at risk of leaving. However, the main verb is 'Returns' rather than a direct action verb like 'detect' or 'assess', and it doesn't differentiate from sibling tools like churn_defender or enps_auto.

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?

No guidance is provided on when to use this tool versus alternatives. The only directive is 'send the documented case fields', which is about input submission, not usage context. There are no exclusions or comparisons to related tools.

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

arbitration_awards_lookupA
Read-onlyIdempotent
Inspect

Commercial arbitration intelligence for litigation lawyers, M&A due diligence teams, sovereign wealth funds and trade finance compliance. Covers 8 major institutions: ICC, AAA, LCIA, HKIAC, SIAC, CIETAC, DIAC, ICDR.

Three modes: • party_lookup — find awards by party name (searches 20 landmark public awards + JusMundi best-effort) • institution_index — browse awards and caseload stats per institution with date range filter • clause_check — audit an arbitration clause for missing elements (institution, seat, language, arbitrator count, governing law, binding nature)

Note: Most arbitration awards are confidential. This tool surfaces public awards (Yukos, Crystallex, Achmea, etc.) plus redacted statistics from institutional annual reports. Private awards are not accessible.

Cache: 24h (arbitration data is very stable). No API key required.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesparty_lookup: search by party name or keyword. institution_index: browse awards by institution + stats. clause_check: audit an arbitration clause for issues.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesFor party_lookup: party name or keyword (e.g. "Yukos", "Russia"). For institution_index: institution name or keyword. For clause_check: full text of the arbitration clause to audit.
date_toNoISO date filter to (YYYY-MM-DD). Applied to award_date.
date_fromNoISO date filter from (YYYY-MM-DD). Applied to award_date.
institutionNoFilter by institution. Default 'all'.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
queryYes
awardsNo
statusYes
sourcesYes
clause_checkNo
quality_scoreYes
institution_statsNo
Behavior4/5

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

Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds valuable behavioral details: 24h cache, no API key required, and the crucial limitation that most awards are confidential and private awards are inaccessible. These disclosures go beyond what annotations alone provide.

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 longer than minimal but well-structured with clear headers, bullet points, and a note section. Every sentence contributes useful information, including audience, modes, limitations, and operational details. It is front-loaded with purpose and remains readable.

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 tool's complexity (three modes, multiple institutions, date filters, output schema), the description covers the key aspects: modes explained, data sources, confidentiality caveat, cache, and auth. It does not describe pagination or result formats, but an output schema exists and the core usage is clear.

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 adds meaning by detailing each mode's expected query behavior (e.g., 'party_lookup — find awards by party name (searches 20 landmark public awards + JusMundi best-effort)') and listing what clause_check audits. This enriches the schema's generic descriptions.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Commercial arbitration intelligence' and enumerates three distinct modes (party_lookup, institution_index, clause_check) with specific actions. It names the covered institutions and differentiates itself from potential sibling tools by specifying its unique scope and capabilities.

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

Usage Guidelines4/5

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

The description provides clear context for intended users (litigation lawyers, M&A teams, etc.) and describes each mode explicitly. It also states an important limitation: 'Private awards are not accessible.' However, it does not explicitly name alternative tools or say 'use this instead of X,' so it falls short of a 5.

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

attack_surface_monitorB
Read-only
Inspect

Surveillance surface d'attaque — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Answers: Which Internet-facing assets of combine a critical CVE, an exposed service, and no WAF — top findings to fix in 14 days? · What is the attack surface of : subdomains, open ports, SSL/TLS grades, and associated CVEs? · Give me a CISO-ready ASM report with blast radius estimate and SLA-driven remediation plan for . · What is the email phishing risk for ? Assess SPF/DMARC posture and recommend improvements. · During M&A due diligence, what are the top cyber exposures on 's Internet-facing infrastructure? Reference case: Velora Payments — 8 assets exposés · 2 critiques (CVE-2023-44487 HTTP/2 RapidReset, Admin panel ouvert) · . Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
domainYes
exclusionsNo
scope_cidrsNo
include_email_surfaceYes
Behavior3/5

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

Annotations already declare readOnly and openWorld. The description adds that returns a structured, audited deliverable and gives reference example, but does not disclose performance characteristics, rate limits, or other behavioral details. With annotations providing safety profile, this is adequate but not exceptional.

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

Conciseness2/5

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

The description is a long, unstructured paragraph with promotional elements like 'Gapup agent-payable C-suite expertise' and a reference case that doesn't aid tool selection. It would benefit from a concise summary and structured capabilities list.

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

Completeness2/5

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

Without an output schema, the description fails to explain the output structure beyond 'structured, audited deliverable'. It also doesn't clarify the meaning of exclusions/scope_cidrs or the async workflow, making it incomplete for a 6-parameter tool.

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

Parameters2/5

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

Schema description coverage is low (only async has a description). The description implicitly covers domain and include_email_surface via examples, but leaves focus, exclusions, scope_cidrs, and async unexplained. This is insufficient compensation for the low schema coverage.

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 clearly states this tool monitors attack surface of a domain, answering specific security questions (CVEs, exposed services, WAF, subdomains, ports, SSL/TLS, email phishing). It is specific to attack surface monitoring, though it doesn't explicitly distinguish itself from sibling tools like cve_security_lookup or email_domain_health_check.

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?

Example user queries provide clear context for when to use the tool: for ASM assessments, CISO reports, email phishing risk, and M&A due diligence. However, it doesn't mention exclusions or when not to use this tool versus alternatives.

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

audit_pre_flightC
Read-only
Inspect

Pré-audit comptable — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Reference case: Spendesk — Pré-audit commissaire · Readiness 74/100 · 4 findings critiques · Checklist 18 docs. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
auditYes
companyYes
systemsYes
financialsYes
knownIssuesYes
Behavior3/5

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

The annotations already declare readOnlyHint=true and openWorldHint=true, covering the safety profile. The description adds a small behavioral note: 'Inputs are validated server-side,' implying invalid inputs are rejected. The reference case gives a concrete example of the output shape (score, findings, checklist), which is useful context. However, it does not describe synchronous/asynchronous behavior beyond the schema's async param, nor does it detail the deliverable's full contents.

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

Conciseness4/5

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

The description is compact, with the core purpose front-loaded. The reference case is a bit cluttered but adds concrete output examples. It avoids unnecessary filler, though the French-English mix and specific numbers could be clearer. Overall, it earns its place with minimal waste.

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

Completeness2/5

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

The tool has 6 parameters, 5 required, nested objects, and no output schema, making it moderately complex. The description provides only a fragmentary picture: what it returns (structured deliverable) and a reference case, but fails to explain required input groups (company, financials, audit, etc.), their purpose, or any expected output structure beyond the example. The reference case gives some context but is not a substitute for describing the tool's overall operation.

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

Parameters1/5

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

With only 17% schema description coverage (only async has a description), the description was expected to compensate but does not. It never mentions company, audit, financials, knownIssues, or systems. The phrase 'send the documented case fields' is tautological and offers no parameter-level guidance. The agent must infer all semantics from parameter names and schema constraints, which is inadequate.

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 it is an accounting pre-audit ('Pré-audit comptable') that returns a structured deliverable, which clearly identifies the resource and action. It distinguishes itself from audit-related siblings by its accounting/CFO focus and reference case (Spendesk readiness 74/100, 4 critical findings, 18-doc checklist). However, it lacks an explicit verb like 'assesses readiness' and relies on the name and French jargon.

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?

There is no explicit guidance on when to use this tool versus alternatives. It mentions 'send the documented case fields' but does not explain use cases, prerequisites, or exclusions. Sibling audit tools exist (e.g., esg_audit_multi, privacy_compliance_audit), but no differentiation is provided. The 'Gapup agent-payable C-suite expertise' hint is too vague to count as context.

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

banking_fee_negotiatorA
Read-onlyIdempotent
Inspect

As a CFO-focused tool, banking_fee_negotiator analyzes your bank's fee structures (account maintenance, wire transfers, credit lines) and provides data-driven negotiation recommendations. Input your current fees and bank details to receive benchmark comparisons from World Bank and ECB SDW, along with specific levers to reduce costs. Ideal for optimizing treasury operations and improving financial efficiency. Keywords: bank fees, cost optimization, treasury management, financial benchmarking, negotiation strategy.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
industryNoIndustry classification (e.g., 'manufacturing', 'retail')
bank_countryYesISO 2-letter country code of the bank
credit_line_feeNoCurrent annual credit line fee percentage
wire_transfer_feeNoCurrent domestic wire transfer fee in USD
international_wire_feeNoCurrent international wire transfer fee in USD
account_maintenance_feeYesCurrent monthly account maintenance fee in USD

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
negotiation_leversNo
credit_line_benchmarkNoIndustry benchmark for credit line fees percentage
wire_transfer_benchmarkNoRegional benchmark for domestic wire transfer fees in USD
international_wire_benchmarkNoRegional benchmark for international wire transfer fees in USD
account_maintenance_benchmarkNoRegional benchmark for account maintenance fees in USD
Behavior4/5

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

Annotations already indicate read-only, idempotent behavior. The description adds context by explaining it uses data from World Bank and ECB SDW for benchmarks and generates negotiation levers. It does not contradict annotations since it describes analysis without side effects.

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 four sentences with a clear front-loaded purpose and a keyword list. It is efficiently written, though the keyword list is somewhat redundant.

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 annotations (read-only, idempotent) and the output schema, the description sufficiently explains the tool's inputs, analysis sources, and outcome. It covers the essential context for selecting and invoking the tool.

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?

The input schema provides 100% coverage with descriptions for all parameters, including required fields and units. The description references fee types that map to schema parameters but does not add significant meaning 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?

The description clearly states the tool's function: analyzing bank fee structures and providing negotiation recommendations. It identifies specific fee types (account maintenance, wire transfers, credit lines) and output (benchmark comparisons, cost reduction levers), distinguishing it from broader treasury tools.

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

Usage Guidelines4/5

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

The description provides context for use ('CFO-focused', 'Ideal for optimizing treasury operations'), implying it is for negotiating bank fees. However, it does not explicitly mention when not to use it or name alternative tools, so it lacks exclusion guidance.

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

battle_cards_liveD
Read-only
Inspect

Fiche de combat live — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub vs McKinsey Lilli — Deal SaaS B2B €500k · Win rate +11 pts · 6 objections clés armées. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
ourOfferYes
competitorYes
dealContextYes
knownWeaknessesNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, establishing safety and flexibility. The description adds some context with 'Inputs are validated server-side' and 'Returns a structured, audited deliverable,' which is useful but minimal beyond what annotations convey.

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

Conciseness2/5

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

The description is cluttered with marketing-like content ('Gapup agent-payable C-suite expertise' and a case study) that does not aid functional understanding. It repeats the title and lacks a clear, front-loaded purpose, making it inefficient for an agent to parse.

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

Completeness1/5

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

This tool has complex nested inputs, no output schema, and low schema coverage, yet the description fails to explain the deliverable's content, required case fields, or expected output format. The generic 'structured, audited deliverable' is insufficient for an agent to use the tool correctly.

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

Parameters1/5

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

Only 20% of parameters have schema descriptions (async only), and the description does not compensate. It says 'send the documented case fields' but gives no details on competitor, dealContext, ourOffer, or knownWeaknesses, leaving the agent without essential parameter meaning.

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

Purpose2/5

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

The description is vague; it repeats the title 'Fiche de combat live' and mentions 'C-suite expertise (CRO)' without a clear verb or resource. The reference case hints at competitive battle cards, but the actual function (e.g., 'generates a battle card') is never explicitly stated.

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

Usage Guidelines1/5

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

No guidance is provided on when to use this tool versus sibling tools like battle_plan or competitive_deep_dive. The description only includes a reference case and input validation note, with no context for selection or alternatives.

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

battle_planC
Read-only
Inspect

Plan de bataille marketing — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Gapup Hub — Q3 2026 · Budget €120k · Pipeline €800k · 5 chantiers prioritaires. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
quarterYes
teamSizeYes
arrTargetYes
budgetEurYes
arrCurrentYes
companyNameYes
topChannelsYes
icpDescriptionYes
currentBlockersYes
primaryObjectiveYes
Behavior3/5

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

Annotations already declare readOnlyHint and openWorldHint, so the read-only nature is covered. The description adds that inputs are validated server-side and the deliverable is 'structured, audited', which is some behavioral context. However, it does not disclose processing time, cost, or what the audit entails, so it does not go far 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.

Conciseness4/5

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

The description is concise at three sentences, with no redundant prose. The reference case adds a concrete example but could be considered extraneous. It is well-structured and front-loaded with the purpose, though the French phrasing might reduce clarity for non-French speakers.

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

Completeness2/5

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

With 11 parameters, no output schema, and sparse schema descriptions, the description is far from complete. It does not explain what the deliverable contains, how the inputs are used, or what the return format is. The reference case is helpful but insufficient to guide an agent on invocation and result interpretation.

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

Parameters1/5

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

Schema description coverage is only 9%, with only the 'async' parameter described. The description does not explain any of the 10 required parameters (e.g., arrCurrent, topChannels, icpDescription). The phrase 'documented case fields' is opaque and does not compensate for the lack of schema descriptions. This is a significant gap for a tool with 11 parameters.

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 clearly identifies the tool as creating a marketing battle plan deliverable, with a specific audience (CMO) and a reference example. However, it does not explicitly distinguish it from sibling tools like positioning_strategist or growth_path_architect, so purpose is clear but differentiation is weak.

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 description provides no explicit guidance on when to use this tool versus alternatives. The phrase 'send the documented case fields' is an instruction for invocation, not a usage guideline. There is no mention of exclusions, prerequisites, or suitable scenarios beyond the implied need for a marketing battle plan.

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

bias_amplification_trackerA
Read-onlyIdempotent
Inspect

Tracks bias amplification in LLM outputs by analyzing fairness metrics from HuggingFace's model leaderboard. Designed for risk assessment personas to detect and quantify demographic, gender, or racial bias amplification in generated text. Accepts model identifiers or output samples, returns structured bias metrics and amplification trends.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
modelIdNoHuggingFace model identifier (e.g., 'facebook/opt-1.3b')
outputSamplesNoArray of LLM output strings to analyze for bias amplification
demographicGroupsNoSpecific demographic groups to monitor (e.g., ['gender', 'race'])

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
biasMetricsNo
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds the data source (HuggingFace leaderboard) and input flexibility (model identifiers or output samples) but no additional behavioral traits like side effects or rate limits. It adds some value, consistent with annotations, so 3 is appropriate.

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 well-structured sentences. The first states purpose and method, the second covers audience, specific bias types, inputs, and outputs. Every sentence earns its place with no wasted words.

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 a rich schema (100% coverage, output schema present) and helpful annotations, the description provides enough context: purpose, data source, input types, and output summary. It doesn't include explicit alternatives but that's covered under usage guidelines. Overall sufficient for agent selection and invocation.

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 baseline is 3. The description does not add significant parameter-level semantics beyond what's in the schema; it mentions 'accepts model identifiers or output samples' but that's already covered by the schema's param descriptions.

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

Purpose5/5

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

The description clearly states a specific verb ('tracks') and resource ('bias amplification in LLM outputs'), plus the method ('analyzing fairness metrics from HuggingFace's model leaderboard'). It distinguishes from siblings like model_behavior_drift_monitor by focusing on bias amplification specifically.

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 provides clear context: 'Designed for risk assessment personas to detect and quantify demographic, gender, or racial bias amplification in generated text.' This implies usage for risk assessment, but it doesn't explicitly name alternatives or when-not-to-use, so it's a 4.

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

bond_covenant_esg_compliance_checkerA
Read-onlyIdempotent
Inspect

As a CFO, quickly assess whether your bond covenants meet ESG compliance standards set by BIS and ECB. This tool analyzes covenant text against regulatory benchmarks, identifying potential ESG-related risks in carbon emissions, governance practices, and social impact clauses. Input bond covenant details and receive structured compliance insights with source references. Ideal for pre-issuance due diligence or ongoing monitoring of existing bond portfolios.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
couponTypeNoType of bond coupon
covenantTextYesFull text of the bond covenant to analyze
issuerSectorNoIndustry sector of the bond issuer (e.g., energy, finance)
jurisdictionNoLegal jurisdiction governing the bond (e.g., EU, US)
maturityDateNoMaturity date of the bond

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
riskAreasNo
complianceScoreNo
recommendationsNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, so the tool's safety profile is clear. The description adds behavioral context by noting it 'analyzes covenant text against regulatory benchmarks' and 'receive structured compliance insights with source references,' which goes beyond the annotations to describe inputs and outputs.

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 three sentences with efficient front-loading: purpose first ('quickly assess'), then details on what it analyzes and delivers, then use cases. No redundant phrases or filler, making it appropriately sized and well-structured.

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?

The description covers purpose, use cases, and output type ('structured compliance insights with source references'), and an output schema exists to document return values. It does not explicitly address limitations, prerequisites, or differentiation from all overlapping siblings, but overall it is complete enough for a read-only analysis tool.

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 the parameter meanings are fully documented in the schema. The description itself adds little parameter-specific information beyond generic 'Input bond covenant details,' but the baseline of 3 applies because the schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states the tool's function: 'assess whether your bond covenants meet ESG compliance standards set by BIS and ECB.' It specifies the resource (bond covenants), the action (assess compliance), and distinct focus areas (carbon emissions, governance, social impact), distinguishing it from sibling tools like bond_covenant_monitor or syndicated_loan_covenant_breach_alert.

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

Usage Guidelines4/5

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

The description explicitly names use cases: 'pre-issuance due diligence or ongoing monitoring of existing bond portfolios.' It does not mention alternatives or exclusions, but the 'Ideal for' phrasing implies typical contexts without explicitly naming when not to use the tool.

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

bond_covenant_monitorA
Read-onlyIdempotent
Inspect

As a CFO, monitor bond covenant compliance by analyzing leverage ratios (debt-to-equity, debt-to-EBITDA) and interest coverage ratios using real-time financial data. Input a company's ticker symbol and optional covenant thresholds to receive compliance status, key financial metrics, and SEC filing references. Ideal for proactive debt management and regulatory compliance tracking. Keywords: bond covenants, leverage ratio, interest coverage, debt compliance, SEC filings, financial health.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
tickerYesCompany ticker symbol (e.g., 'AAPL')
covenantThresholdsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
warningsYes
debtToEquityNo
leverageRatioNo
lastFilingDateNo
complianceStatusYes
interestCoverageNo
nextFilingDeadlineNo
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, establishing the safety profile. The description adds valuable context about real-time data usage and output (compliance status, key metrics, SEC filing references) that goes beyond the annotations, without contradicting 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?

The description is three sentences plus keywords, front-loading the primary purpose in the first sentence. It is efficient and each sentence earns its place, though the 'As a CFO' persona is slightly unnecessary and the keyword list, while helpful for search, could be considered 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?

Given the existence of an output schema and annotations, the description sufficiently covers inputs, outputs, and use cases. It explains the input (ticker, optional thresholds), the output (compliance status, metrics, references), and the context (debt management, regulatory compliance), making it complete enough for a tool with moderate complexity.

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 has 67% coverage (async and ticker have descriptions, covenantThresholds object lacks a top-level description). The description compensates by explaining the input: 'Input a company's ticker symbol and optional covenant thresholds', and clarifies the purpose of thresholds in assessing compliance. It adds meaning beyond the raw schema for the main functional parameters.

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 clearly states the tool's function: monitor bond covenant compliance by analyzing leverage and interest coverage ratios with real-time data. It specifies the resource (bond covenants) and the action (monitor/analyze), which distinguishes it from generic financial analysis tools, though it doesn't explicitly name sibling tools like bond_covenant_esg_compliance_checker.

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?

Provides clear usage context: 'As a CFO', 'Ideal for proactive debt management and regulatory compliance tracking'. This indicates when to use it (covenant monitoring for financial oversight) but does not explicitly mention alternatives or exclusions, which would raise it to a 5.

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

bp_narratifC
Read-only
Inspect

Business Plan narratif — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Reference case: Stripe Series A 2012. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
raiseYes
companyYes
keyMetricsYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safety profile is known. The description adds some behavioral context with 'Inputs are validated server-side' and 'Reference case: Stripe Series A 2012,' but it does not disclose output format, cost, or delivery behavior. It provides modest 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.

Conciseness3/5

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

The description is short at three sentences, but the phrase 'Gapup agent-payable C-suite expertise (CFO)' is promotional and adds little functional value. The structure is front-loaded but not every sentence carries essential information.

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

Completeness2/5

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

Given the tool's complexity (nested objects, multiple enums) and lack of output schema, the description is insufficient. It does not explain what the 'structured, audited deliverable' contains, how to handle async responses, or how the Stripe reference applies. The description is too vague for an agent to confidently select and invoke this tool.

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

Parameters1/5

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

Schema description coverage is low (25%), and the description does not compensate. It only says 'send the documented case fields,' without explaining the meaning or expected format of company, raise, keyMetrics, or async. The parameter names are self-explanatory, but the description adds no semantic depth beyond the schema.

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

Purpose2/5

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

The description says 'Business Plan narratif' and 'Returns a structured, audited deliverable,' but it never explicitly states that the tool generates a business plan narrative. It restates the tool's name and lacks a clear verb like 'generates' or 'creates,' making it vague and not distinguishing it from sibling tools such as ftg_business_plan.

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 description provides no guidance on when to use this tool versus alternatives. The only operational note is 'Inputs are validated server-side,' which is about call mechanics, not usage context. No exclusions, alternative references, or use-case scenarios are given.

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

brand_builderC
Read-only
Inspect

Architecte de marque — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Pennylane — brand identity SaaS fintech B2B FR/EU (2023). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
brandYes
targetYes
founderYes
existingAssetsNo
Behavior3/5

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

Annotations already provide readOnlyHint and openWorldHint, and the description adds that it returns an audited deliverable and validates inputs server-side. This adds some context beyond the annotations, but it does not describe return format, async behavior, or error handling. Given the annotations cover the safety profile, a 3 is appropriate.

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 concise and front-loaded with the tool's role. It is two sentences, each providing some value (deliverable type and validation note). However, it is somewhat vague and could be more concrete without becoming verbose.

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

Completeness2/5

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

The tool has a complex nested schema with no output schema and low parameter documentation. The description is too brief to guide an agent on how to construct inputs or interpret results. It does not explain the deliverable structure or provide examples, making it inadequate for a tool of this complexity.

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

Parameters2/5

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

Schema description coverage is very low (only async has a description). The description says 'send the documented case fields' but does not explain the three required nested objects (founder, brand, target) or their properties. It fails to compensate for the lack of schema descriptions, leaving the agent to guess what fields are expected.

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 title 'Architecte de marque' and description 'Returns a structured, audited deliverable' clearly indicate the tool produces a brand strategy/identity deliverable. The reference to Pennylane's brand identity further clarifies the domain. However, the verb is implicit rather than explicit, and it does not distinguish from sibling brand tools like brand_equity_voice_share_calculator.

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 description gives no guidance on when to use this tool versus alternatives. It only mentions server-side validation and 'send the documented case fields,' with no prerequisites, exclusions, or comparison to other brand-related tools. This leaves the agent without clear selection criteria.

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

brand_equity_voice_share_calculatorA
Read-onlyIdempotent
Inspect

Calculates brand equity voice share for CMOs by analyzing mentions across 500K+ news articles and forums from Common Crawl and Wayback Machine. Inputs include brand name, competitors, and time range. Outputs voice share percentage, sentiment distribution, and top sources. Ideal for competitive benchmarking and brand visibility tracking. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
brandYes
time_rangeYes
competitorsNo
include_forumsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
top_sourcesNo
total_mentionsNo
brand_voice_shareNo
sentiment_distributionNo
competitor_voice_sharesNo
Behavior4/5

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

Annotations already declare read-only and idempotent hints, so the burden is lighter. The description adds valuable behavioral details: the scale of data analyzed, the potential for timeout, and the async workaround. No contradiction with 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?

Three well-structured sentences. The main function is front-loaded, and each sentence adds value: data sources, inputs/outputs, use cases, and a practical async tip. No fluff or repetition.

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 tool's complexity, the presence of an output schema, and annotations, the description covers the main purpose, inputs, outputs, data sources, and a performance consideration. It lacks explicit when-not-to-use guidance and doesn't mention include_forums, but overall it is sufficiently complete for an agent to select and invoke the tool correctly.

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 only 20% (only async has a description). The description lists key inputs (brand, competitors, time range) and provides some context for their role in the calculation, but it does not detail include_forums or the exact format of time_range. It partially compensates for low schema coverage but not fully.

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

Purpose5/5

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

The description clearly states the tool calculates brand equity voice share, specifies the data sources (500K+ news articles and forums from Common Crawl and Wayback Machine), target audience (CMOs), and outputs. This distinguishes it from sibling tools like sentiment_news_pulse or competitor_intel.

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 identifies ideal use cases: competitive benchmarking and brand visibility tracking. It also advises using async:true to avoid timeouts. It does not mention alternatives or exclusion criteria, so it falls short of a 5.

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

budget_variance_aiA
Read-only
Inspect

Analyse d'écart budgétaire — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Answers: Explain the key drivers of the budget vs actual variance for in — what are the top 10 narrative explanations? · Which cost categories drove the budget overrun for in , and what corrective actions should management take? · Revise the Q4 forecast based on observed Q3 variances for — give me 3 scenarios (base, optimistic, conservative). · Prepare a board-ready budget variance memo for , budget €M vs actual €M, with management actions. · What are the quick wins to reduce budget overspend for by end of quarter without impacting growth targets? Reference case: Doctolib Q3 2026 — budget €38.5M vs actual €41.2M (+7.0%) — cloud + headcount + deals timing. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
entityYes
budgetContextYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, covering the safety profile. The description adds that it returns a 'structured, audited deliverable' and that inputs are validated server-side, which provides useful behavioral context. However, it does not discuss async behavior (the async parameter exists) or other operational details, so it remains moderate.

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

Conciseness3/5

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

The description is front-loaded with the core purpose, but it is lengthy and includes promotional language ('Gapup agent-payable C-suite expertise (CFO)') and multiple repetitive example questions. While the examples are useful, the text could be more concise without sacrificing guidance.

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

Completeness3/5

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

The tool has nested objects and no output schema, and the description gives a good sense of the deliverable through example questions. However, it does not explain the return format, the async execution path, or the detailed input structure, leaving the agent to rely on the schema alone. It is adequate but not complete.

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

Parameters2/5

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

Schema description coverage is only 25% (only async has a description). The description offers example prompts that hint at needed information (company, period, budget amounts, categories) but does not explain the structure of entity and budgetContext or map examples to schema fields. The phrase 'documented case fields' is vague and insufficient for correct parameter construction.

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

Purpose5/5

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

The description clearly states it performs budget variance analysis ('Analyse d'écart budgétaire') and specifies concrete use cases such as explaining drivers, recommending corrective actions, creating forecast scenarios, and generating board-ready memos. This distinguishes it from generic financial tools and aligns with the CFO-focused positioning.

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

Usage Guidelines4/5

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

The description provides explicit example prompts that illustrate when to use the tool (variance explanation, corrective actions, forecast revision, memo creation, quick wins). This gives clear context for application, though it does not mention alternatives or exclusion cases, so it misses the threshold for a 5.

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

building_enrichAInspect

Enrich a location with European building intelligence: roof surfaces (m²), parking areas, solar-obligation status under French loi APER and loi Climat-Résilience, existing solar installations. Covers 628,000 scanned roofs and 91,800 parkings across 6 EU countries (FR, DE, IT, ES, BE, NL). Deterministic database lookup — no LLM, no generation, sub-second.

ParametersJSON Schema
NameRequiredDescriptionDefault
latYesLatitude (WGS84)
lngYesLongitude (WGS84)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
radiusMNoSearch radius in metres (default 150, max 500)
minAreaM2NoOnly return roofs/parkings at least this large, in m²

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryNo
roofsNo
summaryNo
parkingsNo
solarInstalledNo
Behavior4/5

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

With no annotations, the description carries the full transparency burden. It explicitly discloses that it is a deterministic database lookup, not LLM-based, and sub-second. It also gives coverage statistics. This provides solid behavioral expectations, though it does not cover edge cases like missing data or error behavior.

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, highly informative, with the main purpose front-loaded and coverage/performance details following. Every sentence contributes value, making it concise and well-structured.

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?

The description covers purpose, geographic scope, data coverage, and performance, which is sufficient for a moderate-complexity lookup tool. With an output schema present, the lack of return-format details in the description is acceptable. It does not mention prerequisites or error handling, but these are not critical for this simple tool.

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 the baseline is 3. The description does not add additional parameter-level meaning beyond the schema; it only lists output types, not how parameters affect results. This is adequate but not enhanced.

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

Purpose5/5

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

The description clearly states the tool's function: 'Enrich a location with European building intelligence' and lists specific data types (roof surfaces, parking areas, solar-obligation status, existing installations). This is a specific verb+resource with concrete outputs, differentiating it from generic location or intelligence tools among siblings.

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

Usage Guidelines4/5

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

The description provides clear context on when to use: for European building data across 6 countries, with sub-second deterministic lookups. However, it does not explicitly name alternatives or state when not to use it, so it misses the full 5-level guidance.

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

candidate_screening_rankingA
Read-onlyIdempotent
Inspect

AI-powered candidate screening and ranking for recruiters, hiring managers, ATS providers and recruitment AI agents. Ingests a job description and 1-50 candidate resumes, returning a ranked shortlist with score breakdowns across five weighted criteria: skills_match (tech stack and soft skills extracted from JD vs resume), experience_match (years vs seniority level inferred from JD), education_match (degree level + top-school detection), role_progression (Junior to Senior to Lead patterns), culture_fit_estimate (remote/hybrid, startup vs enterprise). Per candidate: overall_score 0-100, matched/missing skills, red_flags (job hopping, employment gaps, seniority mismatch), green_flags (long tenure, promotions), 3-5 interview questions, fit_summary. Diversity signals are first-name proxies ONLY with mandatory ethical WARNING. All processing is local -- no external API calls, instant response, privacy-preserving.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
candidatesYesArray of candidate objects. Maximum 50.
role_countryNoOptional ISO 2-letter country code for regional context (informational).
job_descriptionYesFull text or summary of the job description and role requirements.
criteria_weightsNoOptional weighting per criterion. Default: skills=0.4, experience=0.2, education=0.1, progression=0.15, culture=0.15.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
nice_to_haveYes
quality_scoreYes
required_skillsYes
candidates_rankedYes
diversity_signalsNo
shortlist_recommendedYes
job_description_summaryYes
Behavior5/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds valuable behavioral context: 'All processing is local -- no external API calls, instant response, privacy-preserving' and the diversity signals caveat with a 'mandatory ethical WARNING.' These go beyond what annotations provide, disclosing privacy and ethical behaviors.

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 appropriately sized for the tool's complexity. It is front-loaded with the core purpose, then logically flows into input/output, criteria details, per-candidate output, ethical warning, and processing characteristics. Every sentence earns its place without redundancy.

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 tool's complexity (nested objects, 5 parameters, output schema exists), the description covers all essential aspects: inputs, output structure, criteria definitions, diversity signal limitation, and processing mode. Even though an output schema exists, it goes further to explain score ranges and flags, making it fully complete for selection and invocation.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by explaining what each weighting criterion represents (e.g., skills_match as 'tech stack and soft skills extracted from JD vs resume') and clarifying the candidate limits (1-50), which enriches the parameter understanding.

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 states a specific verb and resource: 'AI-powered candidate screening and ranking' and details the exact input (job description + 1-50 resumes) and output (ranked shortlist with score breakdowns). It distinguishes from siblings by covering all five weighted criteria and per-candidate outputs, making its scope clear even without naming alternatives.

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

Usage Guidelines4/5

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

The description provides clear context: it is for recruiters, hiring managers, ATS providers and recruitment AI agents, and explicitly mentions the input range (1-50 resumes). However, it does not explicitly state when to avoid using it or mention alternative sibling tools, so it stops short of full exclusion guidance.

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

capacity_planningB
Read-only
Inspect

Planification capacitaire — Gapup agent-payable C-suite expertise (CHRO). Returns a structured, audited deliverable. Reference case: Gapup Hub — 22→48 FTE en 12m · ARR €480k→€1.7M · Plan d'embauches par département. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
benchmarksNo
financialsYes
constraintsNo
currentTeamYes
hiringBudgetEurNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds that inputs are validated server-side and the deliverable is audited, providing some extra context about validation and quality. No contradictions with 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?

Four sentences, compact and front-loaded with the tool's name and purpose. The reference case adds context but may be considered extraneous. Overall, appropriately concise.

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

Completeness2/5

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

For a tool with 7 parameters, nested objects, and no output schema, the description is insufficient. It fails to explain what specific inputs are needed or the structure of the returned deliverable, relying on an external notion of 'documented case fields.'

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

Parameters2/5

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

Schema description coverage is only 14%, and the description does not explain any parameter fields beyond saying 'send the documented case fields.' The reference case hints at metrics like FTE, ARR, and department plans but does not map to schema parameters.

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 'Planification capacitaire' and indicates it returns a structured, audited deliverable. The reference case (Gapup Hub — 22→48 FTE, ARR growth) clarifies it's about headcount/capacity planning. However, it does not distinguish itself from sibling planning tools like growth_path_architect or capital_strategy.

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?

No explicit guidance on when to use this tool over alternatives. The implied use case is capacity planning from the name and description, but no exclusions or alternative suggestions are provided.

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

capital_strategyC
Read-only
Inspect

Stratégie de financement — Gapup agent-payable C-suite expertise (CSO). Returns a structured, audited deliverable. Reference case: Alan assurance santé SaaS — séquence Seed→A→B→C (2016-2022). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
growthPlanYes
financialPositionYes
founderConstraintsYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the description doesn't need to restate them. It adds that the deliverable is 'audited' and that inputs are 'validated server-side', which provides some behavioral context beyond annotations. However, it doesn't detail the response format, potential costs (Gapup agent-payable), or asynchronous behavior beyond what the schema already mentions for async.

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 concise: two sentences, with the purpose front-loaded in the first sentence. The reference case provides helpful context without excessive length. However, the phrase 'Gapup agent-payable C-suite expertise (CSO)' is somewhat jargon-heavy and could be clearer, slightly detracting from the front-loaded clarity.

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

Completeness2/5

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

For a tool with 5 parameters, nested objects, and no output schema, the description is too sparse. It doesn't specify what the 'structured, audited deliverable' will contain, how to interpret it, or how the reference case relates to the expected output. The async parameter is only documented in the schema, not in the description, and there's no mention of error handling or edge cases. This makes the tool hard to invoke correctly without additional information.

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

Parameters2/5

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

Schema description coverage is only 20% (only async has a description), so the description must compensate. It merely says 'send the documented case fields' without explaining any parameter meanings. The nested object property names (company, growthPlan, financialPosition, founderConstraints) are self-descriptive, but the description adds no semantics or guidance on how to fill them, leaving a significant gap.

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 it's a 'Stratégie de financement' that returns a 'structured, audited deliverable', which clearly identifies the tool's function and output type. The reference to a specific case (Alan assurance santé SaaS) and sequence Seed→A→B→C adds specificity. However, it does not explicitly mention how it differs from closely related sibling tools like cap_table_strategist or funding_hunter, so it's not fully differentiated.

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?

There is no explicit guidance on when to use this tool versus alternatives. The mention of 'send the documented case fields' implies the user should have case data, but it doesn't clarify suitable scenarios, prerequisites, or exclusions. The reference case hints at early-stage funding rounds but stops short of actionable usage instructions.

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

cap_table_strategistC
Read-only
Inspect

Stratège du cap table — Gapup agent-payable C-suite expertise (FUNDRAISING). Returns a structured, audited deliverable. Reference case: Aleph AI Series B — modèle dilution multi-rounds + simulations secondaires + hygiène equity · 5 scenarios. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
plannedRoundsYes
currentCapTableYes
founderObjectivesYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safe-read nature is covered. The description adds that inputs are server-side validated and returns a structured, audited deliverable, which is useful. However, it does not disclose operational aspects like latency, result polling (async), or the exact deliverable structure.

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

Conciseness3/5

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

The description is relatively brief, but includes promotional language ('Gapup agent-payable C-suite expertise') and a reference case that may be useful context. The reference case illustrates output scope but feels somewhat tangential. Overall, it is not optimally front-loaded or concise.

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

Completeness2/5

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

Given the complex nested schema, low parameter coverage, and no output schema, the description is incomplete. It fails to explain what constitutes a valid case, what the deliverable will contain beyond being 'structured and audited', or how this tool fits with closely related siblings. Users would need to infer too much.

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

Parameters2/5

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

Schema description coverage is only 17% (only the async parameter is described), and the description does not compensate. It refers to 'documented case fields' without explaining any of the nested input objects (company, currentCapTable, plannedRounds, founderObjectives). Parameter names help somewhat, but the description adds no value.

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

Purpose3/5

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

The description positions the tool as a cap table strategist for fundraising and mentions a structured, audited deliverable with reference to dilution modeling and secondary simulations. However, it lacks a direct action verb (e.g., 'generates', 'analyzes') and does not explicitly differentiate itself from other strategy/finance 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?

No guidance is given on when to use this tool versus alternatives like capital_strategy or term_sheet_negotiation. The only usage hint is the FUNDRAISING tag and a vague instruction to send documented case fields, which is not sufficient.

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

carbon_footprint_calculatorA
Read-onlyIdempotent
Inspect

Calculate a company's greenhouse-gas footprint under the GHG Protocol (Scope 1 + 2 + 3, in tCO2eq, tier-2 accuracy ±20%). Returns the emissions breakdown, hotspot identification, 5-8 reduction levers each with capex and payback, an SBTi-aligned reduction trajectory over 5-25 years, the 15 Scope-3 categories in detail, and CSRD/ESRS reporting readiness. When to use this tool: the user needs a carbon assessment for CSRD compliance pre-audit, green-finance access, or supplier ESG scorecards. Inputs: the company profile and its activity data. Delivered by Émilie, the AI Sustainability lead of the Gapup portfolio.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
perimeterYes
scope1SourcesNo
scope2SourcesYes
reductionTargetsNo
scope3ActivitiesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
kpisNo3-5 headline ESG KPI bubbles
hotspotsYesTop emission sources ranked by contribution
breakdownYesEmissions breakdown by scope
csrdReadinessYesCSRD/ESRS reporting readiness assessment
sbtiTrajectoryNoSBTi-aligned annual reduction trajectory
reductionLeversYes5-8 actionable reduction levers with financial analysis
executiveSummaryYesBoard-ready GHG assessment prose
scope3CategoriesNoGHG Protocol 15 Scope-3 categories detail
totalEmissionsTco2eqYesTotal GHG footprint in tCO2eq (Scope 1+2+3 combined, ±20% tier-2 accuracy)
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true; the description adds meaningful context by specifying the calculation accuracy, Scope 1+2+3 coverage, and a detailed list of returned outputs. It does not mention rate limits or auth requirements, but for a read-only calculator this is sufficient. No contradiction with annotations.

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

Conciseness3/5

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

The description is front-loaded with the main purpose and organized into clear sections, which is good. However, the final sentence about Émilie is unnecessary, and the second sentence is a long enumeration of outputs, making the description slightly verbose. It is acceptable but not a model of conciseness.

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

Completeness3/5

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

The description gives strong context for when to use the tool and what outputs to expect, and an output schema exists. However, it does not explain the required input parameters sufficiently, nor does it mention the async option, which is relevant for a potentially slow computation. For a tool with 8 parameters and nested objects, this is a notable gap.

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

Parameters2/5

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

Schema description coverage is only 13%, so the description must compensate for missing parameter documentation. It merely says 'Inputs: the company profile and its activity data,' which is too generic to clarify required parameters like perimeter, scope2Sources, or reductionTargets. This does not add meaningful semantic value over 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?

The description clearly states it calculates a company's greenhouse-gas footprint under the GHG Protocol, specifying Scope 1+2+3, tCO2eq, and tier-2 accuracy ±20%. It lists several distinctive outputs (e.g., SBTi-aligned trajectory, CSRD/ESRS readiness) that differentiate it from sibling tools like sustainability_report or carbon_roadmap.

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

Usage Guidelines4/5

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

The description includes an explicit 'When to use this tool' section naming three concrete scenarios: CSRD compliance pre-audit, green-finance access, and supplier ESG scorecards. It does not explicitly state when not to use the tool or name alternative tools, so it stops short of a perfect score.

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

carbon_roadmapC
Read-only
Inspect

Roadmap carbone — Gapup agent-payable C-suite expertise (SUSTAINABILITY). Returns a structured, audited deliverable. Reference case: Cas démo — Roadmap carbone. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
perimeterYes
scope1SourcesNo
scope2SourcesYes
reductionTargetsNo
scope3ActivitiesNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safety profile is known. The description adds that inputs are validated server-side and the result is 'audited,' which is useful context. However, it omits the async behavior indicated by the async parameter in the schema and does not describe error responses or output structure.

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

Conciseness2/5

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

The description is short but includes filler like 'Gapup agent-payable C-suite expertise' and 'Reference case: Cas démo.' These lines do not earn their place, and the remaining sentences are too vague to be actionable, making it under-specified rather than concise.

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

Completeness2/5

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

For a tool with 8 parameters, nested objects, and no output schema, the description is inadequate. It does not clarify what the deliverable contains, how to structure inputs, or when to use the async option. The lack of output schema and related siblings further increases the need for a richer description.

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

Parameters1/5

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

Schema description coverage is only 13%, and the description provides no parameter-level details. Saying 'send the documented case fields' is circular and does not help the agent understand the complex nested objects (company, perimeter, scope2Sources) or their required subfields.

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

Purpose2/5

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

The description says 'Roadmap carbone' and 'Returns a structured, audited deliverable,' but it does not specify what a carbon roadmap entails or how it differs from siblings like carbon_footprint_calculator or sustainability_report. The verb 'Returns' is generic, and the reference case 'Cas démo — Roadmap carbone' provides no functional clarity.

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?

No guidance on when to use this tool versus alternatives. The mention of 'documented case fields' implies prerequisites but they are not explained, and no exclusions, recommended scenarios, or comparisons to sibling tools are provided.

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

champion_mappingC
Read-only
Inspect

Cartographie du champion — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Spendesk × Decathlon (deal €120k/an) — Champion identifié : CFO Group · Plan 6 semaines multi-touch. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
dealYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
knownContactsYes
sellerContextYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds that the deliverable is 'structured, audited' and that inputs are validated server-side, but it does not disclose deeper behaviors such as error handling or data sources. This is adequate given 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 three sentences, front-loaded with purpose, and uses a helpful reference case. The second sentence is a bit dense with the example, but overall it is efficiently structured without unnecessary verbosity.

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

Completeness2/5

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

The tool has nested parameters and no output schema, so the description should compensate by clarifying inputs and deliverable structure. It only says 'structured, audited deliverable' and provides one example, leaving the agent to guess the full output format and parameter requirements beyond the schema.

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

Parameters2/5

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

The schema coverage is only 25% (only 'async' has a description). The description's reference to 'documented case fields' indirectly mentions deal/contact/seller inputs, but it does not explain the semantics of knownContacts, sellerContext, or the return structure. It fails to compensate for the low schema coverage.

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 clearly states a mapping action ('Cartographie du champion') and the output ('structured, audited deliverable'), with a concrete reference case. It does not explicitly distinguish itself from sibling deal-related tools, but the champion-specific focus is evident.

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 description provides no explicit guidance on when to use this tool versus alternatives like deal_coach or meddic_scoring. It only mentions that inputs are validated server-side, which is operational rather than usage direction.

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

change_failure_root_cause_classifierA
Read-onlyIdempotent
Inspect

Classifies root causes of change failures for CTO-level incident analysis. Uses GitHub PR metadata and Snyk vulnerability data to identify patterns like dependency vulnerabilities, configuration drift, or deployment process gaps. Inputs include GitHub PR URL or incident ID, and outputs structured root cause categories with confidence scores. Ideal for post-mortem analysis and change risk assessment.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
pr_urlYes
incident_idNo
snyk_org_idNo
time_range_daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
root_causesNo
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, which cover safety aspects. The description adds behavioral context by explaining the data sources (GitHub PR metadata, Snyk vulnerability data) and the nature of outputs (root cause categories with confidence scores). This goes beyond the annotations without contradicting them.

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 three sentences, front-loaded with the primary purpose in the first sentence. It is concise, with no wasted words, and each sentence adds valuable information: what it does, how it does it, and when to use it.

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 an output schema, so return values are covered elsewhere. The description provides a solid overview and clarifies some parameters, but it leaves gaps for snyk_org_id and time_range_days. Given the low schema coverage, more param detail would improve completeness.

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 only 20%, leaving most parameters undocumented. The description clarifies pr_url and incident_id by saying 'Inputs include GitHub PR URL or incident ID,' but it does not explain snyk_org_id or time_range_days. It partially compensates for the schema gap but not fully.

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

Purpose5/5

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

The description clearly states it classifies root causes of change failures, which is a specific verb and resource. It further distinguishes itself by mentioning the use of GitHub PR metadata and Snyk vulnerability data, and outputs like structured root cause categories with confidence scores. This makes it distinct from sibling tools focused on other incident metrics.

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

Usage Guidelines4/5

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

The description provides clear usage context by stating it is 'Ideal for post-mortem analysis and change risk assessment.' It also implies the tool is used when inputting a GitHub PR URL or incident ID. However, it does not explicitly name alternatives or when not to use the tool, so it falls short of a 5.

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

china_ecommerce_intelA
Read-only
Inspect

Chinese e-commerce intelligence for the ZH diaspora (50M+), import-export teams, brand IP enforcement, MENA/Africa entrepreneurs sourcing from China, and brand monitoring. Covers Taobao, Tmall, JD.com, Pinduoduo, 1688.com (B2B) and AliExpress (cross-border).

Five modes: • product_search — search products by keyword across CN platforms. Returns title ZH/EN, price CNY + USD estimate, sales 30d, rating, seller info, product URL. • seller_profile — full seller/supplier dossier: factory vs reseller detection, certifications (ISO, BSCI, CE), rating, years in business, main categories. • price_history — 12-month price trend for a product (live current price + seasonal model for CN shopping festivals: 11.11, 6.18, CNY). • brand_monitoring — detect counterfeits and grey market listings: price anomaly detection (>50% below MSRP = suspicious), counterfeit keyword scan, risk score 0-100. • market_intel — category overview: top 5 sellers by market share, avg/median price, volume estimate, price range.

Data quality note: LIVE data from Taobao/Tmall/JD/Pinduoduo REQUIRES AICI_RESEARCH_PROXY_URL with CN residential routing (Bright Data -country-cn). Without proxy: AliExpress (cross-border) + curated category fallback available.

Input formats for seller_profile: 'platform:id' e.g. 'aliexpress:123456', '1688:87654321', 'tmall:apple-store-official'. Input formats for price_history: AliExpress product URL or numeric product ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesAnalysis mode. product_search=find products, seller_profile=supplier dossier, price_history=price trend, brand_monitoring=counterfeit detection, market_intel=category overview.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesKeyword, product name, product_id, seller_id (platform:id), brand name, or category. Accepts Chinese characters (ZH) or English.
regionNoMarket region. CN-domestic=full platform coverage, cross-border=AliExpress+1688 focus. Default: CN-domestic.
platformNoTarget platform. Default: all. Note: taobao/tmall/jd/pinduoduo require CN proxy.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
signalsYes
sourcesYes
productsNo
market_intelNo
platform_usedYes
price_historyNo
quality_scoreYes
seller_profileNo
brand_monitoringNo
Behavior4/5

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

Beyond the readOnly/openWorld annotations, the description discloses that live data from certain platforms requires AICI_RESEARCH_PROXY_URL with CN residential routing, and that without it only AliExpress and curated fallback are available. It also specifies input format requirements (platform:id) for seller_profile and price_history, adding valuable behavioral context 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.

Conciseness4/5

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

The description is long but well-structured: it opens with audience and platforms, then enumerates the five modes in a consistent bullet-like format, followed by a data quality note and input format examples. Each sentence serves a purpose; no fluff or redundancy. It could be slightly more concise, but the organization makes it easy to parse.

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 tool's complexity (5 parameters, 5 modes, platform-dependent behavior), the description covers all essential context: mode definitions, platform coverage, proxy reliance, and input format specifics. An output schema exists, so the description doesn't need to detail return values. Missing would be auth details or rate limits, but those are not critical for selection and invocation.

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 schema already provides 100% coverage for all parameters with descriptions, so baseline is 3. The tool description adds extra meaning by detailing valid query formats (e.g., 'aliexpress:123456', '1688:87654321') and clarifying mode-specific behavior for platform and region parameters. This extra context about input syntax justifies a score above 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?

The description clearly states the tool's purpose: Chinese e-commerce intelligence across major Chinese platforms, with five explicitly named modes (product_search, seller_profile, price_history, brand_monitoring, market_intel). It specifies the target audience and platform coverage, effectively distinguishing it from sibling tools like china_market_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?

The description provides clear use-case context (diaspora, import-export, brand IP enforcement, sourcing entrepreneurs) and explains what each mode does. It also gives critical operational guidance about proxy requirements for live data and fallback options. However, it does not explicitly compare to alternative tools or state when not to use this tool, so it lacks explicit exclusions.

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

china_market_dataA
Read-only
Inspect

Chinese capital market intelligence for the ZH diaspora (50M+) and institutional investors. Covers A-Shares (SSE/SZSE), H-Shares (HKEX), and ADRs across four modes:

• company — full company profile: name ZH/EN, USCC (18-digit social credit code), exchange, industry (CSRC classification), chairperson, registered capital, SOE flag • market_quote — real-time quote: price (CNY or HKD), change%, volume, market cap, P/E ratio, dividend yield, last update timestamp • sector_overview — sector snapshot: top 5 companies by market cap, avg P/E, 30-day sector index change. Supported sectors: semiconductor, ev, battery, technology, finance, energy, realestate, consumer, pharma, telecom • regulatory_filing — recent regulatory disclosures (HKEX filings: annual, quarterly, announcements, mergers, IPOs) with title, date, document URL

Input formats accepted: • 6-digit A-Share ticker (e.g. '600519' for Moutai SSE) • HKEX ticker (e.g. '0700.HK' or '700' for Tencent) • Company name in EN or ZH (e.g. '腾讯', 'Kweichow Moutai') • Sector keyword (e.g. 'semiconductor', '半导体')

Data sources: Yahoo Finance (primary, always accessible), Eastmoney push2 + CompanySurvey (via Bright Data proxy when AICI_RESEARCH_PROXY_URL is set), HKEX filing API. Note: Eastmoney/CSRC/SSE are blocked from datacenter IPs without proxy — set AICI_RESEARCH_PROXY_URL to unlock full coverage.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesAnalysis mode. company=full profile, market_quote=price data, sector_overview=top 5 by sector, regulatory_filing=recent filings.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesTicker (6-digit A-share, 4-digit HK, Yahoo format), company name (ZH or EN), or sector keyword.
exchangeNoExchange filter. Default: all. Affects sector_overview ticker selection.
period_daysNoLookback period in days for regulatory filings. Default: 30.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
queryYes
statusYes
companyNo
sourcesYes
market_quoteNo
quality_scoreYes
sector_overviewNo
regulatory_filingsNo
Behavior4/5

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

Beyond the annotations (readOnlyHint=true, destructiveHint=false), the description discloses important behavioral details: data sources (Yahoo Finance always accessible, Eastmoney/HKEX with proxy), and the note that Eastmoney/CSRC/SSE are blocked from datacenter IPs without AICI_RESEARCH_PROXY_URL. It also describes per-mode return contents, which is useful context.

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 well-structured and efficient: a brief introductory sentence, bullet-pointed mode definitions, input format list, and data source note. Every section earns its place, and the length is justified by the tool's four-mode complexity. No fluff or redundancy.

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 tool's complexity (four modes, multiple input formats, 5 parameters), the description covers all necessary operational context: modes with output fields, accepted ticker/name/sector formats, data source behaviors, and proxy configuration. With an output schema present, return values need no further explanation. The async parameter is covered by schema descriptions, so this is sufficiently complete.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds significant value by listing accepted input formats with concrete examples (e.g., '600519' for Moutai SSE, '0700.HK' for Tencent, '腾讯'), detailing sector keywords, and explaining the period_days lookback. This enriches the query and sector_overview parameters beyond schema descriptions.

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

Purpose5/5

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

The description clearly states a specific verb+resource: 'Chinese capital market intelligence' covering A-Shares, H-Shares, and ADRs across four distinct modes. It distinguishes itself from neighboring tools like india_market_data through explicit geographic scope and enumerates the exact output for each mode.

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?

Provides clear context on when to use the tool by enumerating supported markets and input formats. It also gives operational guidance on data source availability and the proxy requirement for full coverage. However, it does not explicitly name alternatives or state when not to use this tool (e.g., for Indian markets).

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

churn_defenderD
Read-only
Inspect

Bouclier anti-churn — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Spendesk — portefeuille 400 clients PME/ETI, détection churn Q2 2025 (€8M ARR). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
accountsYes
csrContextNo
analysisWindowDaysYes
Behavior2/5

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

The description adds 'Inputs are validated server-side' and 'Returns a structured, audited deliverable', which are small extra clarifications beyond the readOnly/openWorld annotations. However, it does not disclose the async option, processing behavior, or what the deliverable contains. The added context is minimal.

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

Conciseness2/5

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

The description is short but under-specified. The opening phrase 'Gapup agent-payable C-suite expertise (CRO)' is jargon and not effectively front-loaded. The reference case is concrete but does not substitute for a real description of the tool's purpose and functionality.

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

Completeness1/5

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

For a tool with a complex nested schema (company, accounts) and no output schema, the description is severely incomplete. It fails to explain the purpose, required inputs, expected output, or when to invoke it. The reference case describes a specific scenario rather than general capabilities.

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

Parameters1/5

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

With schema description coverage at only 20%, the description should compensate by explaining key parameters. 'Send the documented case fields' is unhelpful and tautological. No parameter names, types, or detailed purposes are described beyond the schema itself.

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

Purpose2/5

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

The description mostly restates the tool name ('Bouclier anti-churn') and vague marketing language ('Gapup agent-payable C-suite expertise'). It never clearly states the core function with a specific verb such as 'detect' or 'generate'. The only hint is in the reference case ('détection churn'), which is not a definition.

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

Usage Guidelines1/5

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

No guidance is provided on when to use this tool versus the many sibling churn-related tools (renewal_optimizer, save_plays, champion_mapping). The phrase 'send the documented case fields' addresses input preparation but not selection criteria or alternatives.

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

climate_scenario_rcpA
Read-only
Inspect

Projections climatiques long terme par scénario IPCC (RCP AR5 + SSP AR6) pour toute localisation. Scénarios : RCP_4_5, RCP_8_5 (AR5), SSP1_2_6, SSP2_4_5, SSP3_7_0, SSP5_8_5 (AR6), ou 'all' (compare tous). Horizons : 2030–2100. Métriques : température (delta vs baseline 1990-2010, jours >35°C, nuits chaudes), précipitations (delta%, événements extrêmes, sécheresses), hausse du niveau de la mer (cm vs 2000), événements extrêmes (ouragans, inondations P100, sécheresses), indice incendie. Sorties : comparaison multi-scénarios, probabilité IPCC, signaux d'impact business par secteur. Sources : Open-Meteo CMIP6 (keyless), IPCC AR6 Atlas lookup, NOAA SLR projections. Usages : TCFD/CSRD physical risk, due diligence actifs long terme, assurance catastrophe, planification infrastructure. Cache 7j. SLA ≤20s.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
metricsNoMétriques à inclure. Défaut : toutes.
locationYesLocalisation : {city, country?} ou {lat, lon}
scenarioYesScénario IPCC. 'all' génère une comparaison multi-scénarios.
horizon_yearYesAnnée horizon de la projection (2030–2100)
compare_baselineNoComparer vs baseline 1990-2010 (défaut true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
locationYes
scenarioYes
projectionsYes
horizon_yearYes
quality_scoreYes
baseline_periodNo
ipcc_likelihood_labelYes
business_impact_signalsYes
multi_scenario_comparisonNo
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context: cache duration ('Cache 7j'), SLA ('SLA ≤20s'), keyless access ('keyless'), and the async execution option. No contradiction with 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 a dense but well-structured paragraph that front-loads the main purpose and follows with scenario, horizon, metric, output, source, and usage details. It avoids filler and each clause adds distinct information, though the length could be slightly reduced without losing value.

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 tool's complexity (6 parameters, output schema present), the description covers all essential aspects: purpose, scenarios, metrics, outputs, data sources, use cases, performance expectations, and auxiliary parameters like async. The output schema handles return-value details, so the description is complete.

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 has 100% coverage, so baseline is 3. The description goes beyond the schema by elaborating on the meaning of metric values (e.g., 'température (delta vs baseline 1990-2010, jours >35°C, nuits chaudes)') and scenario options, enriching the parameter understanding.

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

Purpose5/5

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

The description clearly states the tool's function with a specific verb and resource: 'Projections climatiques long terme par scénario IPCC (RCP AR5 + SSP AR6) pour toute localisation.' It also enumerates specific scenarios, horizons, and metrics, which unambiguously distinguishes it from siblings like weather_climate_intel.

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

Usage Guidelines4/5

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

The description provides explicit use cases: 'Usages : TCFD/CSRD physical risk, due diligence actifs long terme, assurance catastrophe, planification infrastructure.' This gives clear context for when to use the tool, though it does not explicitly mention alternatives or when not to use it compared to sibling tools.

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

clinical_evidence_brieferB
Read-only
Inspect

Brief évidence clinique (GRADE) — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Answers: Review the clinical evidence for <drug/intervention> in — GRADE rating, key trials, safety signals. · Scan safety signals for in — adverse events, severity, frequency from FAERS and trial data. · Assess comparative effectiveness of versus for — what does the evidence show? · Is there evidence supporting drug repurposing of for — existing trials and GRADE quality? · What are the evidence gaps for in before formulary adoption? Reference case: Semaglutide 2.4mg · Chronic weight management in non-diabetic adults · GRADE high efficacy · studies found · nausea/GI signals · FDA approved · PubMed+ClinicalTrials+OpenFDA. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
topicYes
max_studiesYes
interventionNo
evidence_focusYesall
target_diseaseNo
date_range_yearsYes
intervention_typeNo
Behavior3/5

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

Annotations already provide readOnlyHint=true. The description adds that it returns a 'structured, audited deliverable' and that inputs are 'validated server-side', which is useful context. But it doesn't disclose output structure, pagination, rate limits, or async behavior beyond what the schema hints.

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

Conciseness2/5

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

The description contains a promotional tagline ('Gapup agent-payable C-suite expertise (RISK)') and a long reference case. While bulleted, it is not front-loaded and includes sentences that add little value, such as the vague 'RISK' label and the closing validation note.

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

Completeness2/5

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

For a tool with 8 parameters, no output schema, and only minimal annotations, the description omits key usage details: how to specify the exact focus, what the deliverable contains beyond vague 'GRADE rating', and how async polling works. The reference case helps but is not a substitute for explicit guidance.

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

Parameters2/5

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

Schema description coverage is only 13%. The description maps some placeholders (e.g., 'drug/intervention', 'indication') but never explains max_studies, date_range_years, intervention_type, or async. It fails to compensate for the sparse schema for most parameters.

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

Purpose5/5

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

The description clearly states it produces a 'Brief évidence clinique (GRADE)' and enumerates specific question types (efficacy, safety, comparative effectiveness, repurposing, evidence gaps). This is a specific verb+resource with distinct scope, distinguishing it from siblings like clinical_pharma_intel or sci_literature_search.

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 example questions clearly imply when to use the tool (e.g., for GRADE ratings, safety signals, comparative effectiveness). However, it never explicitly names alternatives or exclusion criteria, so it stops short of full when/when-not guidance.

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

clinical_pharma_intelA
Read-only
Inspect

Clinical and pharmaceutical intelligence for biotech analysts, healthcare fund managers, pharma BD teams, catalyst-driven hedge funds and health journalists. Aggregates live data across five modes: • trials — active/completed clinical trials (ClinicalTrials.gov v2 + EU CTR in parallel, 450k+ records) • pipeline — full pipeline by sponsor: trial count by phase + top indications • approvals — FDA drug label approvals + mechanism of action (OpenFDA) • recalls — FDA enforcement recalls classified by severity (Class I/II/III) • adverse_events — FAERS aggregated reactions: top 10 reactions + serious%

Signal detection (P0/P1/P2): P0 if Class I recall OR trial terminated for safety reason P1 if serious adverse events >30% OR ≥3 recalls in 12 months P2 otherwise (standard monitoring)

All sources are public and keyless. Optional env OPENFDA_API_KEY raises daily quota from 1,000 to 120,000 requests. SLA: ≤16s p95 (parallel fetch, 8s budget per source). Cache: 6h trials, 24h approvals, 12h recalls, 6h adverse events.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoAnalysis mode. Default "trials". trials=clinical trials, pipeline=sponsor overview, approvals=FDA approvals, recalls=enforcement, adverse_events=FAERS
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
phaseNoFilter trials by phase (1/2/3/4/NA). Only applies to modes trials and pipeline.
queryYesDrug name, indication, sponsor or molecule (e.g. "atezolizumab", "metastatic NSCLC", "Roche", "semaglutide")
countryNoISO 2-letter country code to filter trial sites (e.g. US, FR, DE).
max_resultsNoMaximum number of results to return. Default 20.
status_filterNoFilter trials by status. Only applies to modes trials and pipeline.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
queryYes
statusYes
trialsNo
recallsNo
signalsYes
sourcesYes
pipelineNo
approvalsNo
quality_scoreYes
adverse_eventsNo
Behavior5/5

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

Annotations already flag readOnlyHint=true and destructiveHint=false, and the description adds substantial operational behavior: parallel fetching with source-level budgets, SLA p95 ≤16s, cache durations per data type, keyless access, and optional OPENFDA_API_KEY quota increase. It also describes signal prioritization logic (P0/P1/P2) that governs how results are interpreted, far exceeding annotation coverage.

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 long but well-structured with bullets and sections (modes, signal detection, operational details). Every sentence contributes substantive information, and the front-loaded purpose sentence ensures quick understanding. Slight verbosity in listing audiences and operational stats is justified given tool complexity.

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 7 parameters, 5 modes, and an output schema present, the description fully covers what the tool does, data sources, caching, SLA, rate limits, and basic signal logic. It does not need to describe return values because the output schema exists, and all essential operational context is provided.

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 descriptions already explain each parameter (mode, query, phase, etc.), giving baseline 3. The description enhances this by detailing what each mode returns (e.g., '450k+ records', 'trial count by phase + top indications', 'serious%') and clarifying the meaning of status_filter and phase in context, adding value 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?

The description clearly states the tool aggregates live clinical and pharmaceutical data across five named modes (trials, pipeline, approvals, recalls, adverse_events), each with concrete sources and outputs. The verb 'aggregates' combined with the enumerated resource makes the purpose specific and distinguishes it from generic search tools.

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 identifies target audiences (biotech analysts, fund managers, etc.) and lists the five modes, implying when each mode might be used. However, it does not explicitly contrast with sibling tools like clinical_evidence_briefer or provide 'when not to use' guidance, leaving usage context partially implicit.

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

cloud_cost_ri_optimizerA
Read-onlyIdempotent
Inspect

Analyzes AWS and Azure cloud pricing data alongside RIPE regional demand trends to generate Reserved Instance purchase recommendations for CTOs. Inputs include target cloud provider, instance family, region, and desired commitment term. Outputs include cost savings percentage, optimal RI quantity, and regional demand insights. Ideal for reducing cloud spend with data-driven decisions. Keywords: cloud cost optimization, reserved instances, AWS pricing, Azure pricing, RIPE demand trends.

ParametersJSON Schema
NameRequiredDescriptionDefault
termNo
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
regionYes
utilizationNo
cloud_providerYes
instance_familyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
ri_costNo
sourcesNo
warningsNo
on_demand_costNo
break_even_monthsNo
regional_demand_scoreNo
cost_savings_percentageNo
recommended_ri_quantityNo
Behavior3/5

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

Annotations declare readOnlyHint=true and idempotentHint=true, so the description is not expected to restate these. The description's wording ('Analyzes', 'generate recommendations') aligns with a read-only analytical operation and adds no contradictions. It does not add extra behavioral context beyond what annotations provide, such as data source freshness, rate limits, or RIPE data interpretation caveats, but given the annotation coverage, a 3 is appropriate.

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

Conciseness3/5

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

The description is a solid paragraph with a clear first sentence, but it includes marketing fluff ('Ideal for reducing cloud spend with data-driven decisions') and a redundant keyword list at the end ('Keywords: cloud cost optimization, reserved instances...'). This adds no functional value and could be trimmed. It is not overly long, but every sentence does not earn its place.

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

Completeness3/5

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

The description provides the tool's purpose, primary inputs, and expected outputs, and an output schema exists to detail return values. However, it leaves the 'utilization' parameter semantically unexplained and does not clarify what 'RIPE regional demand trends' means or how they influence recommendations. For a tool with six parameters and two enums, the description is adequate but not complete, missing meaningful guidance on an important parameter.

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 only 17%, with only the 'async' parameter described. The description helps by naming key inputs ('target cloud provider, instance family, region, and desired commitment term'), mapping to four of six parameters. However, it omits the 'utilization' parameter entirely, which is semantically important for an RI optimizer (the schema only provides min/max bounds, not what the value means). Thus, the description partially compensates for low schema coverage but has a clear gap.

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

Purpose5/5

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

The description clearly states the tool's function: it 'Analyzes AWS and Azure cloud pricing data alongside RIPE regional demand trends to generate Reserved Instance purchase recommendations.' It specifies the target audience (CTOs), the core deliverable (cost savings percentage, optimal RI quantity, regional demand insights), and the key input dimensions (cloud provider, instance family, region, term). This strongly distinguishes it from sibling tools like generic 'pricing_strategist' or 'treasury_optimizer' by focusing specifically on Reserved Instance purchase recommendations.

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 says it is 'Ideal for reducing cloud spend with data-driven decisions,' which provides a general use case but no explicit guidance on when to choose this tool over alternatives or when not to use it. It does not mention any exclusions or conditions, such as 'use for proactive RI planning but not for immediate cost anomaly detection.' The context is clear but thin.

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

code_review_depth_optimizerA
Read-onlyIdempotent
Inspect

As a CTO, this tool analyzes your team's historical DORA metrics (deployment frequency, lead time, MTTR, change failure rate) and GitHub pull request data to recommend an optimal code review depth. Input your repository identifier and time range, and receive a structured recommendation on review rigor (light, standard, thorough) with supporting metrics and risk-adjusted rationale.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
teamSizeNoNumber of active developers in the team
repositoryYesGitHub repository identifier in format owner/repo
riskToleranceNoOrganization's risk tolerance level
timeRangeDaysYesNumber of days of historical data to analyze

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
recommendationNo
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds behavioral context by disclosing the data sources (DORA metrics, GitHub PRs), the input requirements, and the nature of the output (structured recommendation with supporting metrics and risk-adjusted rationale). No contradictions with 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 two sentences, front-loaded with the tool's core purpose and ending with the output format. The first sentence is slightly long but every clause adds useful detail. There is no fluff or redundancy, though it could have been trimmed without losing meaning.

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 presence of an output schema, full parameter descriptions, and strong annotations, the description provides sufficient context for selection and invocation. It covers the tool's inputs, data sources, and output style. It does not explain optional parameter behavior or use cases, but these are already documented in the schema, and the tool is not overly complex.

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%: all parameters have descriptions. The description reiterates 'repository identifier and time range' but adds no new meaning beyond the schema. It mentions output categories (light, standard, thorough) but does not explain how parameters like teamSize or riskTolerance affect results, so a baseline score of 3 is 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 clearly states the tool's purpose: analyzing DORA metrics and GitHub PR data to recommend an optimal code review depth. It specifies the verb ('analyzes'), the resource ('historical DORA metrics and GitHub pull request data'), and the output ('a structured recommendation on review rigor'), making it distinguishable from sibling tools like dora_metrics_deep_dive.

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 gives implied usage context ('As a CTO... Input your repository identifier and time range') but does not explicitly state when to use this tool versus alternatives such as dora_metrics_deep_dive or change_failure_root_cause_classifier. There are no exclusions or alternative-tool references, so guidance exists only at an implied level.

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

comp_benchmark_geo_deltaA
Read-onlyIdempotent
Inspect

Compares local compensation benchmarks against HQ standards for CHROs, adjusting for cost-of-living and tax differentials. Inputs include job role, local and HQ locations, and salary range. Outputs include adjusted benchmark delta, cost-of-living multiplier, and tax impact. Keywords: compensation benchmark, geographic pay equity, cost-of-living adjustment, tax differential analysis.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
jobRoleYesStandardized job role (e.g., 'Software Engineer III')
currencyNoISO 4217 currency code (e.g., 'USD')
baseSalaryNoCurrent base salary in local currency
hqLocationYesHQ location (ISO 3166-2 code or city, country)
localLocationYesLocal work location (ISO 3166-2 code or city, country)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
taxImpactNoEstimated tax differential percentage
adjustedSalaryNoSalary adjusted for cost-of-living and taxes
benchmarkDeltaNoPercentage difference between local and HQ benchmark
confidenceScoreNo0-1 confidence in data quality
costOfLivingMultiplierNoLocal cost-of-living index relative to HQ
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safe-read nature is established. The description adds useful behavioral context about adjusting for cost-of-living and tax differentials and lists expected outputs, but it does not go into data sources, limitations, or rate limits. This is similar to moderate-added-value examples, so a 3 is appropriate.

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 concise and front-loaded with the core purpose. The first sentence is high-value, and the second and third sentences summarize inputs and outputs. The keywords sentence is somewhat redundant but could aid searchability; overall, it is efficient without excessive fluff.

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 presence of a full output schema and rich annotations, the description covers the tool's purpose, inputs, outputs, and domain keywords. It does not explain prerequisites or alternatives, but the combination of schema, annotations, and description provides sufficient context for an agent to select and invoke the tool correctly.

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

Parameters2/5

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

Schema description coverage is 100%, so baseline is 3. However, the description says 'salary range' while the schema defines a single 'baseSalary' number, which is a misleading mismatch. It also does not add meaningful parameter semantics beyond restating inputs, so the baseline is reduced due to the inconsistency.

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

Purpose5/5

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

The description clearly states a specific verb+resource: 'Compares local compensation benchmarks against HQ standards for CHROs, adjusting for cost-of-living and tax differentials.' It explicitly differentiates from sibling tools like global_salary_inflation_adjuster or executive_comp_peer_benchmark by focusing on geographic pay equity and tax/COL adjustments.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool (for CHROs comparing local vs HQ compensation with COL/tax adjustments) but does not explicitly mention alternatives or when-not-to-use cases. This aligns with 'clear context, no exclusions.'

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

competitive_deep_diveA
Read-only
Inspect

Gold-standard competitive deep dive — STRUCTURED multi-source data (no LLM narrative). Pair tool: competitor_intel for LLM-narrated board briefing + slide script. Aggregates Wikipedia, Yahoo Finance, SEC EDGAR, Wayback Machine, DuckDuckGo, HackerNews, domain scraping — all keyless. Returns agent-shaped JSON: KPIs (funding, employees, revenue, market cap), P0/P1/P2 competitive signals, pricing radar, competitor comparison matrix, Wayback timeline, positioning (sector/industry/icp_hypothesis/moat_signals), quality score. Every field is sourced or marked unavailable — no hallucinated figures. SLA: p50 ~25s, p95 ~30s · score 80+ on listed targets (US/EU/foreign) · score ~40 on private companies (no EDGAR/Yahoo data). Use sync for batch agents (≤30s tolerance). Use competitive_deep_dive_async + competitive_deep_dive_result(job_id) for conversational agents. Inputs: company name or domain (required), optional competitor list (≤5), optional depth (easy/medium/hard).

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
depthNoResearch depth: 'easy' = Wikipedia + DDG (fast, ~15s); 'medium' = + Yahoo Finance + EDGAR + Wayback (default, ~45s); 'hard' = + HackerNews + domain surfaces + competitor deep dive (~120s)
companyYesName or domain of the target company (e.g. 'Salesforce', 'notion.so', 'HubSpot CRM')
competitorsNoOptional list of competitor names or domains to include in the comparison matrix (max 5)

Output Schema

ParametersJSON Schema
NameRequiredDescription
kpisYesKey Performance Indicators sourced from public data
companyYes
qualityYes
signalsYesCompetitive intelligence signals, severity-ranked P0 (critical) to P2 (informational)
sourcesYes
comparisonYesFeature/dimension comparison between target and each competitor
depth_usedYes
positioningYesPositioning analysis derived from public data
generated_atYes
pricing_radarYesPricing tiers extracted from public sources
domain_resolvedYes
wayback_timelineYesHistorical snapshots of the company website from Wayback Machine
Behavior5/5

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

Beyond the annotations (readOnlyHint, openWorldHint, destructiveHint=false), the description discloses data sources, keyless access, output structure (KPIs, signals, matrices), accuracy guardrails ('no hallucinated figures'), SLA times, and quality-score expectations for different target types. This adds substantial behavioral context not available from annotations alone.

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 dense but well-structured: it leads with the core value proposition, then covers data sources, output shape, reliability guarantees, SLA, use-case-specific guidance, and inputs. Every sentence provides distinct value, and the information is front-loaded with the most critical differentiators first.

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 complex tool with multiple sources, nested output, and async variants, the description thoroughly covers what the tool does, what it returns, its limitations, its performance envelope, and how to choose between sync/async usage. The presence of an output schema further reduces the need to explain return fields, yet the description still summarizes the output structure helpfully.

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?

The input schema already has 100% description coverage, including detailed descriptions for company, competitors, and depth (with enum and timing). The description's parameter summary ('Inputs: company name or domain (required), optional competitor list (≤5), optional depth (easy/medium/hard)') adds no new semantic information beyond the schema, 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.

Purpose5/5

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

The description opens with 'Gold-standard competitive deep dive — STRUCTURED multi-source data (no LLM narrative)' which clearly states the tool's purpose and output format. It explicitly distinguishes itself from the sibling tool 'competitor_intel' by contrasting structured data versus LLM-narrated briefings, making the differentiation strong.

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 provides explicit usage guidance: it names 'competitor_intel' as the alternative for narrative briefings, advises using sync for batch agents with ≤30s tolerance, and recommends 'competitive_deep_dive_async' plus result polling for conversational agents. It also notes performance expectations on different company types, giving clear when-to-use and when-not-to-use context.

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

competitive_deep_dive_asyncA
Read-only
Inspect

Async variant of competitive_deep_dive. Returns immediately (<200ms) with a job_id. The research runs in the background (p50≈25s, p95≈30s for depth=medium). Poll the result with competitive_deep_dive_result(job_id) after the eta_seconds hint. Use this instead of competitive_deep_dive when the agent cannot wait >15s for a response. Inputs: same as competitive_deep_dive — company (required), competitors (optional list, max 5), depth (easy/medium/hard, default medium). Async tool — register a webhook via webhooks_manage(register, url, [job.completed]) to receive callbacks instead of polling. Faster + lighter.

ParametersJSON Schema
NameRequiredDescriptionDefault
depthNoResearch depth: 'easy'≈15s, 'medium'≈30s (default), 'hard'≈60s
companyYesName or domain of the target company (e.g. 'Salesforce', 'notion.so')
competitorsNoOptional list of competitor names or domains to include in the comparison matrix (max 5)

Output Schema

ParametersJSON Schema
NameRequiredDescription
job_idYesUnique job identifier — pass to competitive_deep_dive_result
statusYesAlways 'queued' on submission
eta_secondsYesEstimated seconds until result is ready
submitted_atYesISO-8601 submission timestamp
Behavior5/5

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

Beyond the annotations (readOnlyHint, openWorldHint, etc.), the description discloses key behavioral traits: returns in <200ms, background p50/p95 timing, job_id mechanism, and webhook callback support. It also notes the tool is 'Faster + lighter' and how to retrieve results, adding significant context beyond 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?

The description is well-structured and front-loaded with the core purpose. Every sentence provides useful information: execution model, timing, polling, usage guidance, inputs summary, and webhook registration. No fluff or redundancy; it earns its length.

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 output schema exists and annotations are provided, the description covers the necessary context: it explains how the async flow works, when to use it, how to get results (polling or webhook), and the input parameters. It also differentiates from siblings. The description is complete for an async tool of this complexity.

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 baseline is 3. The description restates the parameters (company, competitors, depth) and even mentions default medium, but this information is already present in the schema descriptions. No new semantic detail is added beyond confirming the inputs are identical to competitive_deep_dive.

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

Purpose5/5

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

The description clearly identifies the tool as an async variant of competitive_deep_dive, stating it returns immediately with a job_id and runs research in the background. This distinguishes it from sibling tools like competitive_deep_dive (sync) and competitive_deep_dive_result (polling), providing a specific verb+resource+scope.

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 tells when to use this tool: 'Use this instead of competitive_deep_dive when the agent cannot wait >15s for a response.' It also names the alternative polling tool (competitive_deep_dive_result) and mentions webhooks as a callback option, giving clear usage context and exclusions.

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

competitive_deep_dive_resultA
Read-onlyIdempotent
Inspect

Poll the result of a competitive_deep_dive_async job. Returns status=pending while running, status=completed with the full report once done, status=failed on error, or status=not_found if the job_id is unknown or expired (TTL 24h). Call this after the eta_seconds hint returned by competitive_deep_dive_async.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesThe job_id returned by competitive_deep_dive_async

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

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

The description discloses behavior beyond the annotations: it explains the full lifecycle of statuses (pending, completed, failed, not_found) and the 24-hour TTL for job_id expiration. These are non-obvious behavioral traits not captured by readOnlyHint or idempotentHint. There is no contradiction with the annotations.

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

Conciseness5/5

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

The description is two sentences: the first states the core function, the second details the statuses and usage timing. Every sentence earns its place; there is no fluff, and the most important information is front-loaded.

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 tool has a single parameter, an output schema, and strong annotations, the description fully covers the essential context: the polling workflow, all possible statuses, TTL expiry, and when to call. The output schema handles return-value details, so no further explanation is needed.

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?

The schema already provides 100% coverage for job_id, including the origin ('The job_id returned by competitive_deep_dive_async'). The description does not add new semantic meaning about the parameter beyond reinforcing the same origin and TTL, so baseline 3 is 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 clearly states the tool's purpose: 'Poll the result of a competitive_deep_dive_async job.' It uses a specific verb ('poll') and resource ('result of a ... job'), and the status enumeration distinguishes it from the synchronous competitor_deep_dive and the submission tool async, making it unambiguous.

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 provides explicit usage guidance: 'Call this after the eta_seconds hint returned by competitive_deep_dive_async.' This clearly indicates when to use this tool (after submitting an async job) and implies the alternative (using the async submission tool first). It also distinguishes the polling pattern from other siblings.

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

competitor_intelA
Read-onlyIdempotent
Inspect

LLM-narrated competitive-intelligence BRIEFING — for human consumption (board meeting, pitch prep). Pair tool: competitive_deep_dive for raw structured multi-source data (agent-shaped JSON). Returns: recent competitor moves with severity (critical/high/medium/low), prioritised signals, pricing-radar comparison, 3-6 quantified recommendations (impact in € or %, 7/30/90/180-day horizons), and an 8-12 slide presenter script. Use when the buyer wants a narrative briefing or a deck. Inputs: your company (name + one-paragraph pitch) + 1-10 competitors. Delivered by Manue, AI CMO of the Gapup portfolio.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNoOptional — what the buyer wants to track first (e.g. pricing moves, hiring patterns)
competitorsYes1-10 competitors to analyze
selfCompanyYesYour company info

Output Schema

ParametersJSON Schema
NameRequiredDescription
kpisNo3-5 headline KPI bubbles
sourcesNoCited sources
pricingRadarNoPricing comparison across competitors
competitorMovesYesRecent moves per competitor with severity rating
presenterScriptYes8-12 slide board presenter script
recommendationsYes3-6 actionable strategic recommendations
executiveSummaryYesBoard-ready prose summary (120-400 chars)
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context: output is LLM-narrated, for human consumption, and includes quantified recommendations with time horizons and a presenter script. No contradictions with 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 dense but well-organized: purpose, output summary, usage guidance, and inputs all in one paragraph. The 'Delivered by Manue' sentence is slightly tangential but adds personality without bloating. It is front-loaded with the essential purpose.

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 tool's moderate complexity and presence of an output schema, the description covers the key aspects: what it returns, when to use it, and what inputs are needed. The async behavior is only in the schema, but that is acceptable since the schema documents it. The description is complete enough for an agent to select and invoke correctly.

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 the baseline is 3. The description reiterates the inputs (company name + pitch, 1-10 competitors) but adds no new semantic nuance beyond the schema's own property descriptions. It does not mention the optional `focus` or `async` parameters, but those are already well-documented in 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?

The description clearly states the tool produces an LLM-narrated competitive-intelligence briefing for human consumption, explicitly distinguishing it from the sibling tool `competitive_deep_dive` which provides raw structured data. It enumerates specific deliverables (severity-rated moves, pricing radar, recommendations, slide script) that make its purpose unmistakable.

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?

It explicitly says to use this tool when the buyer wants a narrative briefing or deck, and names the alternative `competitive_deep_dive` for raw structured multi-source data. This directly answers when-to-use versus alternatives.

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

competitor_movesA
Read-only
Inspect

Mouvements concurrents — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Answers: What have my named competitors done recently — releases, pricing changes, hires, funding? · Which competitor signals are the most urgent right now and what should I do about them? Reference case: Notion — moves de ClickUp, Asana, Coda. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
competitorsYes
selfCompanyYes
Behavior3/5

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

Annotations already declare readOnlyHint and openWorldHint. The description adds that inputs are validated server-side and that the deliverable is audited, but does not detail data sources, latency, or limitations. Given annotation coverage, this is adequate but not rich.

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 relatively concise with a bullet-style structure, but contains brand-specific jargon like 'Gapup agent-payable C-suite expertise (CMO)' and a reference case that may add noise. Still, it conveys essential info efficiently.

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?

With no output schema, the description states what answers the tool provides, but it does not document input structures (competitors array, selfCompany object) beyond the schema's minimal field names. Given nested objects and low schema coverage, more detail would be needed for full completeness.

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

Parameters2/5

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

Schema description coverage is only 25% (only async is described), and the description does not explain the selfCompany or competitors parameters beyond implying 'named competitors'. It lacks guidance on required fields like pitch and url, so it fails to compensate for low schema coverage.

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

Purpose5/5

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

The description clearly states the tool returns a structured, audited deliverable answering specific questions about competitor moves (releases, pricing, hires, funding) and urgent signals with recommendations. This distinguishes it from sibling competitor tools by focusing on recent moves and C-suite/CMO expertise.

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?

Provides clear use cases: 'What have my named competitors done recently' and 'which signals are the most urgent right now and what should I do about them?' This implies when to use it, but it does not explicitly list exclusions or direct to alternatives among the many sibling competitor intelligence tools. The reference case adds context.

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

competitor_pricing_radarC
Read-only
Inspect

Radar pricing concurrents — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Answers: How do my competitors' pricing plans and monthly prices compare to mine? · Which competitor plan undercuts or out-features my equivalent tier? Reference case: Notion — pricing vs ClickUp, Asana, Coda. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
competitorsYes
selfCompanyYes
Behavior3/5

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

Annotations (readOnlyHint=true, openWorldHint=true) cover basic safety and scope. The description adds that it 'Returns a structured, audited deliverable' and 'Inputs are validated server-side', providing some operational context. No contradiction with annotations. However, it does not disclose rate limits, failure modes, or what 'audited' concretely entails.

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

Conciseness3/5

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

The description is moderately concise but includes marketing fluff: 'Gapup agent-payable C-suite expertise (CMO)' adds no operational value. The core questions are front-loaded, but the reference case could be shortened. It is not as lean as it could be, but remains understandable.

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

Completeness2/5

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

The tool has nested objects, no output schema, and annotations. The description explains the analytical questions but omits details about the 'async' parameter, the meaning of 'focus', and the deliverable's structure beyond 'structured, audited'. For a complex tool, this is insufficient for an agent to fully understand input/output behavior.

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

Parameters2/5

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

Schema coverage is only 25% (only 'async' has a description). The description's 'send the documented case fields' is vague and does not explain the purpose of 'focus', the structure of 'competitors'/'selfCompany', or when to use 'async'. Parameter names are partially self-explanatory, but the description adds minimal value 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 explicitly states the tool answers 'How do my competitors' pricing plans and monthly prices compare to mine?' and 'Which competitor plan undercuts or out-features my equivalent tier?', making the purpose clear. The opening phrase 'Radar pricing concurrents' is awkward but the subsequent questions compensate. It distinguishes itself from sibling tools like competitor_pricing_scrape by focusing on comparative analysis rather than raw scraping.

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?

No explicit guidance is given on when to use this tool versus related siblings such as competitive_deep_dive, competitor_intel, or competitor_pricing_scrape. The reference case (Notion vs ClickUp, Asana, Coda) is illustrative but does not provide selection criteria or exclusions. There is no mention of alternatives or scenarios where this tool is preferred.

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

competitor_pricing_scrapeA
Read-only
Inspect

Scrape and parse a competitor pricing page from a URL or domain. Fetches via proxy-aware timedFetch (tries /pricing, /plans, homepage fallback), then extracts: plan names, prices, billing cadence (monthly/annual/usage-based/one-time), key features, free tier presence, enterprise tier, estimated price range. Returns structured pricing tiers. If unfetchable or no pricing found (anti-bot, SPA, auth wall): returns a clear degraded result with warnings and signals — never fake success. ICP: founders, product managers, pricing strategists, competitive intel teams. Proxy-aware (AICI_RESEARCH_PROXY_URL). Cache TTL 6h.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesCompetitor URL or domain (e.g. 'https://notion.so/pricing', 'notion.so', 'https://www.example.com'). For best results, provide the direct pricing page URL.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.

Output Schema

ParametersJSON Schema
NameRequiredDescription
tiersYes
domainYes
statusYes
warningsYes
url_fetchedYes
has_free_tierYes
pricing_foundYes
quality_scoreYes
raw_price_signalsYes
has_enterprise_tierYes
plan_names_detectedYes
billing_model_signalsYes
estimated_price_rangeYes
Behavior5/5

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

Annotations declare readOnlyHint=true and destructiveHint=false, but the description goes far beyond by disclosing proxy-aware fetching, the fallback path (/pricing, /plans, homepage), extraction fields, cache TTL, and the critical failure behavior: 'returns a clear degraded result with warnings and signals — never fake success.' This is rich behavioral context that structured annotations do not provide.

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 information-dense but appropriately sized at two sentences. It front-loads the core purpose, then packs in fetch strategy, extraction list, failure handling, ICP, proxy variable, and cache TTL. No fluff or repetition. While it could be restructured into bullet-like clarity, it remains efficient and focused.

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 scraping tool with network dependencies and failure modes, the description covers all essential context: input URL/domain, fetch paths, extraction fields, degraded-result behavior (no fake success), proxy awareness, and caching. The presence of an output schema reduces the need to describe return values, and the failure semantics plus caching TTL make this complete for an AI agent to invoke confidently.

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% (both url and async are described in the input schema). The description adds no new parameter-level meaning beyond the schema, though it reinforces the 'direct pricing page URL' suggestion in the schema. Baseline 3 is appropriate as the schema does the heavy lifting and the description does not compensate further.

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 a specific verb-resource pair: 'Scrape and parse a competitor pricing page from a URL or domain.' It clearly distinguishes this from sibling tools like competitor_pricing_radar (which likely tracks pricing over time) and pricing_strategist (which recommends pricing) by focusing on direct scraping from a given URL/domain. The extraction details (plan names, prices, billing cadence) make the purpose unmistakable.

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

Usage Guidelines4/5

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

The description provides clear context: it is for scraping a specific competitor URL/domain, and it names ICPs (founders, PMs, pricing strategists). It also implies when not to use it (when no specific URL is available) but does not explicitly reference alternative tools or exclusion criteria. The 'For best results, provide the direct pricing page URL' guidance in the schema adds usage nuance.

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

competitor_profilesC
Read-only
Inspect

Profils concurrents — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Answers: What are the strengths, weaknesses and positioning of each of my competitors? · Give me a SWOT-style profile of a named competitor. Reference case: Notion — profils de ClickUp, Asana, Coda. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
competitorsYes
selfCompanyYes
Behavior3/5

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

Annotations already indicate readOnlyHint=true and openWorldHint=true, so no contradiction. The description adds that inputs are validated server-side and that the deliverable is 'structured, audited', but it does not elaborate on the actual behavior beyond that, such as whether results are cached, how long they take, or what 'audited' means in practice. With annotations providing the safety profile, a mid-range score is appropriate.

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

Conciseness3/5

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

The description is compact and includes relevant information, but it is a single run-on sentence mixing French and English, which makes it harder to parse. It front-loads the purpose but meanders into a reference case and validation note without clear structural breaks. Not excessively long, but not well-organized.

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

Completeness2/5

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

Given the tool's complexity (nested objects, multiple params, async option, no output schema), the description is incomplete. It does not explain the expected input structure beyond a vague 'documented case fields', nor does it describe the deliverable's format, content, or how to handle the async flow. The reference case helps but leaves significant gaps for an agent needing to invoke the tool correctly.

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

Parameters2/5

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

Schema description coverage is only 25% (only 'async' is described), so the description must compensate for the undocumented parameters (selfCompany, competitors, focus). It does not explain what these fields mean, how to structure them, or what values are acceptable beyond the schema's basic types. The phrase 'send the documented case fields' is vague and does not clarify the semantics of the parameters.

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 specifies a clear verb+resource: it produces competitor profiles in SWOT-style format and answers specific questions about competitor strengths, weaknesses, and positioning. It includes a concrete reference case (Notion vs. ClickUp, Asana, Coda), which helps clarify intent. However, it does not explicitly distinguish itself from nearby sibling tools like competitive_deep_dive or competitor_intel, so it misses the top score.

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 description implies usage by providing example questions and a reference case, but it gives no explicit guidance on when to use this tool versus alternatives, nor any exclusions. It does not mention prerequisites, preferred scenarios, or tools not to use. This is essentially implied usage without clear decision rules.

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

competitor_recommendationsA
Read-only
Inspect

Recommandations concurrentielles — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Answers: Given my competitors, what strategic actions should I take and in what order? · What should my 7/30/90/180-day competitive response plan look like? Reference case: Notion — actions face à ClickUp, Asana, Coda. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
competitorsYes
selfCompanyYes
Behavior3/5

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

Annotations declare readOnlyHint=true and openWorldHint=true, so the tool is known to be non-mutating. The description adds that it returns an 'audited deliverable' and that inputs are 'validated server-side,' which is useful context. However, it does not disclose async behavior, pagination, or detailed return structure, beyond what is already implied by 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 relatively concise and front-loaded with the tool's purpose and key questions. The bullet-style questions and reference case add practical value. The opening phrase 'Gapup agent-payable C-suite expertise (CMO)' is slightly promotional and could be trimmed, but overall every meaningful sentence earns its place.

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

Completeness3/5

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

For a tool with nested input objects and no output schema, the description defines the high-level deliverable and the strategic questions it answers. However, it leaves the 'focus' and 'async' parameters underspecified and does not describe the exact input format for competitors/selfCompany beyond vague 'documented case fields.' It is adequate for selection but not fully complete for reliable invocation.

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

Parameters2/5

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

Schema description coverage is only 25% (only 'async' has a description). The description mentions 'Given my competitors' and 'documented case fields,' giving a hint about competitors and selfCompany, but does not clarify the 'focus' parameter or the expected structure of competitor/self objects. It does not compensate for the low schema coverage.

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

Purpose5/5

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

The description clearly states that the tool produces competitive recommendations, answering 'what strategic actions should I take and in what order?' and provides a 7/30/90/180-day response plan. It includes a concrete reference case (Notion vs ClickUp, Asana, Coda), which distinguishes it from sibling intelligence tools. The verb 'Returns a structured, audited deliverable' is specific and resource-focused.

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 questions in the description imply when to use the tool: when a user needs a prioritized competitive action plan or a phased response roadmap. However, it does not explicitly state when not to use it or mention alternative sibling tools like battle_plan or competitive_deep_dive. Usage guidance is present only by implication, not explicit differentiation.

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

comp_plan_architectC
Read-only
Inspect

Architecture plan de commissionnement — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub — Comp Plan 8 rôles commerciaux · OTE €65-280k · Budget comp €2.1M · Quota coverage 3.2×. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
targetsYes
geographyNo
salesTeamYes
currentChallengesYes
preferredStructureNo
Behavior3/5

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

The description adds that inputs are validated server-side and that the deliverable is structured and audited, which is context beyond the readOnly/openWorld annotations. However, it does not disclose additional behavioral traits such as expected runtime, potential external data usage, or limitations, and the annotations already cover the safety profile.

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 relatively short, but the reference case with specific numbers adds detail that may not be essential for tool invocation. It is generally front-loaded with the purpose, but the reference case could be omitted without losing necessary guidance.

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

Completeness2/5

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

The tool has 7 parameters including nested objects and no output schema, yet the description does not explain the expected deliverable structure or provide details on required fields. It gives a high-level promise of a 'structured, audited deliverable' but not enough for an agent to understand what to send or what to expect in return.

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

Parameters2/5

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

Schema description coverage is only 14%, with only the async parameter described. The description merely says 'send the documented case fields,' which does not explain the meaning of fields like company, salesTeam, targets, or currentChallenges, so it fails to compensate for the low schema coverage.

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 name and title indicate commission plan architecture, and the description says it 'Returns a structured, audited deliverable,' implying it generates a comp plan. However, it lacks an explicit verb like 'creates' or 'designs,' and does not differentiate itself from similar tools like revops_architect or comp_benchmark_geo_delta.

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?

No guidance is provided on when to use this tool versus alternatives. The reference case provides an example use case, but there is no explicit statement of when to choose this tool or when to use another.

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

content_audience_profileA
Read-only
Inspect

Return the audience targeting profile of a content entity — its enrichment tags reframed as audience facets with confidence, corroboration and full provenance (verifiable, sourced). The response also carries an entity-level provenance block (average confidence, data freshness). When to use this tool: an ad-tech or marketing agent needs a machine-readable, verifiable audience descriptor for a franchise or work. Input: an entity_id and its type.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
entity_idYesEntity id from content_catalog
entity_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
entity_idYes
provenanceYesEntity-level trust & freshness summary.
entity_typeYes
audience_facetsYesMap facet → array of { label, confidence, corroboration, source_count, sources }
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, and the description adds meaningful output details: it mentions provenance, corroboration, and an entity-level provenance block with average confidence and data freshness. This goes beyond the annotations and gives the agent a clear expectation of the response structure.

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 three sentences, front-loaded with purpose, then output details, then usage context. Every sentence earns its place with no fluff or repetition.

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 query tool with an output schema and annotations, the description covers purpose, use case, input, and output composition. However, it implies entity_type is required when the schema makes it optional, and it doesn't mention the async behavior that is part of the schema. These are minor gaps but do not undermine overall completeness.

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 67%, so the baseline is 3. The description adds minimal parameter info, just 'Input: an entity_id and its type,' which aligns with schema but doesn't explain the async parameter or provide additional semantics beyond what the schema already offers. The missing entity_type description is partially covered by its enum.

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

Purpose5/5

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

The description clearly states it returns an 'audience targeting profile of a content entity' and specifies that it reframes enrichment tags as audience facets with confidence, corroboration, and provenance. This is a specific verb+resource description that distinguishes it from sibling content tools like content_enrichment or content_provenance.

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

Usage Guidelines4/5

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

The description includes an explicit 'When to use this tool' section targeting ad-tech or marketing agents needing a verifiable audience descriptor. It provides clear context but does not mention exclusions or alternative tools, so it stops short of the full 5.

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

content_catalogA
Read-only
Inspect

Browse the Gapup gold-standard content catalogue — video games, films, TV series and music. Returns franchises with their works (title, release year). When to use this tool: an agent needs structured, audited metadata for a cultural franchise, wants to resolve a title to a canonical entity, or browses a domain's catalogue before requesting enrichment. Inputs: a content domain and an optional case-insensitive name filter. Each franchise id can be passed to content_enrichment for its fine-grained tag profile.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoOptional case-insensitive substring filter on franchise name
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNoMaximum number of franchises to return (default 20)
domainYesContent domain to browse

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
domainYes
franchisesYes
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the description isn't burdened with safety. It adds behavioral detail that the data is 'gold-standard' and 'audited', that the name filter is case-insensitive (though schema also says this), and that franchise IDs link to content_enrichment. This goes beyond the basic read-only declaration.

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 sentences: what it returns, when to use it, and how it links to enrichment. No filler, front-loaded with the key 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?

The tool is a simple browse/query operation with a rich output schema. The description covers the return value, domain filter, name filter, and cross-reference to enrichment, which is sufficient for an agent to select and invoke it correctly.

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 the schema fully documents all four parameters. The description only summarizes domain and name filter, adding no new meaning 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?

The description opens with a specific verb ('Browse') and names the resource ('Gapup gold-standard content catalogue') with explicit domains. It clearly states the return payload ('franchises with their works (title, release year)') and distinguishes from sibling tools like content_enrichment.

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?

It explicitly states when to use: for structured audited metadata, resolving titles to canonical entities, or browsing before enrichment. It also names the alternative 'content_enrichment' for tag profiles, providing a clear exclusion.

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

content_compareA
Read-only
Inspect

Compare the tag profiles of two content entities (franchises or works) and measure how similar they are. Returns a Jaccard similarity score, the list of shared tags, the tags unique to each entity, and a breakdown of shared tags by facet. When to use this tool: an agent needs to compare two franchises or works (e.g. 'how similar are Dark Souls and Elden Ring?', 'what do Street Fighter and Mortal Kombat have in common?', 'on which axes do these two games differ?'), find positioning overlap, identify cross-sell opportunities, or answer 'if you liked X you might like Y' questions backed by data. Works for any domain (video-games, music, film, tv).

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
entity_aYesId of the first entity from content_catalog (e.g. 'game-dark-souls', 'music-daft-punk').
entity_bYesId of the second entity from content_catalog (e.g. 'game-elden-ring', 'music-justice').
entity_typeNoWhether both ids are franchises or works (applies to both). Defaults to 'franchise'.

Output Schema

ParametersJSON Schema
NameRequiredDescription
entity_aYes
entity_bYes
similarityYesJaccard index = |shared| / |union|, rounded to 2 decimal places. 0 = no overlap, 1 = identical profiles.
a_tag_countYes
b_tag_countYes
entity_typeYes
shared_tagsYesTags present in both entities (up to 40).
unique_to_aYesTags present only in entity_a (up to 40).
unique_to_bYesTags present only in entity_b (up to 40).
shared_countYes
shared_by_facetYesCount of shared tags per facet (e.g. { genre: 3, theme: 5 }). Shows which dimensions drive the similarity.
Behavior4/5

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

Annotations declare readOnlyHint=true and openWorldHint=true, so the safety profile is already known. The description adds useful behavioral context beyond annotations by specifying the exact return values (Jaccard similarity, shared/unique tags, facet breakdown) and the domain-agnostic nature. It does not mention limitations or side effects, but given the annotations, this is appropriate. No contradiction with annotations.

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

Conciseness5/5

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

The description is four sentences, each serving a distinct purpose: function, outputs, use cases, and domain scope. It is information-dense without redundancy, no fluff, and logically ordered from core behavior to application context. This is exemplary conciseness.

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 tool's moderate complexity (4 params, output schema present), the description is complete. It explains the core purpose, return values, use cases, and scope. The output schema covers return structure, so the description need not repeat it. No prerequisites or error conditions are mentioned, but none are critical given the tool's read-only nature and clear 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 the schema already documents all parameters (entity_a, entity_b, entity_type, async) with examples. The description adds no parameter-specific information beyond what the schema provides, but it reinforces the conceptual meaning of entity_a/entity_b as content entities. This aligns with the baseline score of 3 when schema carries the semantic load.

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

Purpose5/5

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

The description clearly states the tool's function with a specific verb and resource: 'Compare the tag profiles of two content entities... and measure how similar they are.' It also lists concrete outputs (Jaccard score, shared tags, unique tags, facet breakdown), making the purpose unambiguous. While there is a sibling tool 'content_similar', the description effectively distinguishes this tool by framing it as a pairwise comparison, not single-entity similarity search.

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 provides 'When to use this tool' with concrete examples ('how similar are Dark Souls and Elden Ring?'), and lists use cases like positioning overlap and cross-sell opportunities. It also states it works across domains, giving strong contextual guidance. It does not explicitly name alternative tools, but the guidance is sufficiently clear for an agent to select this tool appropriately.

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

content_discoveryA
Read-only
Inspect

Discover content franchises within a domain. Two modes: pass tag for a precise taxonomy match (every game tagged 'co-op'), or pass query for free-text SEMANTIC search powered by pgvector embeddings — finding franchises by meaning ('dark atmospheric games about isolation') even when no literal tag matches. Results are verifiable: tag mode carries tag confidence/corroboration, semantic mode carries a similarity score; both carry entity freshness. When to use: an agent wants a domain-scoped shortlist by tag or by intent. Inputs: a domain plus either a tag or a free-text query.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNoTag label to match precisely (e.g. 'thriller', 'co-op'). Mutually exclusive with `query`.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNoMaximum franchises to return (default 25)
queryNoFree-text intent for semantic search (e.g. 'melancholic synth-pop about heartbreak'). Mutually exclusive with `tag`.
domainYesContent domain to search within

Output Schema

ParametersJSON Schema
NameRequiredDescription
tagNo
countYes
queryNo
domainYes
methodYes
franchisesYes
Behavior5/5

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

Beyond the readOnlyHint annotation, the description adds valuable behavioral context: results are 'verifiable' with confidence/similarity scores and entity freshness, and the two modes have distinct output characteristics. This informs the agent about what to expect without needing to invoke the tool.

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 well-structured and front-loaded: purpose first, then modes, then result characteristics, then use case. Every sentence contributes meaningful information without redundancy or fluff. Length is appropriate for the tool's complexity.

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 schema covers all parameters and an output schema exists, the description provides the missing conceptual layer: when to use which mode, what to expect in results, and how to think about the domain scoping. It is complete for making an informed tool selection.

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

Parameters5/5

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

While schema coverage is 100%, the description enriches parameter meaning significantly: it clarifies the tag/query mutual exclusivity, explains the semantic search mechanism (pgvector embeddings), and frames outputs in terms of 'domain-scoped shortlist.' This adds depth beyond the schema field descriptions.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Discover content franchises within a domain.' It uses a specific verb (discover) and resource (content franchises), and immediately distinguishes the two modes (tag vs query), which separates it from sibling tools like content_taxonomy and content_similar.

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 provides 'When to use:' guidance and explains which mode fits which intent (precise taxonomy match vs free-text semantic search). This gives clear direction for selecting the tool and its parameters, going beyond a simple statement of functionality.

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

content_engineC
Read-only
Inspect

Moteur de contenu — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Notion — content engine 2026 (productivity B2B). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
brandYes
monthsYes
clusterYes
maxArticlesPerMonthYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the description only needs to add extra behavioral context. It adds 'Inputs are validated server-side' and 'Returns a structured, audited deliverable,' which are useful but limited. No contradiction with annotations; the description does not disclose how errors or async behavior are handled.

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

Conciseness3/5

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

The description is relatively short, but it includes non-essential content such as 'Gapup agent-payable C-suite expertise (CMO)' and a reference case 'Notion — content engine 2026 (productivity B2B)' that do not aid tool selection or invocation. The useful part is limited to 'Returns a structured, audited deliverable' and the server-side validation note.

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

Completeness1/5

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

For a tool with 5 parameters, nested objects, and no output schema, this description is grossly incomplete. It does not explain what the deliverable contains, how inputs determine the output, or how to use the async parameter. The agent is left with insufficient information to correctly invoke this tool.

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

Parameters1/5

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

Schema description coverage is only 20% (only 'async' has a description). The tool description does not explain any of the parameters (brand, cluster, months, maxArticlesPerMonth) or their semantics. 'Send the documented case fields' defers to external documentation rather than providing meaning. This is a severe gap for a 5-parameter tool with nested objects.

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

Purpose2/5

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

The description is vague and lacks a specific verb+resource. 'Moteur de contenu' merely restates the tool name, and 'Returns a structured, audited deliverable' is generic. It does not explain what the content engine actually does (e.g., generate a content strategy, plan, or audit) and does not distinguish it from sibling content tools like content_audience_profile or content_ranking.

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?

No guidance on when to use this tool versus alternatives. The description mentions a reference case (Notion) but does not specify conditions or contexts that favor this tool over others. The only usage hint is 'send the documented case fields,' which is not a decision guideline.

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

content_enrichmentA
Read-only
Inspect

Return the enriched tag profile of a content entity — the Gapup moat. Each tag carries a facet (genre, theme, play-mode, perspective…), a confidence score, a corroboration score and its full provenance (which sources corroborated it, when). The response also carries an entity-level provenance block (average confidence, data freshness). When to use this tool: an agent has a franchise or work id (from content_catalog) and needs a fine-grained, machine-readable, verifiable characterisation for matching, recommendation, contextual targeting or analysis. Inputs: an entity id and its type.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
entity_idYesEntity id from content_catalog (e.g. 'music-daft-punk', 'film-the-dark-knight-collection:the-dark-knight')
entity_typeNoWhether the id is a franchise or a work (default franchise)

Output Schema

ParametersJSON Schema
NameRequiredDescription
tagsYes
entity_idYes
tag_countYes
provenanceYesEntity-level trust & freshness summary.
entity_typeNo
Behavior4/5

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

Annotations only provide readOnlyHint and openWorldHint, so the description adds value by detailing response contents: facets, confidence, corroboration score, full provenance, and entity-level provenance. It does not contradict annotations and provides more behavioral context than required.

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 well-structured and front-loaded with the core purpose, followed by response details, usage guidance, and inputs. The phrase 'the Gapup moat' is slightly non-functional but does not significantly detract from conciseness.

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 strong output schema, annotations, and simple parameter set, this description is complete: it explains the purpose, response structure, prerequisites, and exact usage scenario. It leaves no critical gap for an agent to decide whether and how to invoke the tool.

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% with each parameter described in detail (entity_id, entity_type, async). The description only repeats 'Inputs: an entity id and its type' without adding new semantic meaning beyond what the schema already states, so the 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?

The description clearly identifies the tool as returning an 'enriched tag profile' for a content entity, with a specific verb ('Return') and resource. It distinguishes itself from sibling tools by emphasizing facets, confidence, corroboration, and provenance for fine-grained characterisation, which is unique among content-related siblings like content_catalog or content_similar.

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 states when to use: 'when an agent has a franchise or work id (from content_catalog) and needs a fine-grained, machine-readable, verifiable characterisation for matching, recommendation, contextual targeting or analysis.' No exclusions or alternative names are given, but the context is clear and actionable.

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

content_evergreen_score_analyzerA
Read-onlyIdempotent
Inspect

Evaluates content evergreen potential for CMOs by analyzing historical traffic patterns and backlink authority. Takes a content URL and optional time range, returns an evergreen score (0-100), traffic trend analysis, and backlink profile. Ideal for content strategy planning, SEO optimization, and identifying high-value evergreen assets. Uses Wayback Machine and Common Crawl public APIs.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesContent URL to analyze
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
toDateNoEnd date for historical analysis (YYYY-MM-DD)
fromDateNoStart date for historical analysis (YYYY-MM-DD)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
lastSeenNo
warningsYes
firstSeenNo
trafficTrendYes
backlinkCountNo
evergreenScoreYes
backlinkDomainsNo
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds useful context by disclosing use of Wayback Machine and Common Crawl public APIs, which implies external data dependencies and potential variability. This adds value beyond the annotations and does not contradict them.

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 three focused sentences: what it does, what it takes/returns, and when to use it. Every sentence contributes information with no fluff or repetition, and the most critical purpose is front-loaded.

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?

The description covers purpose, inputs, outputs, use cases, and data sources, giving a complete picture for an agent to select and invoke the tool. The rich schema and presence of an output schema reduce the need for more detail, and the description doesn't leave major gaps.

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 descriptions cover all 4 parameters with full detail (url, async, toDate, fromDate). The description only rephrases 'optional time range' without adding new semantic meaning or clarifying edge cases, so it meets the baseline without exceeding it.

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

Purpose5/5

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

The description clearly specifies the tool's function: 'Evaluates content evergreen potential for CMOs by analyzing historical traffic patterns and backlink authority.' It names a concrete output (evergreen score 0-100, traffic trend analysis, backlink profile), distinguishing it from sibling content tools like content_catalog or content_compare.

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

Usage Guidelines4/5

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

The description states it is 'Ideal for content strategy planning, SEO optimization, and identifying high-value evergreen assets,' providing clear use-case context. However, it does not explicitly state when not to use it or name alternative tools, so it falls short of full guidance.

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

content_provenanceA
Read-only
Inspect

Audit the full data provenance of a content entity — all its enrichment tags with their extraction source, corroboration score, source list and last verification date, plus an entity-level freshness summary. Use this tool before citing or relying on enriched content data in a high-stakes context (ad targeting, editorial, analysis). Inputs: entity_id (required) and entity_type (franchise or work).

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
entity_idYesEntity id from content_catalog (e.g. 'video-game-elden-ring')
entity_typeNoWhether the id is a franchise or a work (default: franchise)

Output Schema

ParametersJSON Schema
NameRequiredDescription
lineageYesFull tag lineage from v_data_lineage — one entry per tag.
entity_idYes
entity_typeYes
freshness_summaryYesEntity-level freshness & trust summary from v_entity_freshness.
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is known. The description adds valuable behavioral context by listing exactly what is returned (extraction source, corroboration score, source list, verification date, freshness summary), helping the agent anticipate output structure.

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 information-dense sentences plus an input listing. It front-loads the purpose, then gives a usage scenario, then inputs. No filler or repetition; every sentence earns its place.

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 an output schema present and readOnly/openWorld annotations, the description specifically covers what data is returned and when to use the tool. For a read-only audit tool, this is sufficiently complete and well-contextualized.

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?

Input schema covers all 3 parameters with 100% description coverage. The description mentions entity_id (required) and entity_type (franchise or work), which mirrors the schema but adds no new semantic detail. The async parameter is only in schema, but it is already documented there, so baseline 3 is 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 a specific verb ('Audit') and resource ('full data provenance of a content entity'), clearly distinguishing it from siblings by detailing enrichment tags, extraction source, corroboration score, and freshness summary. It conveys exactly what the tool does and its scope.

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 explicitly states when to use: 'Use this tool before citing or relying on enriched content data in a high-stakes context.' While it doesn't name alternatives or when-not-to-use, the guidance is unambiguous and contextually strong.

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

content_rankingA
Read-only
Inspect

Return the TOP-ranked content entities in a category, by a chosen criterion — the direct answer to superlative / decision queries: 'best video games', 'top RPGs', 'cheapest games', 'best value RPGs', 'best FPS playable right now', 'most popular music artists'. Criteria: critic_score, popularity, price, value (critic score per unit price). direction flips it (asc = cheapest/lowest first). available_only restricts to entities currently buyable. Sliceable by genre and release-year window; every result carries its score, price and source. When to use: an agent must produce a ranked shortlist to support a recommendation, a purchase or a 'what is the best X' decision.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
genreNoOptional genre filter, e.g. 'RPG', 'FPS', 'thriller'
limitNoNumber of ranked results (default 20)
domainYesContent domain to rank within
year_toNoOptional latest release year
criterionNocritic_score (0-100, default) · popularity · price · value (critic score per unit price)
directionNodesc = best/highest first (default); asc = cheapest/lowest/least first. Defaults to asc for price.
year_fromNoOptional earliest release year
available_onlyNoIf true, restrict to entities currently available to buy/play (default false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
genreNo
domainYes
rankingYes
year_toNo
criterionYes
directionNo
year_fromNo
available_onlyNo
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, lowering the bar. The description adds meaningful behavioral detail: every result carries its score, price, and source; direction flips ordering; available_only restricts to buyable entities. This goes beyond the annotations and helps the agent understand what to expect from the call, though async behavior is left to the schema.

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 the core purpose, then covers criteria, direction, availability, and usage guidance in a compact paragraph. It is well-organized and not verbose, though it repeats some enum values from the schema (e.g., the criterion list), which is slightly redundant but not harmful.

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 an output schema present, the description need not explain return values in detail, but it does state that every result includes score, price, and source. It covers purpose, filtering options, direction semantics, and when to use the tool. The async parameter is not mentioned, but the schema covers it, so the tool is sufficiently complete for an agent to select and invoke correctly.

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% with thorough descriptions for all parameters, including enum details for criterion and direction. The description reiterates the criteria ('critic_score, popularity, price, value') and adds usage examples, but it does not add new meaning beyond what the schema already provides. Baseline 3 is 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 opens with the specific verb 'Return the TOP-ranked content entities in a category, by a chosen criterion' and immediately ties it to superlative/decision queries with concrete examples like 'best video games' and 'top RPGs'. This clearly distinguishes it from sibling tools like content_discovery or content_compare, and the 'direct answer' phrasing reinforces its unique role.

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

Usage Guidelines4/5

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

The description includes an explicit 'When to use' section: 'an agent must produce a ranked shortlist to support a recommendation, a purchase or a "what is the best X" decision.' This provides clear context for when to invoke the tool, though it does not mention exclusions or name alternative tools, so it stops short of a full 5.

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

content_similarA
Read-only
Inspect

Find content entities similar to a given one. For embedded franchises this uses SEMANTIC vector similarity (pgvector) over the enrichment profile — surfacing entities that feel alike even when their tags differ literally. Falls back to shared enrichment-tag overlap for works or non-embedded entities. Each result carries a similarity score and its entity-level freshness/confidence (verifiable, sourced). When to use this tool: an agent wants recommendations or lookalikes for a franchise or work. Input: an entity_id and its type.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNo
entity_idYesEntity id from content_catalog
entity_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
methodYesHow similarity was computed.
similarYes
entity_idYes
source_provenanceYesProvenance of the source entity used to compute similarity.
Behavior4/5

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

The description adds significant behavioral context beyond the readOnly/openWorld annotations, explaining the contrast between semantic vector similarity (pgvector) and tag-overlap fallback, and noting each result carries similarity score and measurable freshness/confidence. This gives the agent expectations about algorithm behavior and output attributes, though it does not cover edge cases like empty results or performance characteristics.

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 well-structured, front-loading the core action in the first sentence, then elaborating on algorithm variants, output details, and usage. All sentences contribute value except the final 'Input: an entity_id and its type,' which largely restates schema information and could be omitted. Overall it is concise and organized.

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 tool's moderate complexity (two algorithm paths), the description covers the primary behaviors, output characteristics, and the intended use case. The presence of an output schema obviates the need to enumerate return fields, and schema descriptions cover async behavior. It does not explicitly address limit or optional entity_type behavior, but these are inferable from schema, making this a solidly complete description.

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?

The input schema provides descriptions for async and entity_id, but entity_type and limit lack descriptions (50% coverage). The description adds meaning for entity_type by explaining that the algorithm choice depends on whether it's a franchise or work, and the input line emphasizes both entity_id and type. However, it does not clarify the optional nature of entity_type (schema requires only entity_id) or explain the limit parameter, so the compensation is partial.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Find content entities similar to a given one.' It further specifies two distinct behaviors based on entity type (semantic vector similarity for embedded franchises, tag overlap for works/non-embedded), which differentiates it from sibling tools like content_discovery or content_compare. The when-to-use line reinforces the core use case.

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

Usage Guidelines4/5

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

The description provides a clear usage context: 'When to use this tool: an agent wants recommendations or lookalikes for a franchise or work.' This implies recommendation scenarios and distinguishes from alternatives by clearly stating the intended use. However, it does not name specific alternative tools or explicitly state when not to use it, so it falls just short of top-tier guidance.

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

content_taxonomyA
Read-only
Inspect

Return the enrichment taxonomy of a content domain — every tag grouped by facet (genre, theme, mood, play-mode…). When to use this tool: an agent needs the controlled vocabulary to filter, classify or query content. Input: a domain.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
domainYesContent domain

Output Schema

ParametersJSON Schema
NameRequiredDescription
domainYes
taxonomyYesMap facet → array of tag labels
tag_countYes
facet_countYes
Behavior4/5

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

Annotations already mark it read-only and open-world, and the description adds that it returns tags grouped by facet, which is useful behavioral detail beyond the annotations. It does not discuss rate limits or pagination, but the output schema covers return structure.

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 three sentences long, front-loaded with the core functionality, and contains no filler. Each sentence contributes either the output definition, usage guidance, or input reminder.

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 simple read-only tool with two fully documented parameters and an output schema, the description sufficiently covers what the tool returns and when to use it. The annotations and schema handle safety and parameter constraints, so nothing material 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 the description does not need to compensate. It only repeats 'Input: a domain' without adding details about the enum values or the async option, both of which are already well documented in 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?

The description states 'Return the enrichment taxonomy of a content domain' with specific output semantics ('every tag grouped by facet'), making the purpose concrete. This distinguishes it from sibling content tools like content_catalog or content_ranking by focusing on controlled vocabulary rather than content items or scores.

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

Usage Guidelines4/5

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

The description directly says 'When to use this tool: an agent needs the controlled vocabulary to filter, classify or query content,' which gives clear invocation context. It does not name alternatives or exclusions, but the targeted use case is sufficient for a simple read-only lookup.

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

contract_risk_scannerB
Read-only
Inspect

Scanner de risques contractuels — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: Salesforce MSA — revue d'un client SaaS B2B EMEA. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
contractTextYes
contractContextYes
Behavior4/5

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

Annotations declare readOnlyHint=true, so the description need not restate safety. It adds useful behavioral context: returns a structured, audited deliverable and states inputs are validated server-side. However, it does not detail what the deliverable contains or any rate limits.

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 three sentences and front-loaded with the purpose. The branding phrase 'Gapup agent-payable C-suite expertise (RISK)' is unnecessary, but the rest is efficient and the key deliverable type is stated early.

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

Completeness2/5

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

Given the tool has nested parameters and no output schema, the description should clarify input structure and return format. It only vaguely references 'documented case fields' and 'structured, audited deliverable', leaving the agent to rely on the sparse schema. Not enough for reliable invocation.

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

Parameters2/5

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

Schema description coverage is only 25% (only 'async' has a description). The description does not compensate; it only says 'send the documented case fields' without explaining contractContext, contractText, or focus. Required fields and enums are left to the schema alone, which is insufficient for the agent.

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 clearly identifies the tool as a contractual risk scanner that produces a structured, audited deliverable, with a reference case (Salesforce MSA) providing concrete context. It does not explicitly contrast with sibling tools like legal_clause_extractor or talent_contract_risk_mapper, so it falls short of full differentiation.

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?

No explicit guidance is given on when to use this tool versus alternatives or when not to use it. The reference case implies it is suited for reviewing contracts like MSAs, but there is no direct statement of use cases, prerequisites, or exclusions.

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

corporate_registry_lookupA
Read-onlyIdempotent
Inspect

Resolve legal information about a company from its national corporate registry. Returns a normalised, sourced company profile: legal status, registration number, directors, shareholders, recent filings, registered address, share capital, and a quality score (0–100). Coverage: France (INPI, keyless — full SIREN/SIRET with directors), 3M+ entities worldwide via GLEIF LEI (keyless, large companies), UK (Companies House, optional key), Netherlands (KvK, optional key), and OpenCorporates (token required since 2026). Sources are tried in cascade; quality_score increases with each source that succeeds. When to use: due-diligence, KYC screening, supplier verification, M&A research, or any workflow needing verified company identity and legal status. Optional env vars: COMPANIES_HOUSE_API_KEY (UK), KVK_API_KEY (NL), OPENCORPORATES_API_TOKEN (OpenCorporates token).

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
countryNoISO 3166-1 alpha-2 country code (e.g. 'FR', 'GB', 'NL', 'DE', 'SG', 'AU', 'US'). If omitted, inferred from legal suffix in company name, then falls back to global search.
identifierNoOptional registry identifier for a fast direct lookup: SIREN (FR, 9 digits), Companies House number (GB, 8 chars), KvK number (NL, 8 digits), etc.
company_nameYesCompany name or trading name to look up (e.g. 'Sanofi', 'Tesco PLC', 'Notion Labs Inc')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
registryYes
directorsYes
freshnessYesISO timestamp
identifierYes
legal_formNo
legal_nameNo
company_nameYes
jurisdictionYes
shareholdersYes
quality_scoreYes0-100 confidence score
share_capitalNo
filings_recentYes
incorporation_dateNo
registered_addressNo
Behavior4/5

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

Annotations already declare the tool as read-only, open-world, idempotent, and non-destructive. The description adds valuable behavior: 'Sources are tried in cascade; quality_score increases with each source that succeeds.' It also discloses coverage nuances and optional keys, which are not 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?

The description is dense but appropriately sized for a multi-source tool. It front-loads purpose and return value, then coverage, then usage. No sentence is wasted, though it is a single paragraph that could benefit from slight restructuring (e.g., bullets for coverage).

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?

Despite having an output schema not shown, the description lists the returned fields (legal status, registration number, directors, etc.) and the quality score. It also covers async behavior, country inference, and optional keys, making it complete for an agent to invoke and interpret results.

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 the baseline is 3. The description adds minor context (e.g., country inference, cascade behavior) but does not fundamentally extend parameter understanding beyond what the schema already provides.

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 opens with a specific verb+resource: 'Resolve legal information about a company from its national corporate registry.' It clearly distinguishes the tool from siblings like kyc_screener and sanctions_screener_multi by focusing on corporate registry data and explicitly stating the use cases.

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?

Provides explicit context: 'When to use: due-diligence, KYC screening, supplier verification, M&A research, or any workflow needing verified company identity and legal status.' It does not mention exclusions or alternatives, but the coverage and key requirements are clear enough for an agent to decide when to invoke it.

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

court_filings_multiA
Read-only
Inspect

Aggregate court filings, judgments and litigation records for a company or individual across five major legal jurisdictions: US (CourtListener / PACER), UK (National Archives — EWHC/EWCA/UKSC/UKUT), EU (ECHR HUDOC — European Court of Human Rights), France (Légifrance / Cour de cassation) and Germany (BGH / BVerfG). Returns structured case records with type classification (civil/criminal/antitrust/bankruptcy/administrative/unknown), status (filed/pending/decided/appealed/unknown), parties extracted from case titles, opinion URLs and verbatim snippets. Cross-case pattern recognition produces severity-ranked signals (P0–P2) for criminal, antitrust, bankruptcy, regulatory, data-breach and IP categories. Use when: due diligence on a counterparty, vendor risk assessment, competitive intelligence (litigation history), regulatory exposure mapping. All sources are public and keyless. Optional env var COURTLISTENER_API_KEY raises US rate limits beyond the default 5 req/s anonymous tier. SLA: ≤25s p95 (all jurisdictions fetched in parallel, 8s budget per source). Quality score: 20 pts per jurisdiction with ≥1 case retrieved, +10 if signals detected, +5–10 if ≥2–3 distinct sources contributed.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
date_toNoISO date YYYY-MM-DD — latest filing or decision date to include
date_fromNoISO date YYYY-MM-DD — earliest filing or decision date to include
party_nameYesName of the company or individual to search (e.g. "Apple Inc", "TotalEnergies", "Volkswagen AG")
jurisdictionNoJurisdictions to search. Defaults to all ["US","UK","EU","FR","DE"].

Output Schema

ParametersJSON Schema
NameRequiredDescription
casesYes
statusYes
signalsYes
sourcesYes
party_nameYes
quality_scoreYes
by_jurisdictionYes
jurisdictions_searchedYes
Behavior4/5

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

Annotations already convey readOnlyHint=true and destructiveHint=false, and the description adds valuable behavioral context: all sources are public and keyless, an optional API key raises rate limits, SLA is ≤25s p95, and a quality scoring mechanism explains result confidence. This goes beyond the annotations and helps the agent understand performance and constraints.

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 dense but well-structured: main action first, then jurisdictions, output details, use cases, API key note, and SLA/quality. Each sentence adds value, though the quality score formula is somewhat detailed and could be trimmed. Front-loaded appropriately.

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 multi-jurisdiction tool with output schema present, the description covers the tool's scope, use cases, behavioral traits (keyless, SLA, quality score), and parallelism. It does not list limitations (e.g., date coverage per source) but given the breadth, it is sufficiently complete for an agent to select and invoke it correctly.

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?

The input schema already describes all five parameters with 100% coverage, including the jurisdiction enum and default behavior. The description adds some context about source-specific budget and quality scoring but does not materially enhance understanding of parameter semantics beyond the schema. Baseline 3 applies since schema does the heavy lifting.

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 a specific verb ('Aggregate') and clearly defines the resource ('court filings, judgments and litigation records') across five named jurisdictions. It distinguishes this tool from siblings by specifying the exact legal databases and the multi-jurisdictional scope, making its purpose unmistakable.

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

Usage Guidelines4/5

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

The description explicitly lists 'Use when:' scenarios (due diligence, vendor risk assessment, competitive intelligence, regulatory exposure mapping), providing clear context for selection. It does not mention when not to use the tool or name alternative tools, so it falls short of the highest bar for explicit exclusions/alternatives.

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

crm_connectorAInspect

Push, update, search and log activities in HubSpot, Salesforce or Pipedrive. 4 modes: push_lead (create contact/lead), update_opportunity (update deal stage/amount), search_contact (lookup by email), log_activity (call/email/meeting/note). Returns resource_id, direct CRM URL, signals and quality_score. If credentials are absent, returns a mock result with a warning signal. Auth: HubSpot via Bearer access_token; Salesforce via access_token + base_url; Pipedrive via api_key.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesPayload depending on mode. push_lead: {email,first_name,last_name,company,phone,job_title}. update_opportunity: {deal_id/opportunity_id,stage,amount,close_date}. search_contact: {email}. log_activity: {type,body,contact_id/person_id,subject}.
modeYesAction to perform in the CRM
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
providerYesCRM provider to target
credentialsNoAuth credentials. HubSpot: access_token. Salesforce: access_token + base_url. Pipedrive: api_key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlNo
modeYes
statusYes
signalsYes
sourcesYes
successYes
providerYes
data_syncedNo
resource_idNo
quality_scoreYes
Behavior4/5

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

Annotations only include readOnlyHint=false and openWorldHint=true, so the description carries the burden of disclosing mutation behavior. It does so by listing mutating actions ('update', 'push') and adds the important caveat about mock results when credentials are missing. It also reveals return fields (resource_id, URL, signals, quality_score). It does not disclose failure modes or rate limits, but the available traits are transparent and consistent with annotations.

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

Conciseness5/5

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

The description is compact (4 sentences) and front-loaded with the core purpose. It then logically progresses through mode breakdown, return value, mock behavior, and auth requirements. Every sentence adds useful information with no fluff, making it easy for an agent to quickly understand and invoke the tool.

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 tool with 5 parameters, nested objects, and an output schema, the description covers the primary use cases, auth requirements, mock behavior, and return values. It does not explicitly mention the async parameter, but the schema fully documents it. The description omits edge cases like partial failure or rate limits, but given the rich schema and annotations, it is sufficiently complete for effective use.

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 the baseline is 3. The description adds a high-level summary of the mode enum and mentions auth schemes, but the schema already documents the data payload structure per mode and the credentials object in detail. The description does not introduce new parameter semantics beyond what the schema already provides, hence a neutral score.

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 opens with a specific verb+resource combination: 'Push, update, search and log activities in HubSpot, Salesforce or Pipedrive.' It then enumerates the 4 modes (push_lead, update_opportunity, search_contact, log_activity) with parenthetical clarifications (e.g., 'create contact/lead'), making the tool's purpose unmistakable. No sibling tool competes for this function, so the description fully distinguishes it.

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

Usage Guidelines4/5

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

The description clearly explains the 4 modes, implicitly guiding the user on which to use based on desired action. It also adds critical context: 'If credentials are absent, returns a mock result with a warning signal' and explains per-provider auth requirements. It does not explicitly state when not to use or name alternative tools, but the mode breakdown and mock-result warning provide strong contextual guidance.

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

cross_sell_recoC
Read-only
Inspect

Recommandations cross-sell — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Alan × Gapup Hub — 3 produits recommandés · Fit 'perfect' × 2 · ARR potentiel +€18k. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
accountYes
companyYes
portfolioYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds some behavioral context such as server-side validation and an 'audited' deliverable, but does not explain side effects, prerequisites, or return format details. It does not contradict 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.

Conciseness3/5

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

The description is relatively short but includes a detailed reference case with specific numbers ('Alan × Gapup Hub — 3 produits ... +€18k') that may be non-essential. The first sentence is a bit cryptic ('Gapup agent-payable C-suite expertise (CRO)'), but overall it is not excessively long.

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

Completeness2/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 should explain return values, but only vaguely mentions a 'structured, audited deliverable.' Key context such as parameter details, expected outcome, and usage guidance is missing, making the tool incomplete for a 4-parameter nested-object tool.

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

Parameters1/5

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

Schema description coverage is only 25%, and the description fails to compensate. It only says 'send the documented case fields,' without elaborating on the meaning of company, account, portfolio, or async parameters. This leaves the agent under-informed about 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 clearly states the tool returns cross-sell recommendations ('Recommandations cross-sell') and mentions a structured, audited deliverable, making the purpose identifiable. However, it does not differentiate from sibling tools like upsell_hunter or account_expansion_mapper, so it lacks explicit sibling distinction.

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?

No guidance is provided on when to use this tool versus alternatives such as upsell_hunter or account_expansion_mapper. The only usage-related hint is 'send the documented case fields,' which is vague and does not address selection criteria or exclusions.

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

crypto_wallet_intelA
Read-only
Inspect

Multi-chain on-chain analytics for crypto trading agents, on-chain analysts, AML/compliance teams and DeFi BD. Covers Ethereum, Base, Polygon, BSC, Arbitrum, Optimism — EVM-compatible addresses only.

5 modes: • wallet_profile — full wallet summary: type (EOA/contract/CEX/protocol), inferred persona (whale/MEV-bot/DeFi-user/hodler…), age, tx count, native balance, ERC-20 count, NFT collections, OFAC sanctions flag • token_flows — ERC-20 inflows/outflows per token on the selected period, priced in USD via CoinGecko • pnl_estimate — FIFO realized + unrealized P&L on the period with confidence rating (high/medium/low) • counterparties — top 20 counterparties ranked by USD volume with CEX/DEX/protocol labels • defi_positions — active DeFi positions detected via Etherscan interaction history (Aave/Compound/Uniswap/Curve/Lido/Balancer/SushiSwap)

Signal detection (P0/P1/P2): P0 if OFAC SDN match OR direct Tornado Cash / sanctioned-protocol interaction P1 if >$1M volume on wallet <30 days old OR MEV-bot pattern OR >80% volume on single counterparty P2 informational (CEX wallet, new wallet, no anomaly)

Sources: Etherscan family (keyless free-tier, optional API key per chain), DefiLlama (keyless), public EVM RPC (keyless), CoinGecko free tier (keyless). Cache TTL: 5 min (wallet activity evolves fast). Budget: 8s per source.

Env vars (all optional, raise Etherscan rate-limit from 1 req/5s to 5 req/s): ETHERSCAN_API_KEY · BASESCAN_API_KEY · POLYGONSCAN_API_KEY BSCSCAN_API_KEY · ARBISCAN_API_KEY · OPTIMISM_API_KEY

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesAnalysis mode. wallet_profile=full wallet summary + persona + sanctions flag. token_flows=ERC-20 inflows/outflows per token priced in USD. pnl_estimate=FIFO realized+unrealized P&L with confidence. counterparties=top 20 counterparties by volume. defi_positions=active positions on Aave/Compound/Uniswap/Curve/Lido/etc.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
chainNoChain to analyze. Default "ethereum". Use "all" to scan all 6 chains (slower, ~30s).
addressYesEVM-compatible wallet address (0x... 40 hex chars). Works on all supported chains.
period_daysNoLookback window in days for token_flows, pnl_estimate, counterparties, defi_positions. Default 30.
min_value_usdNoMinimum USD value filter for token_flows and counterparties. Default $100.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
addressYes
signalsYes
sourcesYes
token_flowsNo
pnl_estimateNo
quality_scoreYes
counterpartiesNo
defi_positionsNo
wallet_profileNo
chains_analyzedYes
Behavior5/5

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

Beyond the annotations (readOnlyHint=true, openWorldHint=true), the description discloses rich behavioral traits: keyless free-tier sources with optional API keys that raise rate limits, cache TTL of 5 minutes, a budget of 8s per source, and the exact signal detection logic (P0/P1/P2). It also mentions that EVM-compatible addresses are supported. No contradiction with annotations exists.

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 long but well-structured with clear sections for modes, signal detection, sources, and env vars. It is front-loaded with the primary purpose and then proceeds logically. Some content (e.g., the mode list) overlaps with schema descriptions, but the additional detail on signal detection and sources earns its place. It is appropriately sized for a complex multi-mode tool.

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 tool's complexity (5 modes, 6 chains) and the presence of a rich output schema, the description is remarkably complete. It explains supported chains, data sources, rate-limit behavior, cache TTL, performance budgets, and compliance signal logic. The async parameter and chain behavior are covered by the schema, so no gap remains. The description provides all necessary context for an agent to select and invoke this tool 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?

The input schema already covers all parameters (100% coverage), so the baseline is 3. The description adds substantial meaning beyond the schema by detailing the output fields for each mode, e.g., 'wallet_profile' includes 'type (EOA/contract/CEX/protocol), inferred persona (whale/MEV-bot/DeFi-user/hodler…)', and 'pnl_estimate' includes 'confidence rating (high/medium/low)'. This enriches the semantics of the 'mode' parameter beyond the schema's one-line descriptions.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Multi-chain on-chain analytics for crypto trading agents, on-chain analysts, AML/compliance teams and DeFi BD.' It names the specific chains (Ethereum, Base, Polygon, BSC, Arbitrum, Optimism) and enumerates five distinct modes (wallet_profile, token_flows, pnl_estimate, counterparties, defi_positions), each with a brief explanation. This specificity distinguishes it from sibling tools like kyc_screener or x402_payment_flow_analyzer, which target different analytics.

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

Usage Guidelines4/5

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

The description provides clear usage context by listing target audiences (trading agents, analysts, AML/compliance, DeFi BD) and describing the signal detection levels (P0/P1/P2) that trigger compliance alerts. It also notes that the 'all' chain option is slower (~30s). However, it does not explicitly state when NOT to use this tool or name alternative sibling tools for comparison, so it stops short of full exclusion guidance.

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

customer_marketingC
Read-only
Inspect

Marketing clients & ambassadeurs — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Gapup Hub — 12 clients analysés · 4 ambassadeurs identifiés · Programme + 6 case studies + référral. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
goalsYes
companyYes
productYes
customersYes
targetUseCasesNo
contentBudgetEurNo
Behavior3/5

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

Annotations include readOnlyHint=true, and the description does not contradict this. It adds that the tool returns an 'audited deliverable' and that inputs are validated server-side, providing some behavioral context. However, it lacks details on deliverable format, potential side effects, or limitations, so the additional context is modest.

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

Conciseness2/5

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

The description is verbose and jargon-heavy, mixing French phrases and marketing buzzwords. The core purpose is buried under reference-case details and brand language. It is not front-loaded or concise, making it harder for an agent to quickly grasp what the tool does.

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

Completeness2/5

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

Given the tool's complexity—nested objects, 7 parameters, no output schema—the description is insufficient. It doesn't explain expected inputs, deliverable format, or how to use the tool effectively. The vague 'audited deliverable' and case reference are not enough for an agent to invoke it correctly without additional context.

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

Parameters2/5

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

Schema description coverage is only 14% (only 'async' has a description). The description does not compensate for the low coverage; it merely says 'send the documented case fields' without explaining what those fields are or how they should be structured. Required parameters like company, product, customers, and goals are left entirely to the schema.

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

Purpose2/5

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

The description does not clearly state what the tool does. 'Marketing clients & ambassadeurs' is a vague title rather than a verb+resource statement. 'Returns a structured, audited deliverable' gives a generic outcome but not the specific function. The reference case provides hints but leaves the core purpose ambiguous.

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?

No guidance is provided on when to use this tool versus alternatives. The description doesn't explain the intended scenario or contrast with sibling tools like event_marketing or lead_magnets. It only says inputs are validated server-side, which is not a usage guideline.

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

customer_voice_synthB
Read-only
Inspect

Synthèse voix client — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Alan (assurance santé) — 3 personas · Top 5 douleurs · Repositionnement messagerie recommandé. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
dataSourcesYes
targetSegmentsYes
repositioningFocusNo
Behavior3/5

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

Annotations (readOnlyHint: true, openWorldHint: true) already signal a non-destructive, open-ended operation. The description adds useful context about server-side validation and the 'audited' nature of the deliverable, but does not elaborate on return format or any limitations. With no output schema, more detail on behavioral expectations would be beneficial, but the annotation coverage reduces 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.

Conciseness3/5

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

The description is relatively short but mixes French and English, includes cryptic segments like 'Gapup agent-payable C-suite expertise (CMO)', and uses a bullet-like reference case. It is not optimally front-loaded or entirely clear, but each sentence adds some information, so it is acceptable.

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

Completeness2/5

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

With 5 parameters, nested objects, and no output schema, the description is insufficient. It does not explain the deliverable's structure beyond the reference case example, nor does it mention how to handle async behavior (despite the schema describing it). It lacks essential guidance for a tool of this complexity.

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

Parameters2/5

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

Schema description coverage is only 20% (only async has a description). The description does not explain the meaning of company, dataSources, targetSegments, or repositioningFocus beyond 'send the documented case fields', which is vague. The reference case gives a high-level idea but does not map to parameters. This fails to compensate for the low schema coverage.

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 clearly indicates the tool produces a structured, audited deliverable synthesizing customer voice, with a concrete reference case showing personas, pain points, and messaging repositioning. This distinguishes it from sibling tools like positioning_strategist or customer_marketing. However, it lacks a direct verb+resource phrasing like 'generates a customer voice synthesis report', relying on the title for the core purpose.

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 contexts through the reference case and target audience (CMO), but does not explicitly state when to use this tool versus alternatives. It says 'send the documented case fields' which hints at expected inputs, but provides no exclusions or comparisons to sibling tools. This is adequate but not explicit.

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

cve_security_lookupA
Read-only
Inspect

Look up CVE vulnerability data for enterprise security teams, DevSecOps and SOC analysts. Supports two modes: exact CVE ID lookup (e.g. 'CVE-2024-3094') or keyword search by product/vendor (e.g. 'openssl', 'Apache Tomcat'). Cross-references four authoritative keyless sources: NVD NIST (official CVE database, CVSS v3 scores, affected CPEs), CISA KEV (Known Exploited Vulnerabilities catalog — exploit_in_wild flag), EPSS FIRST (exploit probability 0-1), GitHub Security Advisories (ecosystem-specific: npm/pypi/maven). Returns structured vulnerability records with CVSS v3 scores, affected product version ranges, CWE weakness classification, references and exploitation status. Signals engine produces P0/P1/P2 alerts: P0=CVSS>=9 + active exploitation, P1=CVSS>=7 or EPSS>=70%, P2=CWE pattern clusters. Relevant for EU NIS2 and DORA supply chain risk obligations. Optional env: NVD_API_KEY (raises NVD rate-limit 5→50 req/30s), GITHUB_TOKEN (raises GHSA GraphQL rate-limit). Cache TTL 6h. SLA <=25s p95.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoOverride auto-detection: "lookup" for exact CVE ID, "search" for product/vendor keyword.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesCVE ID (e.g. "CVE-2024-3094") or product/vendor keyword (e.g. "openssl", "Apache Tomcat"). Mode is auto-detected from the CVE-YYYY-XXXXX pattern.
max_resultsNoMaximum number of vulnerabilities to return (default 20, max 50).
severity_minNoMinimum CVSS v3 severity to include in results (default: no filter).
published_afterNoISO date YYYY-MM-DD — only include CVEs published after this date. Defaults to 365 days ago for search mode.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
queryYes
statusYes
signalsYes
sourcesYes
quality_scoreYes
vulnerabilitiesYes
Behavior5/5

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

Beyond the annotations (readOnlyHint=true, destructiveHint=false), the description provides rich behavioral context: it aggregates data from NVD, CISA KEV, EPSS, and GitHub Security Advisories; generates P0/P1/P2 alerts with specific thresholds; mentions cache TTL (6h), SLA (≤25s p95), and optional environment variables for rate limits. This significantly exceeds what annotations convey and helps the agent predict side effects and performance.

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 dense but logically structured: purpose, modes, data sources, output, alert logic, regulatory relevance, operational details. Every sentence adds value, though the regulatory mention and detailed source enumeration could be trimmed without losing core guidance. It is well-organized and front-loaded with the primary purpose.

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 tool's complexity (two modes, four sources, alert engine, async option, output schema exists), the description covers nearly all operational aspects: how queries are interpreted, what information is returned, alert thresholds, caching, rate limits, and latency. The description is comprehensive enough for an agent to select and invoke it appropriately.

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 each parameter already has a meaningful description (e.g., mode override, async behavior, query format, max_results, severity filter, published_after). The tool description adds context about sources and alerts but does not elaborate on parameter semantics beyond the schema. Thus, the baseline of 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?

The description opens with a clear verb and resource: 'Look up CVE vulnerability data.' It distinguishes itself from siblings by specifying two modes (exact CVE ID lookup and keyword search) and detailing cross-referencing of four authoritative sources. This makes its purpose unambiguous and sets it apart from related tools like vulnerability scanners or patch prioritizers.

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

Usage Guidelines4/5

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

The description identifies target users (enterprise security teams, DevSecOps, SOC analysts) and regulatory contexts (EU NIS2, DORA), implying when it is appropriate. It clearly states the two input modes with examples, which guides usage. However, it does not explicitly contrast with sibling tools or list exclusions, so agents might not know when to choose this over alternatives like vuln_patch_priority_engine.

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

cyber_risk_auditorC
Read-only
Inspect

Auditeur de risque cyber — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: Qonto — Audit cyber risque B2B FinTech · Score 58/100 → roadmap 90j · 8 findings critiques/high · économie prime -28%. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
techStackYes
currentPostureYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, covering safety and world-access expectations. The description adds that inputs are validated server-side and the deliverable includes score, roadmap, findings, and premium savings, offering some output context. However, it does not disclose details about async behavior (despite the async parameter), cost/payment implications, or any potential side effects beyond the read-only claim, leaving moderate gaps.

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

Conciseness3/5

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

The description contains three sentences, but the first sentence includes promotional fluff ('Gapup agent-payable C-suite expertise (RISK)') that does not aid functional understanding. The reference case is somewhat useful for illustrating output, but overall the text is not tightly front-loaded and includes non-essential marketing language.

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

Completeness2/5

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

This is a complex tool with multiple required nested objects and no output schema, yet the description does not fully explain the structure of the deliverable or how to populate the input fields. It mentions a reference case with output metrics, but omits details about async handling, field validation requirements, or output format. Given the lack of an output schema, the description leaves significant gaps for correct invocation.

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

Parameters2/5

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

Schema description coverage is only 20% (only the async parameter has a description), yet the tool description does not compensate. It mentions 'documented case fields' but does not explain the nested objects (company, techStack, currentPosture) or the meaning of their subfields, such as dataTypes or hasSOC2orISO27001. The reference case gives an example but not field-level semantics, leaving the agent to infer parameter meaning from names alone.

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 clearly identifies the tool as a cyber risk auditor ('Auditeur de risque cyber') and states it 'Returns a structured, audited deliverable,' with a reference case showing outputs like a score, roadmap, and findings. However, it uses a noun phrase rather than a direct verb (e.g., 'audits') and does not explicitly distinguish from sibling security audit tools, as the expected function is implied rather than explicitly stated.

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 description provides no guidance on when to use this tool versus alternatives. There is no mention of preferred use cases, exclusions, or relationships to sibling tools like audit_pre_flight or pentest_scope_estimator. The only related statement is 'send the documented case fields,' which is an instruction for input handling, not a usage guideline.

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

deal_coachB
Read-only
Inspect

Coach de deal MEDDIC — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Datadog Enterprise deal Société Générale €1.2M ARR — coaching MEDDIC + escalation plays + 14 next actions. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
dealYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
knownContextYes
buyingCommitteeYes
Behavior3/5

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

Annotations declare readOnlyHint=true, and the description adds that it returns a structured, audited deliverable with coaching and next actions. It doesn't disclose rate limits or error behavior but is consistent with a read-only advisory tool.

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 relatively concise with three sentences, but the reference case adds length. It's still efficient and front-loaded.

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

Completeness2/5

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

For a tool with no output schema and low schema coverage, the description lacks details on output structure, parameter meanings, and usage criteria. The reference case gives some context but doesn't complete the picture.

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

Parameters2/5

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

Schema coverage is only 20% (async parameter has description). The description vaguely refers to 'documented case fields' without explaining what deal, buyingCommittee, or knownContext should contain. It fails to compensate for the sparse 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?

The description clearly identifies the tool as a MEDDIC deal coach providing C-suite expertise (CRO). It uses specific verbs ('coach', 'returns') and describes the deliverable, distinguishing it from analytics tools like meddic_scoring.

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?

No explicit when-to-use or alternative guidance. The description mentions validated inputs but doesn't explain when to choose this over related tools like deal_structurer or meddic_scoring.

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

deal_structurerC
Read-only
Inspect

Structuration de deal — Gapup agent-payable C-suite expertise (CSO). Returns a structured, audited deliverable. Reference case: Agicap × Kyriba — Partenariat API Banking · 5 structures comparées · Term sheet 7 clauses · Score 83/100 JV. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
dealYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, covering the safety profile. The description adds useful context with 'Inputs are validated server-side' and the promise of an 'audited deliverable,' but it does not elaborate on the output structure or any limitations. This adds some value but is not extensive.

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

Conciseness3/5

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

The description is four sentences and includes useful components like the reference case and server-side validation note. However, it contains ambiguous jargon ('Gapup agent-payable C-suite expertise (CSO)') and an example that may not be essential for tool selection. It is moderately concise but not waste-free.

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

Completeness2/5

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

The tool has nested objects and no output schema, so the description should clarify the returned deliverable. It mentions 'structured, audited deliverable' and provides a reference case with structures, term sheet, and score, but it does not detail the output fields or operational conditions. For a complex tool, this is insufficient.

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

Parameters2/5

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

Schema description coverage is only 33% (only 'async' has a description). The description does not explain the meaning of 'company' or 'deal' fields or their nested properties, instead deferring with 'send the documented case fields.' Given the low coverage, the description fails to compensate and leaves parameter semantics largely unexplained.

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 clearly states 'Structuration de deal' and 'Returns a structured, audited deliverable,' indicating the tool's function of structuring deals. While it provides a reference case with specific output elements, it does not explicitly contrast with sibling tools like deal_coach or term_sheet_negotiation, so it lacks sibling differentiation.

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 description offers no guidance on when to use this tool versus alternatives. The only usage hint, 'send the documented case fields,' is about input format rather than selection criteria. No exclusions or contextual conditions are provided, making it difficult for an agent to decide between deal_structurer and similar deal-related tools.

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

dependency_vulnerability_scanA
Read-only
Inspect

SCA (Software Composition Analysis) — scans a project dependency manifest and returns known vulnerabilities for each dependency. Supports: package.json (npm), requirements.txt (Python), go.mod (Go), Cargo.toml (Rust), composer.json (PHP), Gemfile.lock (Ruby), CycloneDX SBOM JSON. PRIMARY source: OSV.dev (keyless, free, covers npm/PyPI/Go/crates.io/Packagist/RubyGems + GHSA advisories federated). CVSS enrichment: NVD NIST (when OSV lacks score). Exploitation flag: CISA KEV (known-exploited-vulnerabilities catalog). Returns per-vuln CVE/GHSA IDs, severity, CVSS score, fixed version, and actionable upgrade recommendations. Relevant for EU NIS2 supply chain risk obligations, DORA, SOC 2 vendor assessments. Cache TTL 6h. Parallel OSV queries (concurrency=10). SLA <=30s p95.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesManifest type: "package_json"=npm, "requirements_txt"=pip, "go_mod"=Go modules, "cargo_toml"=Rust, "composer_json"=PHP, "gem_lock"=Ruby, "sbom_cyclonedx"=CycloneDX SBOM JSON.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
severity_minNoMinimum severity to include in results (default: "medium").
manifest_contentYesRaw text content of the manifest file to scan (e.g. full contents of package.json, requirements.txt, etc.).
include_transitiveNoInclude transitive/indirect dependencies in results (default: true).

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
sourcesYes
summaryYes
ecosystemYes
quality_scoreYes
recommendationsYes
vulnerabilitiesYes
dependencies_parsedYes
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses data sources (OSV.dev, NVD/NIST, CISA KEV), authentication/cost posture (keyless, free), caching behavior (TTL 6h), concurrency, and performance SLA (<=30s p95). This gives the agent a strong understanding of tool behavior and side effects.

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 fairly dense but well-organized, front-loading the core purpose and then adding supported formats, data source details, outputs, compliance context, and performance characteristics. Each section earns its place, though the compliance sentence is somewhat tangential to direct invocation.

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?

The description covers supported inputs, data sources, return contents, caching, concurrency, SLA, and relevant use cases. With an output schema present, the description is fully complete for an agent to select and invoke the tool correctly, including edge considerations like async polling.

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 schema already provides rich descriptions for all five parameters including enums and defaults. The description adds no parameter-specific detail beyond what the schema provides, so the baseline score of 3 is 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 opens with a specific verb and resource: 'scans a project dependency manifest and returns known vulnerabilities for each dependency.' It clearly identifies the tool's SCA role and lists supported manifest formats, distinguishing it from sibling CVE lookup and vulnerability prioritization tools by focusing on dependency manifests.

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

Usage Guidelines4/5

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

The description clearly indicates when to use the tool—when you have a project dependency manifest and need known vulnerabilities—and provides use-case context via compliance frameworks (NIS2, DORA, SOC 2). It does not explicitly mention alternatives or exclusions relative to sibling tools, so it falls one point short of full explicit guidance.

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

discovery_prepC
Read-only
Inspect

Préparation discovery — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Discovery Salesforce × Airbus — VP Digital Marc Legrand · Signaux achat confirmés · +28 pts conversion demo. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
contactYes
ourOfferYes
prospectYes
meetingGoalNo
Behavior3/5

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

Annotations already declare readOnlyHint and openWorldHint, so the description need not repeat those. It does add that the deliverable is structured and audited and that inputs are validated server-side, which is useful but limited; no response format, auth needs, or rate limits are disclosed.

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

Conciseness3/5

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

The description is relatively short but includes marketing-flavored content like 'Gapup agent-payable C-suite expertise (CRO)' and a reference case that do not directly aid tool invocation. It front-loads the nominal purpose and output, but the structure mixes French and jargon without a clear functional breakdown.

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

Completeness2/5

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

With 5 parameters, nested objects, and no output schema, the description fails to specify required input structure, parameter semantics, or deliverable format. It leaves the agent dependent on undocumented 'documented case fields,' which is inadequate for confident, correct invocation.

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

Parameters2/5

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

Schema description coverage is only 20% (only 'async' is described), but the description provides no meaningful parameter-level guidance beyond the vague 'send the documented case fields.' The agent cannot infer how to populate prospect, contact, ourOffer, or meetingGoal from this text.

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

Purpose3/5

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

The description states that the tool prepares a discovery and returns a structured, audited deliverable, but it uses the noun phrase 'Préparation discovery' rather than a clear action verb. The Salesforce × Airbus reference adds color but does not clearly differentiate the tool from sibling sales enablement tools like meddic_scoring or deal_coach.

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?

No explicit when-to-use or when-not-to-use guidance is provided. The reference case and 'send the documented case fields' hint at a discovery context, but the agent is not told when to choose this tool over alternatives or what prerequisites exist.

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

diversity_inclusion_metricsC
Read-only
Inspect

Métriques diversité & inclusion — Gapup agent-payable C-suite expertise (SUSTAINABILITY). Returns a structured, audited deliverable. Reference case: Cas démo — Métriques diversité & inclusion. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
ambitionsYes
currentStateYes
regulatoryContextNo
Behavior3/5

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

The annotations already convey readOnlyHint and openWorldHint. The description adds that inputs are validated server-side and that the output is a structured, audited deliverable, which gives some useful context beyond the annotations. However, it does not disclose other behavioral traits like rate limits or how the open-world information is delimited.

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

Conciseness2/5

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

The description contains fluff such as 'Gapup agent-payable C-suite expertise (SUSTAINABILITY)' and 'Reference case: Cas démo — Métriques diversité & inclusion', which do not help an agent select or invoke the tool. The useful parts (returns structured deliverable, server-side validation) are short but buried among irrelevant text.

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

Completeness1/5

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

With a complex nested input schema, no output schema, and only 17% parameter documentation, the description is severely incomplete. It fails to explain what the deliverable contains, how inputs map to outputs, or how this tool relates to the many similar ESG/diversity tools in the sibling list.

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

Parameters2/5

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

Schema description coverage is only 17% (only 'async' has a description). The description says to 'send the documented case fields' without naming or explaining any of the parameters, thus adding no semantic value over the bare schema.

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

Purpose2/5

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

The description essentially restates the tool name in French ('Métriques diversité & inclusion') and promises a generic 'structured, audited deliverable'. It never specifies what the tool computes or how it differs from sibling tools like hr_benefits_esg_aligner, vendor_esg_diversity_scanner, or action_plan_esg.

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?

There is no guidance on when to use this tool vs alternatives. The 'Reference case' line simply gives a demo case name and does not explain appropriate contexts, prerequisites, or exclusions.

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

domain_tech_fingerprintB
Read-only
Inspect

Empreinte tech d'un domaine — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Answers: What is the tech stack of — frontend, CMS, analytics, CRM, CDN, hosting? · What buying signals does 's technology footprint reveal for sales prospecting? · Analyze for supply-chain technology risk and third-party vendor exposure. · What is the best outreach angle for a sales rep targeting based on their detected stack? · Run a CISO-style technology fingerprint on — identify legacy tech, missing security headers, and vendor risk. · Has recently changed their marketing or analytics stack — any vendor adoption signals? Reference case: velora-payments.io · Next.js + Cloudflare + Stripe + GA4 + HubSpot · . Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
depthYesstandard
focusYestech-buying
target_domainYes
Behavior3/5

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

Annotations already provide readOnlyHint and openWorldHint, lowering the bar. The description adds server-side validation and 'audited deliverable' as behavioral context, but doesn't detail output format, rate limits, or what 'audited' entails. No contradiction with annotations.

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

Conciseness2/5

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

The description is a long, run-on list of questions with a reference case awkwardly appended, including stray punctuation ('· .'). It could be significantly restructured and trimmed without losing meaning, making it poorly organized and moderately verbose.

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

Completeness2/5

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

With no output schema and low parameter coverage, the description must carry more weight, but it doesn't. It covers use cases but omits essential invocation details such as depth levels, focus options, and expected return structure, making it incomplete for a tool with 3 required parameters.

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

Parameters1/5

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

Schema description coverage is only 25% (only async is described). The description fails to explain target_domain, focus, or depth semantics. The vague phrase 'send the documented case fields' and the reference case do not clarify parameter usage at all.

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 clearly states it returns a structured, audited deliverable and answers a list of specific questions about a domain's tech stack, buying signals, and security risks. It distinguishes itself from siblings by covering both sales and security perspectives, though it lacks an explicit verb like 'analyze' and doesn't directly compare to alternative tools.

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

Usage Guidelines4/5

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

The description enumerates six explicit use cases (tech stack identification, buying signals, supply-chain risk, outreach angle, CISO-style fingerprint, vendor adoption) which provide clear context for when to use the tool. However, it doesn't state when not to use it or mention alternative tools.

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

dora_metrics_deep_diveA
Read-onlyIdempotent
Inspect

Analyzes DORA metrics (Deployment Frequency, Mean Time to Recovery, Change Failure Rate) with deep correlation to code review patterns. Designed for CTOs to identify bottlenecks in software delivery pipelines. Inputs include GitHub repository identifiers and optional time ranges. Outputs structured metrics with trend analysis and code review depth insights.

ParametersJSON Schema
NameRequiredDescriptionDefault
repoYesGitHub repository in format 'owner/repo'
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
sinceNoStart date for analysis (ISO 8601)
untilNoEnd date for analysis (ISO 8601)
branchNoBranch name to analyze (default: main)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
metricsNo
sourcesNo
warningsNo
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, lowering the bar for behavioral disclosure. The description adds valuable context about the tool's analytical behavior, such as 'deep correlation to code review patterns' and 'trend analysis,' which are not captured by the annotations. It avoids contradictions and provides insight into what the analysis encompasses.

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 concise, using four tightly written sentences that front-load the core purpose ('Analyzes DORA metrics...') and then provide context (audience, inputs, outputs). No irrelevant information or redundancy.

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 an output schema present and full parameter descriptions, the description covers the essential aspects: purpose, target user, inputs, and outputs. It does not explain asynchronous behavior or branch defaults, but these are captured in the schema. Overall, it is complete for the tool's complexity.

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 the schema already fully documents all parameters. The description mentions 'GitHub repository identifiers and optional time ranges' at a high level, but adds no new semantic detail beyond what the schema provides. Baseline 3 is 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 clearly states the tool's purpose: 'Analyzes DORA metrics (Deployment Frequency, Mean Time to Recovery, Change Failure Rate) with deep correlation to code review patterns.' This specific verb+resource combination distinguishes it from sibling tools like mttr_breakdown_analyzer or code_review_depth_optimizer by highlighting the integration of DORA metrics with code review analysis.

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

Usage Guidelines4/5

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

The description provides clear intended use: 'Designed for CTOs to identify bottlenecks in software delivery pipelines.' This gives context on when to use the tool, though it does not explicitly state when not to use it or mention alternative tools, which would elevate it to a 5.

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

dora_operational_resilience_stress_tesA
Read-onlyIdempotent
Inspect

Assess DORA operational resilience by simulating ICT failure scenarios for financial entities. Designed for legal/compliance teams to evaluate ICT risk management under DORA Article 25. Inputs include failure scenario parameters (e.g., ICT service type, duration, impact radius) and entity profile. Outputs structured resilience scores, regulatory gaps, and mitigation recommendations with EUR-Lex/FTC enforcement references.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
entityTypeYes
impactRadiusYes
ictServiceTypeYes
existingMitigationsNo
failureDurationHoursYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
warningsNo
regulatoryGapsYes
resilienceScoreYes
simulationTimestampNo
recommendedMitigationsYes
Behavior3/5

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

Annotations already cover readOnly, openWorld, and idempotent behaviors, lowering the burden. The description adds that outputs include resilience scores, regulatory gaps, and mitigation recommendations with enforcement references. It does not disclose deeper details like computational cost or simulation methodology, but there is no contradiction with 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 two-sentence description is efficient and front-loaded with the primary action. The second sentence adds target audience and output highlights, though some output details may duplicate the output schema. Overall, it is concise and well-structured.

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 6-parameter tool with an output schema, the description provides a clear purpose, target audience, and input examples. It does not explain every parameter or async behavior, but those are partially covered by the schema. The description is reasonably complete for its complexity.

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

Parameters2/5

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

Schema description coverage is only 17% (only async has a description), so the description must compensate. It lists a few example inputs (ICT service type, duration, impact radius) and entity profile, but omits existingMitigations and does not explain enum values, ranges, or constraints. This is inadequate compensation for the low schema coverage.

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

Purpose5/5

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

The description clearly states the tool assesses DORA operational resilience by simulating ICT failure scenarios for financial entities, specifically under Article 25. This is a specific verb+resource with a distinct scope, and it differentiates from sibling 'dora_metrics_deep_dive' by focusing on stress testing rather than metrics analysis.

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

Usage Guidelines4/5

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

The description identifies the target users (legal/compliance teams) and regulatory context (DORA Article 25), giving a clear when-to-use signal. However, it does not explicitly mention alternatives or when not to use the tool, so it stops short of a full 5.

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

dual_use_export_risk_mapperA
Read-onlyIdempotent
Inspect

As a COO, quickly assess export compliance risks for components in your supply chain. This tool analyzes bills of materials (BOMs) against EU dual-use export control lists and ICAO/IMO restricted items data. Input a list of part numbers, descriptions, or HS codes to receive a risk assessment with actionable insights. Output includes risk levels, applicable regulations, and source references for audit trails.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
bomItemsYes
includeSourcesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
resultsNo
sourcesNo
warningsNo
Behavior4/5

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

Annotations already include readOnlyHint=true, openWorldHint=true, and idempotentHint=true. The description adds value by specifying data sources ('EU dual-use export control lists and ICAO/IMO restricted items data') and output details ('risk levels, applicable regulations, and source references for audit trails'). It does not contradict any annotation.

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 three sentences, front-loaded with the user role and purpose. Each sentence adds essential context: what the tool does, what input to provide, and what output to expect. There is no fluff or repetition of schema fields.

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?

The tool has an output schema, so return values are already specified. The description covers the tool's purpose, input format, and output highlights, which is sufficient for a moderately complex analysis tool. Minor gaps like rate limits or edge cases are not critical given the annotations and 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 only 33%, so the description must compensate. It explains the main input (bomItems) by saying 'Input a list of part numbers, descriptions, or HS codes', which maps to partNumber, description, and hsCode fields. However, it does not mention the 'quantity' field or the 'async' and 'includeSources' parameters, leaving gaps that the schema's sparse descriptions only partially fill.

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

Purpose5/5

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

The description clearly states it 'analyzes bills of materials (BOMs) against EU dual-use export control lists and ICAO/IMO restricted items data' to 'assess export compliance risks.' This is a specific verb+resource combination that distinguishes it from sibling tools like dual_use_tech_diversion_monitor.

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?

Provides clear context: 'As a COO, quickly assess export compliance risks for components in your supply chain.' This indicates the intended user and scenario. It does not explicitly mention when not to use it or alternative tools, but the context is unambiguous enough for selection.

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

dual_use_tech_diversion_monitorA
Read-onlyIdempotent
Inspect

Asynchronous T5-level tool for COO persona to detect unauthorized diversion of dual-use technologies. Cross-references shipment manifests, EU sanctions lists, and ICAO/IMO transport data to identify suspicious transfers. Inputs: shipment IDs, company identifiers, or geographic routes. Outputs structured diversion risk assessment with source provenance. Requires async:true to avoid 402 timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
routeNo
companyIdNoCompany registration number or tax identifier
shipmentIdNoUnique shipment identifier (e.g., bill of lading number)
techCategoryNoDual-use technology category

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
matchesNo
sourcesNo
warningsNo
diversionRiskNoCalculated diversion risk score (0-100)
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint. The description adds valuable behavioral context: asynchronous execution, the async:true requirement to avoid timeouts, and the specific data sources cross-referenced. This goes beyond the structured annotations without contradicting them.

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 sentences, each earning its place: purpose, method/data sources, inputs/outputs, and async requirement. No filler or repetition, and the information is front-loaded.

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 tool's complexity, the description covers all essential aspects: purpose, data sources, input categories, output nature, and the critical async requirement. With an output schema present, return values are already structured, so no further detail is needed.

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

Parameters4/5

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

Schema description coverage is 80%, so baseline is 3. The description reinforces key inputs (shipment IDs, company identifiers, routes) and adds crucial guidance that async:true is required, which goes beyond the schema's optional indicator and adds meaningful usage semantics.

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 states a specific verb+resource: 'detect unauthorized diversion of dual-use technologies' and details cross-referencing of specific data sources (shipment manifests, EU sanctions lists, ICAO/IMO transport data). This clearly distinguishes it from sibling tools like dual_use_export_risk_mapper by focusing on diversion monitoring.

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?

Provides clear context: intended for COO persona monitoring and mandates async:true to avoid 402 timeouts. However, it does not explicitly name alternative tools or exclusion cases, stopping short of full guidance.

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

earnings_reviewerB
Read-only
Inspect

Earnings Reviewer — Gapup agent-payable C-suite expertise (FUNDRAISING). Returns a structured, audited deliverable. Reference case: Salesforce Q3 FY2026 — call transcript + 10-Q + guidance → analyst note. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
quarterYes
analystFocusNo
secFilingContextNo
transcriptExcerptYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds that it returns an audited deliverable and that inputs are validated server-side, but does not detail behavior such as async handling or limitations. This is adequate but not rich.

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, efficient, no redundant text. The first sentence is a bit jargony but acceptable. Reference case is useful.

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

Completeness2/5

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

Tool has nested objects and 6 parameters with no output schema; description is too brief to guide the agent on constructing nested fields or understanding what the deliverable contains. Async parameter and other nuances are left unexplained.

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

Parameters2/5

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

Schema description coverage is only 17% (async alone). The description mentions transcript and 10-Q/guidance as inputs, mapping loosely to transcriptExcerpt and secFilingContext, but does not explain the structure of company or quarter objects, nor analystFocus. It relies heavily on field names, which is insufficient for low coverage.

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 identifies the tool as an Earnings Reviewer that returns a structured, audited deliverable for fundraising, with a reference case showing transcript + 10-Q + guidance → analyst note. The purpose is clear (analyze earnings and produce an analyst note) but it does not explicitly differentiate from sibling tools like earnings_transcript_signals.

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 use for fundraising-focused earnings analysis but provides no explicit when-to-use vs alternatives or exclusions. The reference case gives context but no decision guidance.

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

earnings_transcript_signalsA
Read-only
Inspect

Earnings call transcript signal extractor for equity research analysts, catalyst-driven hedge funds, and BD teams. Parses earnings transcripts (fetched or provided) to surface:

• signals (P0/P1/P2): guidance raise/cut, miss/beat vs consensus, buyback, dividend change, new product, executive change, capex shift, M&A intent, regulatory risk, competitive threat, supply chain, hiring • kpis_mentioned: Revenue, EBITDA, EPS, FCF, Gross Margin, Operating Margin with YoY/QoQ % • guidance: raised / maintained / cut / new_initiated items extracted • q_and_a_topics: top Q&A themes detected (AI strategy, China exposure, M&A pipeline, macro, etc.) • overall_tone: bullish / neutral / bearish

Sources fetched automatically: SEC EDGAR 8-K filings, Yahoo Finance earnings news, Motley Fool transcripts. If no transcript can be retrieved from any source, returns status:'failed' with an explicit warning and empty signals — never fabricated data. Accepts transcript_text override for direct analysis. Supports multilingual transcripts (de/fr/es/zh). European tickers (SAP.DE, BMW.DE) mapped to EDGAR-compatible equivalents automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoLanguage hint for the transcript. Affects mock transcript language when fetch fails.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
quarterNoFiscal quarter in format Q1-2026. Defaults to the most recent past quarter.
transcript_textNoIf provided, skips all external fetches and analyses this text directly. Minimum 100 characters.
company_or_tickerYesCompany name or ticker symbol (e.g. 'Tesla', 'TSLA', 'SAP', 'SAP.DE', 'Sanofi', 'SNY'). European tickers (SAP.DE, BMW.DE) are mapped to their ADR equivalents for EDGAR lookup.
Behavior5/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral details: 'never fabricated data', failure status with warning, automatic source fetch from SEC EDGAR/Yahoo/Motley Fool, multilingual support, and European ticker mapping. This goes well 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.

Conciseness4/5

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

The description is fairly long but uses bullet points to organize the output items and clear paragraphs for sources and behavior. It is front-loaded with the purpose, and each sentence adds new information without redundancy.

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?

The tool is complex (5 params, multiple sources, output structure), and the description covers purpose, outputs, sources, failure handling, override, multilingual support, and ticker mapping. Since there is no output schema, the description adequately explains the return values and failure status.

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 each parameter (lang, async, quarter, transcript_text, company_or_ticker) already has a clear schema description. The description adds minor context (e.g., European ticker mapping, language hint affects mock transcript) but largely relies on the schema, so baseline 3 is 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 clearly states it is an 'earnings call transcript signal extractor' and enumerates the exact outputs (signals, kpis, guidance, q_a_topics, overall_tone). It distinguishes itself from generic financial tools by specifying the parsed items and sources.

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 identifies target users (equity research, hedge funds, BD) and describes when to use the transcript_text override and behavior when no transcript is found. However, it does not explicitly compare with sibling tools like earnings_reviewer, so it provides clear context but no exclusions.

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

economic_indicatorA
Read-only
Inspect

Return a precise macroeconomic indicator for a country — the exact figure for a market-sizing, finance or strategy workflow. Indicators: gdp_usd, gdp_per_capita, gdp_growth, inflation, unemployment, population. Source: World Bank. When to use: an agent's analysis needs an authoritative country-level economic figure. Inputs: country (ISO-2 or ISO-3 code) and indicator name.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
countryYesCountry code, ISO-2 or ISO-3 (e.g. FR, USA)
indicatorYesMacroeconomic indicator name

Output Schema

ParametersJSON Schema
NameRequiredDescription
yearYes
valueYes
sourceYes
countryYes
indicatorYes
source_urlNo
indicator_codeNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, covering safety. The description adds the World Bank source and frames the output as 'precise', but does not disclose data freshness, rate limits, or any behavioral quirks. This is adequate but not rich; baseline 3 with annotations.

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

Conciseness5/5

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

The description is concise and well-structured: purpose, indicator list, source, use case, and inputs are each given in one short sentence. Every sentence carries useful information, with no fluff or repetition.

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 read-only data retrieval tool with an output schema and annotations, the description is sufficient. It covers purpose, indicators, source, and usage trigger. The async behavior is already documented in the schema. Minor gap: no mention of data vintage or update frequency, but not essential.

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% with descriptions for all parameters, so the baseline is 3. The description repeats the indicator list and mentions country code format ('ISO-2 or ISO-3'), which slightly reinforces but does not substantially expand on 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?

The description starts with a specific verb and resource: 'Return a precise macroeconomic indicator for a country'. It explicitly lists the available indicator names, distinguishing it from sibling tools like fx_rate or market_sizing by focusing on country-level macro figures from the World Bank.

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?

Provides clear when-to-use context: 'an agent's analysis needs an authoritative country-level economic figure.' It does not mention when not to use it or explicitly name alternative tools, so it misses the top-tier threshold for exclusion/alternative guidance.

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

email_domain_health_checkA
Read-onlyIdempotent
Inspect

Comprehensive email domain health check: MX routing, SPF authentication, DKIM signing, DMARC policy enforcement, DNSBL blacklist status (Spamhaus/SpamCop/Barracuda), TLS certificate validity, and WHOIS registration age. Aggregates a reputation score 0-100 and generates P0/P1/P2 deliverability signals. Accepts a domain (stripe.com) or email address (info@stripe.com). Detects role-based addresses (info@, support@, admin@, noreply@) that have higher bounce rates. Detects email provider (Google Workspace, Microsoft 365, Amazon SES, etc.). P0 signals: blacklisted / no MX / TLS expired / no SPF + DMARC none. P1 signals: SPF soft-fail / no DKIM selector / DMARC no reporting. P2 signals: role-based address / TLS expires <30d / domain age <90 days. All checks are keyless (no API keys required). Cache TTL 1h. SLA <=10s p95.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
emailNoFull email address for additional checks: format validity, role-based detection (e.g. "ceo@stripe.com").
checksNoSubset of checks to run. Defaults to all 8: ["mx","spf","dkim","dmarc","blacklist","whois","tls","reputation"]. Use a subset for faster responses (e.g. ["mx","spf","dmarc","reputation"] for quick scoring).
domainYesDomain to check (e.g. "stripe.com" or "@stripe.com"). If an email address is provided here, the domain is extracted automatically.

Output Schema

ParametersJSON Schema
NameRequiredDescription
mxYes
spfYes
tlsNo
dkimYes
dmarcYes
whoisNo
domainYes
statusYes
sourcesYes
blacklistYes
email_validNo
quality_scoreYes
reputation_scoreYes
email_is_role_basedNo
deliverability_signalsYes
Behavior5/5

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

Annotations already indicate read-only, non-destructive, idempotent behavior. The description adds valuable transitive details: keyless operation, 1-hour cache TTL, sub-10-second p95 SLA, and the generation of a 0-100 reputation score with P0/P1/P2 signal tiers. These specifics go beyond annotations and help set expectations.

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 dense yet well-organized: it starts with the core purpose, then lists checks, then discusses input flexibility and signal levels, and finally operational constraints. Every sentence carries distinct information, and the length is appropriate for the tool's complexity.

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 tool's complexity and the presence of an output schema (which explains return values), the description is complete: it covers inputs, specific checks, output signals, performance characteristics, and constraints. No crucial usage aspect 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 descriptions cover all parameters (domain, email, checks, async) at 100%. The description augments the 'checks' parameter by explaining the meaning of check types via P0/P1/P2 signal examples, and also clarifies the dual input format (domain or email). This adds value beyond the schema but does not fully explain every nuance (e.g., async semantics are only in 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?

The description clearly identifies the tool as a comprehensive email domain health check, enumerating specific checks (MX, SPF, DKIM, DMARC, DNSBL, TLS, WHOIS) and deliverability signals. This specific verb+resource combination distinguishes it from sibling tools like 'domain_tech_fingerprint' which focus on different aspects.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool: for email deliverability assessment via domain/email input. It mentions keyless operation and SLA, implying readiness for production use. However, it does not explicitly compare to alternative tools or state exclusions, so it falls short of a 5.

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

enps_autoB
Read-only
Inspect

eNPS automatisé — Gapup agent-payable C-suite expertise (CHRO). Returns a structured, audited deliverable. Reference case: BlaBlaCar — eNPS pulse mensuel · 700 FTE 8 pays · segments × tenure × manager · plays correctifs ciblés. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
contextYes
toolStackYes
segmentationYes
presenterScriptNo
Behavior3/5

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

The description adds useful behavioral context: it returns a deliverable, the deliverable is audited, and inputs are validated server-side. Since the readOnlyHint is already provided, the description doesn't need to re-state safety, but it doesn't disclose async behavior, error handling, or pagination, so it only partially passes the transparency 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?

The description is short (three sentences) and front-loaded with the tool's purpose. The reference case is an efficient way to convey expected usage, though the phrase 'Gapup agent-payable C-suite expertise' is jargon that adds little concrete meaning. Overall it is concise but not maximally clear.

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

Completeness2/5

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

Given the tool's complexity (7 parameters, deep nesting, no output schema) and the low schema description coverage, the description is insufficient. It does not describe the shape of the returned deliverable, how to use the async parameter, or what the required nested fields mean. The brief validation note and reference case are not enough to make the tool safely invocable.

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

Parameters2/5

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

Schema description coverage is only 14%, and the description does not compensate. It mentions 'segments × tenure × manager,' which hints at segmentation fields, but it does not explain the structure or meaning of the nested required parameters (company, context, toolStack, segmentation). The instruction to 'send the documented case fields' assumes external documentation that is not present in the schema or description.

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 clearly identifies the domain (eNPS) and states that it returns a structured, audited deliverable, which sets it apart from general HR tools. However, it lacks a strong imperative verb like 'generates' or 'builds' and includes vague phrasing ('Gapup agent-payable C-suite expertise'), preventing a perfect score.

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 reference case (BlaBlaCar, eNPS pulse mensuel, 700 FTE, 8 pays) implies a concrete scenario, giving the agent some context for when to use it. But there is no explicit statement of when to use this tool versus alternatives, no exclusions, and no mention of prerequisites beyond 'documented case fields.'

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

esg_audit_multiA
Read-only
Inspect

Multi-mode ESG intelligence for ESG analysts, sustainability officers and impact investing fund managers. Aggregates live data from CDP, SBTi, Wikipedia, Yahoo Finance and web search across five modes: • company_score — ESG score 0-100 with E/S/G breakdown + heuristic rating (AAA-CCC), from CDP grade + SBTi + sector profile • controversy_check — controversies detected via web search, classified P0/P1/P2 by type (greenwashing, emissions fraud, labour, governance) • emissions — GHG Scope 1/2/3 estimates, SBTi validation flag, net-zero target year, carbon intensity per M€ revenue • esrs_readiness — CSRD gap across 12 standards (E1-E5, S1-S4, G1-G3): readiness % + gap list + CSRD deadline + effort man-days • sfdr_classification — suggested SFDR Article 6/8/9 with rationale and sustainability indicators met

Signals: P0=critical (controversy/score<40), P1=significant (score<55/SBTi missing/ESRS<50%), P2=watch. Cache 24h.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesAnalysis mode.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesCompany name, ticker, ISIN or LEI (e.g. "Microsoft", "Sanofi", "Volkswagen").
pillarNoESG pillar filter (optional, default: all).
frameworkNoESG framework filter (optional, default: all).

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
signalsYes
sourcesYes
emissionsNo
company_scoreNo
controversiesNo
quality_scoreYes
esrs_readinessNo
sfdr_classificationNo
Behavior4/5

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

The description adds valuable behavior beyond annotations: it lists data sources (CDP, SBTi, Wikipedia, Yahoo Finance, web search), mentions caching (24h), and explains signal priority levels (P0/P1/P2). This supplements the read-only and open-world hints without contradiction.

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 structured with bullet points and clear sections, front-loading purpose and audience. While lengthy, it earns its length for a complex five-mode tool; no redundant content.

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 tool with five modes and complex outputs, the description thoroughly covers each mode's deliverables, signal logic, data sources, and caching. The presence of an output schema reduces the need to document return formats, and the description is complete for selection and invocation.

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 enriches the 'mode' parameter by detailing outputs for each mode, and provides examples of valid query inputs, adding meaning beyond the schema's simple 'Analysis mode' description.

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

Purpose5/5

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

The description clearly identifies the tool as a multi-mode ESG intelligence tool with five distinct modes, each with specific outputs and data sources. It distinguishes itself from siblings by its comprehensive scope and audience focus.

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

Usage Guidelines4/5

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

The description provides clear context by listing intended users and enumerating modes, making it obvious when to use the tool. It does not explicitly name alternatives or exclusion criteria, but the context is unambiguous.

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

esrs_narrative_builderC
Read-only
Inspect

Architecte du narratif ESRS / CSRD — Gapup agent-payable C-suite expertise (SUSTAINABILITY). Returns a structured, audited deliverable. Reference case: L'Oréal France — narratif ESRS E1+E5 + S1 + G1 · CSRD reporting 2025-2026 · double-matérialité chiffrée. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
scopeYes
companyYes
contextYes
presenterScriptNo
Behavior3/5

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

Annotations already declare readOnlyHint and openWorldHint, so the bar for behavioral disclosure is lower. The description adds useful context by stating that inputs are validated server-side and that the return is a structured, audited deliverable. However, it does not disclose potential side effects, rate limits, authentication needs, or what 'audited' means in practice, so it adds only modest value beyond annotations.

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

Conciseness3/5

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

The description is short (two sentences) and front-loads the core purpose. However, it includes promotional fluff such as 'Gapup agent-payable C-suite expertise' and a reference case (L'Oréal France) that, while informative, detracts from concise operational guidance. It is not overly long but could be more focused.

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

Completeness1/5

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

This is a complex tool with 6 parameters, nested objects, and no output schema. The description provides no details about the return format, expected input structure, or how the deliverable is composed. Given the low schema coverage and lack of output schema, the description is grossly insufficient for an agent to correctly invoke the tool without external knowledge.

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

Parameters1/5

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

Schema description coverage is only 17% (only async has a description). The tool description does not explain any of the required parameters (company, scope, context) or optional ones (focus, presenterScript). 'Send the documented case fields' is a vague reference to external documentation and provides no semantic meaning for the params. With such low coverage, the description fails to compensate, leaving the agent to infer parameter usage from names alone.

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 clearly identifies the tool as an 'Architecte du narratif ESRS / CSRD' and states it returns a structured, audited deliverable. This provides a specific verb (architect/build) and resource (ESRS/CSRD narrative) within a sustainability context. However, it does not explicitly differentiate from similar sibling tools like sustainability_report or bp_narratif, so it falls short of a 5.

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 description gives no explicit guidance on when to use this tool versus alternatives. It mentions 'agent-payable C-suite expertise' and 'send the documented case fields,' but these are not usage instructions. There is no stated prerequisite, exclusion, or alternative tool reference, leaving the agent without clear decision criteria.

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

event_marketingC
Read-only
Inspect

Marketing événementiel — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Pennylane (€120k/an budget événements) — 7 événements sélectionnés · coût-MQL -38% vs année précédente. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
teamSizeYes
geographyYes
objectivesYes
currentEventsYes
targetAudienceYes
annualBudgetEurYes
Behavior3/5

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

The description adds some behavioral context beyond the readOnlyHint annotation: it promises an 'audited deliverable' and states inputs are 'validated server-side'. However, it omits details like execution time, whether the async parameter is supported, or any cost/rate limits. The readOnlyHint already covers safety, so the modest addition earns an average score.

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 short and front-loaded with the tool's name, but includes brand fluff ('Gapup agent-payable C-suite expertise (CMO)') and a reference case that, while illustrative, is not essential. The validation sentence is useful. Overall, it is reasonably concise with minor non-value-added content.

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

Completeness2/5

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

For a tool with 8 parameters, nested objects, and no output schema, the description provides insufficient context. It does not explain the return value structure, the intended use case, or prerequisite knowledge. The reference case provides a single example but doesn't fill the gaps in parameter semantics or output expectations.

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

Parameters2/5

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

Schema description coverage is only 13% (only 'async' has a description), and the tool description does not compensate. It does not explain what 'company', 'targetAudience', 'objectives', 'currentEvents', etc. mean; the reference case only indirectly hints at 'annualBudgetEur' and 'currentEvents'. The phrase 'documented case fields' is a pointer to external documentation, not a substitute.

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

Purpose3/5

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

The description identifies the domain (event marketing) and states it 'Returns a structured, audited deliverable', but the exact nature of the deliverable (e.g., event selection plan, budget allocation, optimization) is not explicit. It distinguishes from general marketing tools only by the 'Marketing événementiel' label, not by a clear verb+resource. The reference case hints at output, but purpose remains vague.

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?

No guidance is provided on when to use this tool vs the many sibling marketing tools (e.g., marketing_roi_dashboard, customer_marketing). The only usage hint is 'send the documented case fields', which is a validation note, not a when-to-use directive. No alternatives or exclusions are mentioned.

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

executive_comp_peer_benchmarkA
Read-onlyIdempotent
Inspect

As a Chief Human Resources Officer (CHRO), benchmark executive compensation packages against peer companies using public SEC filings and private compensation data from Equilar and Bloomberg. Inputs include executive name, title, company ticker, and peer group criteria. Outputs structured compensation metrics (base salary, bonus, equity, total compensation) with source attribution and confidence scores.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
peerGroupNo
fiscalYearNo
companyTickerYes
executiveNameYes
executiveTitleYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
compensationNo
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, covering the safety profile. The description adds that outputs include source attribution and confidence scores, but does not disclose any other behavioral traits (e.g., data freshness, latency, or error conditions). This is adequate but not rich.

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, front-loaded with the core purpose, and includes all necessary elements (inputs, outputs, sources) without waste. Every sentence earns its place.

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 tool's complexity (6 params, nested peerGroup object), the description covers purpose, inputs, outputs, and sources. The output schema exists and handles return details. It does not explain the nested peerGroup subfields, but the overall context is sufficiently complete for a read-only benchmarking tool.

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?

Only 17% of parameters have schema descriptions, so the description must compensate. It names executiveName, executiveTitle, companyTicker, and peerGroup, but omits fiscalYear and async. The description adds meaning for key inputs but leaves gaps, so it is only partly helpful.

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

Purpose5/5

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

The description clearly states the action ('benchmark executive compensation packages against peer companies') and specifies the resource (peer companies) plus data sources (SEC filings, Equilar, Bloomberg). It distinguishes itself from similar tools like comp_benchmark_geo_delta by focusing on peer benchmarking with specific data sources.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool (for a CHRO benchmarking executive compensation against peers) and lists required inputs. It does not explicitly mention exclusions or alternative tools, so it stops short of a 5.

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

financial_model_3statementA
Read-only
Inspect

Pure-compute 3-statement financial model builder (Income Statement + Balance Sheet + Cash Flow). Feed assumptions (revenue growth, COGS%, OpEx, CapEx, working capital, tax rate, depreciation, debt schedule) → receive a full 3-5 year projection with integrated DCF valuation. Supports IFRS / US_GAAP / PRC_GAAP (中国会计准则) norms with bilingual ZH+EN labels for PRC. Modes: build (full 3-statement model) | scenario_analysis (base/bull/bear ±20% growth) | sensitivity (1 KPI × 1 input, 5-point grid). No external data needed — all computed from assumptions. ICP: VC due diligence, M&A analysts, CFO SMB, startup founders pitching investors, biotech/SaaS modeling. Returns balance_check_ok per year, DCF enterprise/equity value, and coherence warnings.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesbuild = full 3-statement model | scenario_analysis = base/bull/bear | sensitivity = 1 KPI × 1 input
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
assumptionsYesFinancial assumptions for the model
sensitivity_kpiNoKPI to observe in sensitivity mode.
sensitivity_inputNoAssumption param to vary in sensitivity mode. E.g. 'growth_rates_pct[0]' or 'cogs_pct_of_revenue'.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
normsYes
statusYes
sourcesNo
warningsYes
cash_flowNo
scenariosNo
sensitivityNo
balance_sheetNo
quality_scoreYes
valuation_dcfNo
income_statementNo
Behavior4/5

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

Annotations already mark readOnly and no-open-world; description reinforces with 'Pure-compute' and 'No external data needed,' and adds output specifics such as balance_check_ok, DCF enterprise/equity value, and coherence warnings.

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

Conciseness3/5

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

Information-dense and front-loaded with the core function, but includes redundancy with schema (modes, norms) and a somewhat verbose ICP list that could be trimmed.

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 complex tool with nested assumptions and an output schema, the description provides sufficient selection context: modes, accounting norms, no-external-data behavior, and output summary. Minor omission like async behavior is covered by 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 coverage is 100%, so baseline is 3. Description recaps assumption categories like revenue growth and COGS% but adds no new parameter detail; '3-5 year projection' even slightly conflicts with the schema's 1-10 range.

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?

Clearly identifies the tool as a '3-statement financial model builder' with Income Statement + Balance Sheet + Cash Flow, and distinguishes it from siblings by its full-model scope and DCF outputs.

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?

States intended users (VC due diligence, M&A analysts, CFO SMB) and key constraint 'No external data needed,' making the use case clear, but does not explicitly name sibling alternatives or exclusion scenarios.

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

fraud_detectorC
Read-only
Inspect

Détecteur de fraude — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: TechManu SAS — Industriel FR €32M CA, 148 FTE · 30j · 21 anomalies · €487k à risque. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
analysisPeriodDaysYes
transactionVolumesYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds that the output is 'a structured, audited deliverable' and that inputs are 'validated server-side'. The reference case gives a concrete example of output metrics (21 anomalies, €487k at risk), providing some behavioral context 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.

Conciseness3/5

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

The description is short but padded with cryptic branding ('Gapup agent-payable C-suite expertise (RISK)') that adds no informational value. The reference case provides some concreteness but is not enough to justify the wasted words. Front-loading the name rather than the action makes it less effective.

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

Completeness2/5

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

With a complex input schema (nested objects, 5 parameters) and no output schema, the description should explain what the deliverable contains, how results are scored, and what anomalies mean. The reference case hints at outputs (anomalies, risk amount) but does not define the deliverable structure or interpretation. No mention of async behavior or error handling.

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

Parameters2/5

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

Schema description coverage is only 20%, with only the 'async' parameter described. The tool description does not explain the meaning of 'company', 'analysisPeriodDays', 'transactionVolumes', or 'focus'. The phrase 'send the documented case fields' references documentation that isn't provided, failing to compensate for the low schema coverage.

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

Purpose3/5

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

The description opens with 'Détecteur de fraude' which essentially restates the tool name, then adds vague branding ('Gapup agent-payable C-suite expertise (RISK)'). It mentions a deliverable and a reference case, but does not clearly state what fraud detection action is performed or on what data. This makes it distinguishable from siblings only by name, not by a precise purpose.

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?

No guidance is provided on when to use this tool versus the many sibling fraud and risk tools. Phrases like 'send the documented case fields' concern input submission, not usage context. There is no mention of scenarios, prerequisites, or alternatives.

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

ftg_business_ideasA
Read-only
Inspect

Return vetted, automation-scored business ideas from the FTG idea bank — each with an autonomy score, monetization model and conservative/median/optimistic MRR projections. When to use this tool: an agent or founder wants ranked, buildable business ideas. Input: optional category and limit.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNo
categoryNoOptional category filter

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
ideasYes
Behavior4/5

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

Annotations declare readOnlyHint=true and openWorldHint=true, so the safety profile is already clear. The description adds useful behavioral context by detailing the output structure (autonomy score, monetization model, MRR projections) and conveys a read-only, retrieval operation. It does not contradict annotations.

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

Conciseness5/5

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

The description is two concise, well-structured sentences. It front-loads the core purpose, then provides usage context and input hints, with no filler or redundant 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?

For a simple list retrieval tool with 0 required parameters and an output schema (not shown), the description adequately covers purpose, usage, input, and expected output. It misses only minor aspects like async behavior, which is already documented in the schema, so the description is reasonably complete.

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

Parameters2/5

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

Schema description coverage is 67% (async and category are described, but limit lacks a description). The description only says 'optional category and limit', which merely names the parameters without adding explanatory meaning. It does not clarify limit's behavior or any additional parameter constraints beyond schema basics.

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

Purpose5/5

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

The description clearly states the tool 'Return vetted, automation-scored business ideas from the FTG idea bank', specifying the exact resource and purpose. It distinguishes itself from siblings like ftg_market_gap and ftg_opportunity_scout by emphasizing ranked, buildable ideas with specific scoring.

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?

Provides explicit context: 'When to use this tool: an agent or founder wants ranked, buildable business ideas.' This clearly indicates the intended scenario, though it lacks explicit exclusions or alternative tool references.

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

ftg_business_planA
Read-only
Inspect

Return the business plan for a market-gap opportunity — direct-trade or local-production, with CAPEX, OPEX, ROI, payback period, automation level and the full plan. Cache-first: returns the stored plan when available, otherwise reports that generation is required (the FTG platform produces plans on demand). When to use this tool: an agent has an opportunity_id (from ftg_market_gap) and needs the investable plan. Input: an opportunity_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
opportunity_idYesOpportunity id obtained from ftg_market_gap

Output Schema

ParametersJSON Schema
NameRequiredDescription
plansNo
statusYes
messageNo
plan_countNo
opportunity_idYes
Behavior4/5

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

Annotations declare readOnlyHint=true, which already communicates a safe read operation. The description adds valuable context beyond this by explaining the cache-first behavior: returns stored plan when available, otherwise reports that generation is required. This explains the possible non-immediate result and the on-demand generation aspect, which annotations do not cover.

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 concise and well-structured: first sentence states the purpose and deliverables, second explains the cache-first behavior, third gives usage guidance and input. Every sentence adds necessary context, with no filler or redundancy.

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 an output schema exists and annotations cover safety, the description covers the essential behavioral nuance (cache-first and generation requirement), input source, and use case. It is complete for an agent to decide when to invoke and what to expect, without needing to explain return values (already in 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%: opportunity_id is described as 'Opportunity id obtained from ftg_market_gap' and async is fully explained. The description repeats 'Input: an opportunity_id' but adds no extra semantic beyond the schema. Thus the baseline of 3 is 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 clearly identifies the tool as returning a business plan for a market-gap opportunity, listing specific components (CAPEX, OPEX, ROI, payback period, automation level). It explicitly references ftg_market_gap as the source for opportunity_id, distinguishing it from sibling tools like ftg_market_gap or ftg_business_ideas.

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

Usage Guidelines4/5

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

The description provides explicit when-to-use guidance: 'When to use this tool: an agent has an opportunity_id (from ftg_market_gap) and needs the investable plan.' It explains cache-first behavior and the fallback to reporting generation is required. However, it does not explicitly mention when not to use it or name alternative tools, so it falls short of a 5.

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

ftg_country_regulationsA
Read-only
Inspect

Return import, trade and production regulations for a country — category, title, summary and source. When to use this tool: an agent checks regulatory or compliance requirements before trading or producing in a market. Input: a country, with an optional category.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNo
countryYesCountry ISO code or name
categoryNoOptional regulation category filter

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
regulationsYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description does not contradict this. The description adds the domain scope (import/trade/production) and mentions output fields, but does not disclose additional behavioral traits such as rate limits, data freshness, or async behavior beyond what annotations cover.

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 sentences, each serving a purpose: what it returns, when to use it, and what input is needed. No redundant or filler content.

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 output schema present and read-only/open-world annotations, the description sufficiently covers purpose, usage context, and core input. It does not elaborate on limit/async parameters, but these are defined in the schema, so the overall tool guidance is complete enough for selection and basic invocation.

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 75%, with country and category already documented. The description reinforces that country is required and category is optional but does not clarify the limit or async parameters. This adds marginal value beyond the schema, so baseline 3 is 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 a specific verb 'Return' and clearly identifies the resource: import, trade, and production regulations for a country, including output components. This distinguishes it from sibling tools like ftg_country_study or ftg_market_gap by focusing on regulatory/compliance 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?

The description explicitly states when to use the tool ('when an agent checks regulatory or compliance requirements before trading or producing in a market'). It does not mention when not to use it or name alternative tools, so it falls short of a 5 but provides clear contextual guidance.

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

ftg_country_studyA
Read-only
Inspect

Return the in-depth FTG country study — multi-part structured analysis of a country's trade and production landscape. When to use this tool: an agent needs deep country context before a sourcing, export or investment decision. Input: a country.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
countryYesCountry ISO code or name

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
partsYes
countryYes
part_countYes
Behavior3/5

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

With annotations already indicating readOnlyHint=true and openWorldHint=true, the description adds minimal additional behavioral context. The phrase 'multi-part structured analysis' implies a detailed output but does not disclose specifics like response size, latency, or partial results. It does not contradict the annotations, but the added value is limited.

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, front-loaded with the core purpose and followed by the usage context. Every phrase earns its place, with no redundancy or fluff, making it highly scannable and efficient for an agent.

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?

The tool has an output schema and annotations that handle return values and safety, so the description doesn't need to explain those. It covers the essential purpose, scope, and usage context. However, it does not detail the structure of the 'multi-part analysis' or address the async parameter, though these are sufficiently documented in the 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%, with both 'country' and 'async' parameters already described in the input schema. The description's 'Input: a country' merely repeats what the schema states, adding no new semantic meaning. This aligns with the baseline score of 3 when the schema carries the full 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?

The description clearly states the tool's function: 'Return the in-depth FTG country study — multi-part structured analysis of a country's trade and production landscape.' This is a specific verb+resource (return a study) with a clear subject (country trade and production), distinguishing it from sibling FTG tools like ftg_country_regulations or ftg_production_economics, which focus on narrower aspects.

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

Usage Guidelines4/5

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

The description provides explicit guidance on when to use the tool: 'an agent needs deep country context before a sourcing, export or investment decision.' This gives clear context for invocation, though it does not explicitly state alternatives or when not to use it, keeping it from a perfect score.

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

ftg_investor_directoryA
Read-only
Inspect

Return investors from the FTG directory — VC, PE and impact funds with type, firm, website, ticket-size range, sectors and stages of interest. When to use this tool: an agent builds a fundraising shortlist. Input: optional country and limit.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNo
countryNoOptional country ISO code or name

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
investorsYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the description does not need to restate those. It adds context about the types of funds and data fields, but it does not disclose additional behavioral traits such as pagination, data freshness, or response limits beyond the schema. Since the annotations cover the safety profile, the description's added value is limited but acceptable.

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 three short sentences with the main purpose front-loaded. The 'Input' sentence is somewhat redundant with the schema but adds minimal overhead. Overall it is efficient and well-structured, without fluff.

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 that the tool has an output schema and annotations for read-only and open-world behavior, the description adequately covers the core use case and data fields. It is complete for a simple directory lookup, though it could have mentioned how `async` interacts with the tool, but that is already explained in the 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?

The description mentions 'optional country and limit' but adds little beyond the input schema. The schema already documents `async` fully and provides a description for `country`; `limit` has min/max constraints. With schema coverage at 67%, the description does not compensate for the missing `limit` semantics or clarify any parameter beyond what the schema provides.

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

Purpose5/5

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

The description clearly states the tool 'Return investors from the FTG directory' and enumerates the specific data fields (type, firm, website, ticket-size range, sectors, stages), making the function concrete and distinct from generic investor tools. The reference to 'FTG directory' and the listing of VC, PE, and impact funds provides a specific resource and scope.

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

Usage Guidelines4/5

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

The description explicitly states when to use the tool: 'an agent builds a fundraising shortlist.' This gives a clear contextual trigger. However, it does not mention when not to use it or name alternative sibling tools like investor_list or investor_shortlist, so it lacks explicit exclusions.

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

ftg_market_gapA
Read-only
Inspect

Return the import/production market-gap opportunities for a country — commodities where local demand outpaces local supply. Each opportunity carries the gap value (USD/year), the gap volume (tonnes/year), a 0-100 opportunity score and the potential margin. When to use this tool: an agent needs to know what a country structurally under-produces or over-imports, for trade sourcing, import/export or local-production investment decisions. Input: a country (ISO-2 code or name).

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNoMaximum opportunities to return (default 20)
countryYesCountry ISO-2 code (e.g. 'SN', 'KE') or name (e.g. 'Senegal')

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
countryYes
opportunitiesYes
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the read-only nature is covered. The description adds useful behavioral context by specifying that each opportunity carries gap value, volume, opportunity score, and margin, and by noting the tool identifies structural under-production or over-imports. This goes beyond annotations without contradicting them.

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 concise: three short sentences covering action, output details, and use case. It is front-loaded with the main purpose, and every sentence adds value without repetition or fluff.

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 output schema exists and annotations cover safety, the description adequately explains what the tool does, what it returns, and when to use it. It could mention data freshness or limitations, but for a read-only market-gap search tool, the level of detail is sufficient. It is slightly below a 5 because it does not describe the meaning of the opportunity score or potential margin, though these may be in the 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 the baseline is 3. The description only restates the country input ('a country (ISO-2 code or name)') which is already in the schema. It does not add extra meaning for limit or async parameters beyond their schema descriptions.

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 a specific verb+resource: 'Return the import/production market-gap opportunities for a country,' clearly stating what it does. It also distinguishes itself from sibling tools like ftg_business_ideas and ftg_opportunity_scout by focusing on market gaps (commodities where local demand outpaces local supply) rather than broad opportunities.

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

Usage Guidelines4/5

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

The description provides an explicit 'When to use this tool' section: 'an agent needs to know what a country structurally under-produces or over-imports, for trade sourcing, import/export or local-production investment decisions.' This gives clear context for usage, though it does not name alternative tools or exclusions, matching the 4-level criterion.

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

ftg_opportunity_scoutA
Read-only
Inspect

Rank the best countries for a given commodity — where the market gap, opportunity score and potential margin are highest. Cross-country scouting. When to use this tool: an agent has a commodity and needs to know WHERE to sell, export to or set up local production. Input: a commodity name.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNoMaximum countries to return (default 20)
commodityYesCommodity name (e.g. 'rice', 'soybean', 'poultry')

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
countYes
commodityYes
countriesYes
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, and the description adds meaningful behavioral context by specifying the ranking criteria (market gap, opportunity score, potential margin) and cross-country scope. It does not contradict annotations and provides insight beyond what structured fields alone convey.

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 concise: two sentences front-load the core purpose and usage context. Every sentence earns its place without redundancy, making it easy to parse quickly.

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 tool has a full output schema and complete parameter descriptions, the description provides sufficient context: purpose, ranking criteria, and when to use. It could add an example output or note on async behavior, but those are already covered by the schema, so overall it is complete for selection and invocation.

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% for all parameters, so the baseline is 3. The description only restates the commodity input ('Input: a commodity name') and adds no extra semantics for async or limit. Since the schema fully documents parameters, no additional meaning is required, but the description adds marginal value.

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 states a specific action ('Rank the best countries') with a clear resource ('for a given commodity') and ranking criteria (market gap, opportunity score, potential margin). It distinguishes itself from siblings by emphasizing 'Cross-country scouting' and the decision context (where to sell, export, or produce), which is unique among the FTG tools.

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 explicitly provides a when-to-use trigger: 'an agent has a commodity and needs to know WHERE to sell, export to or set up local production.' It does not mention alternatives or when not to use it, but the context is clear enough for selection.

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

ftg_production_economicsA
Read-only
Inspect

Return production cost benchmarks (CAPEX/OPEX per unit, value ranges, scenarios, quality tiers) and agronomic yields (t/ha, cycles per year) for a commodity. When to use this tool: an agent sizes the economics of producing a commodity. Input: a commodity, with an optional country.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNo
countryNoOptional country ISO code or name
commodityYesCommodity name or slug

Output Schema

ParametersJSON Schema
NameRequiredDescription
yieldsYes
commodityYes
cost_benchmarksYes
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, covering safety. Description adds that results are benchmarks with 'value ranges, scenarios, quality tiers', indicating estimates rather than exact figures. No contradiction with 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 concise sentences, front-loaded with the main function, then usage context, then input. No redundant or generic 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?

Output schema exists, so return values don't need description. Annotations cover safety. Description adequately covers purpose, when to use, and input. Could mention pagination/async behavior but these are standard tool parameters not disruptive to usage.

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 75% with descriptions for commodity and country. Description reiterates 'Input: a commodity, with an optional country' but adds no new meaning beyond schema. Limit and async are not explained in description, though their schema min/max and async description provide some guidance.

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?

Specific verb+resource+scope: 'Return production cost benchmarks ... and agronomic yields ... for a commodity.' Clearly distinguishes from sibling tools like ftg_production_methods (methods vs economics) and ftg_opportunity_scout.

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 states when to use: 'an agent sizes the economics of producing a commodity.' Provides clear context but does not name alternatives or exclusions. Sufficient for an agent to select this tool over siblings.

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

ftg_production_methodsA
Read-only
Inspect

Return the production methods for a commodity — each with a description, ordered process steps, pros/cons and a popularity rank. Methods are commodity-canonical: one curated set per commodity, reusable across every country. When to use this tool: an agent evaluates HOW a commodity is produced or processed, compares techniques, or builds a production plan. Input: a commodity slug or name.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
commodityYesCommodity slug or name (e.g. 'rice', 'tomato', 'cashew')

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
methodsYes
commodityYes
method_countYes
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds valuable context by explaining that methods are canonical and reused across countries, and it details the return structure (ordered steps, pros/cons, rank). This goes beyond the annotations without contradicting them.

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 concise and well-structured: the first sentence states the core function and output, the second explains a key behavioral trait (canonical), and the third gives explicit usage guidance. Every sentence earns its place with no 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?

Given the presence of an output schema (not shown), the description does not need to detail return values. It covers purpose, usage, and the canonical nature. It doesn't address edge cases like invalid commodity names, but for a read-only lookup with simple inputs, this is 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%, so the description adds little beyond what the schema already provides. The phrase 'commodity slug or name' repeats the schema's description. No additional semantics like examples or constraints beyond the schema are given, 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.

Purpose5/5

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

The description clearly states the tool's function: 'Return the production methods for a commodity' with specific output components (description, process steps, pros/cons, popularity rank). It distinguishes from siblings by emphasizing 'commodity-canonical: one curated set per commodity, reusable across every country,' which separates it from country-specific or other ftg tools.

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 provides an explicit 'When to use this tool' section: 'an agent evaluates HOW a commodity is produced or processed, compares techniques, or builds a production plan.' However, it does not mention when not to use or name alternative tools, so it falls short of a 5.

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

ftg_seller_catalogA
Read-only
Inspect

Return seller catalogues registered on FTG — exporters and producers with their commodity, monthly capacity, certifications and target export markets. When to use this tool: an agent builds a supplier or sourcing shortlist. Input: optional seller country and commodity.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNo
countryNoOptional seller country ISO code or name
commodityNoOptional commodity filter

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
sellersYes
Behavior4/5

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

Annotations include readOnlyHint=true, and the description aligns with this, describing a read operation. It adds behavioral context by listing the kind of information returned (monthly capacity, certifications, target markets). It does not discuss async behavior or pagination, but the async param is described in the schema and an output schema exists.

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 and an input clause—all information is front-loaded and every part earns its place. It succinctly states purpose, content, use case, and inputs without redundancy.

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 tool's simplicity (read-only catalog with optional filters, output schema present, annotations provided), the description is mostly complete. It covers what, when, and input. It does not mention the async option or limit, but those are fully specified in the schema, so the description is 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 75% (async, country, commodity have descriptions; limit does not). The description highlights 'optional seller country and commodity' which aligns with schema descriptions, but adds no extra meaning for limit or async. With high schema coverage, a baseline of 3 is 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 clearly states the tool returns seller catalogues with specific content (commodity, capacity, certifications, markets), using a specific verb 'Return'. It also provides the use case ('builds a supplier or sourcing shortlist'), which distinguishes it from siblings like ftg_sourcing_buyers.

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 states when to use the tool: 'an agent builds a supplier or sourcing shortlist.' It does not explicitly mention when not to use it or reference alternatives, but the context is clear and actionable.

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

ftg_sourcing_buyersA
Read-only
Inspect

Return verified local buyers in a country — companies sourcing a given commodity, with buyer type, city, website, annual volume range and certification requirements. When to use this tool: an agent builds a sourcing or export shortlist, or needs real B2B demand contacts in a market. Input: a country and an optional commodity filter.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNoMaximum buyers to return (default 20)
countryYesCountry ISO-2 code or name
commodityNoOptional commodity slug to filter buyers by

Output Schema

ParametersJSON Schema
NameRequiredDescription
buyersYes
countryYes
commodityNo
buyer_countYes
Behavior4/5

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

Annotations already mark readOnlyHint=true and openWorldHint=true, and the description adds context about verified buyers and the nature of the output (companies sourcing a commodity). It does not contradict annotations and explains the data quality aspect, though it doesn't discuss rate limits or pagination.

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 sentences: what it does, when to use it, and input. Every sentence earns its place; front-loaded with the core purpose.

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 lookup tool with an output schema and annotations, the description covers purpose, usage, and input sufficiently. It lacks details on verification methodology or error handling, but the output schema likely covers return structure.

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 covers 100% of parameters with descriptions, and the description's 'Input: a country and an optional commodity filter' adds no new information beyond schema. The extra parameters (limit, async) are already described in schema, so baseline score of 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?

The description clearly identifies the tool as returning verified local buyers in a country for a given commodity, listing specific output fields (buyer type, city, website, etc.). This distinguishes it from sibling tools like ftg_seller_catalog (sellers) through the focus on buyers and sourcing demand.

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 states when to use: 'an agent builds a sourcing or export shortlist, or needs real B2B demand contacts in a market.' This provides clear use-case context, though it doesn't mention exclusions or alternative tools by name.

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

funding_hunterC
Read-only
Inspect

Chasseur de financements — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Reference case: PME deeptech cleantech FR €8M CA — top 30 dispositifs BPI+France2030+EU+VC. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
projectYes
financialsYes
preferencesYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds that the tool returns a structured, audited deliverable and that inputs are validated server-side, but it doesn't disclose output format, pricing implications of 'agent-payable', or any potential external side effects.

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 concise (two sentences) and includes a relevant reference case to ground the tool's value. However, the use of French may reduce accessibility for non-French-speaking agents, and the dash-separated structure is slightly informal.

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

Completeness2/5

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

There is no output schema, and the description's claim of a 'structured, audited deliverable' is vague. It doesn't specify how results are returned (e.g., via async job_result), what fields the deliverable contains, or how the reference case's 'top 30 dispositifs' applies to the expected output. For a complex nested-parameter tool, this is insufficient.

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

Parameters2/5

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

Schema description coverage is only 20% (async has a description), yet the description doesn't compensate by explaining the meaning of company, financials, project, or preferences. It merely says 'send the documented case fields' without defining what those fields should represent or how they map to 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 clearly identifies the tool as a funding hunter providing CFO-level expertise, returning a structured audited deliverable. The reference case adds specificity about the target scenario, but it doesn't explicitly distinguish from similar tools like investor_shortlist or capital_strategy.

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 description provides no guidance on when to use this tool versus alternatives. It only mentions 'Inputs are validated server-side' which is an operational detail, not usage context. No exclusions or alternative tool recommendations are given.

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

fx_rateA
Read-only
Inspect

Get the current or historical foreign-exchange rate for any currency pair — the exact exchange rate, FX rate or conversion rate an agent needs to convert a currency amount or feed a finance, trading, invoicing or pricing workflow. Covers EUR/USD, USD/JPY, GBP/EUR and every ISO-4217 currency pair. Returns the latest spot rate, or a historical rate by date. Use when a workflow needs a precise live or past currency exchange rate, or to convert money between two currencies. Source: European Central Bank reference rates via Frankfurter. Inputs: from/to ISO-4217 currency codes, optional date (YYYY-MM-DD).

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesQuote currency, ISO-4217 (e.g. USD)
dateNoOptional YYYY-MM-DD for a historical rate
fromYesBase currency, ISO-4217 (e.g. EUR)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.

Output Schema

ParametersJSON Schema
NameRequiredDescription
toYes
fromYes
rateYes
as_ofYes
sourceYes
source_urlNo
Behavior4/5

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

Annotations already flag readOnlyHint=true and openWorldHint=true. The description adds meaningful behavioral context: the data source (European Central Bank via Frankfurter), return behavior (latest spot or historical), and coverage ('every ISO-4217 currency pair'). It doesn't mention limitations like non-trading days, but the added context is valuable beyond annotations.

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

Conciseness5/5

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

The description is a single well-organized paragraph where each phrase earns its place: purpose, examples, coverage, return type, usage trigger, data source, and inputs. It front-loads the verb and avoids filler, making it easily scannable.

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 tool's simplicity, an output schema is present (so return values need no explanation), and schema covers all parameters. The description competently addresses scope, source, use cases, and input format. It does not explicitly mention asynchronous execution, but that is in the schema, so no gap exists.

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% with descriptions for from/to/date/async already provided. The description only restates the input codes and the date format (YYYY-MM-DD), which are already in the schema. It adds no new semantic detail beyond what's structured, so 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?

The description opens with 'Get the current or historical foreign-exchange rate for any currency pair', a specific verb+resource combination that clearly identifies the tool's function. It distinguishes itself from siblings like interest_rate or historical_price_series by explicitly mentioning 'FX rate' and 'ISO-4217 currency pair'.

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 provides explicit usage guidance: 'Use when a workflow needs a precise live or past currency exchange rate, or to convert money between two currencies.' While it doesn't name alternatives, the domain is self-evident and the conditions are clear.

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

geographic_expansionC
Read-only
Inspect

Expansion géographique — Gapup agent-payable C-suite expertise (CSO). Returns a structured, audited deliverable. Reference case: Gapup Hub — Expansion 4 marchés (DE/UK/ES/NL) · €1.8M budget · ARR cible €3.2M Y2. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
productYes
financialsNo
constraintsNo
targetMarketsYes
preferredEntryModeNo
expansionHorizonMonthsNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description does not contradict them. It adds useful context that inputs are validated server-side and that the deliverable is 'audited,' which suggests a quality-checked output. However, it does not explain the return format, potential delays, or any rate limits, leaving room for more transparency.

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

Conciseness2/5

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

The description is short but not well structured or front-loaded. It opens with the French title, then includes the branding 'Gapup agent-payable C-suite expertise (CSO)' which adds no operational value. The reference case is a single concrete example but is presented without a clear connection to the tool's purpose, making the text feel more like marketing than a useful specification.

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

Completeness2/5

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

This is a complex tool with 8 parameters, nested objects, and no output schema, yet the description does not explain what the deliverable contains, how to interpret the return value, or when to use it. The reference case hints at inputs but not at the structure of the output. The description is too thin to allow an agent to invoke the tool correctly without guessing.

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

Parameters1/5

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

With schema description coverage at only 13% (only the async parameter has a description), the description needed to explain or enumerate the documented case fields but does not. 'Send the documented case fields' is circular and unhelpful. The reference case mentions markets, budget, and ARR but does not map them to parameters, so an agent receives no parameter meaning from the description.

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

Purpose3/5

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

The description conveys that this tool relates to geographic expansion and returns a 'structured, audited deliverable,' so it is more than a tautology. However, it lacks a specific action verb (e.g., plan, evaluate, recommend) and does not distinguish itself from siblings like market_entry_strategist or growth_path_architect. The reference case adds context but does not clarify the tool's core function.

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?

There is no explicit guidance on when to use this tool or when to prefer an alternative. The mention of 'agent-payable C-suite expertise' hints at a target audience, but it does not state prerequisites, exclusions, or comparisons to sibling tools. The instruction 'send the documented case fields' is about input handling, not usage context.

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

geo_logistics_intelA
Read-only
Inspect

Geospatial logistics intelligence for supply chain, maritime and transport agents. Four modes: (1) geocode_batch — resolve up to 50 addresses to lat/lon with confidence scores (OSM Nominatim + Open-Meteo fallback, 1 req/s rate-limit respected); (2) routing — road/cycling/walking route with distance_km, duration_seconds and ETA ISO timestamp between two addresses or lat/lon points (OSRM public, keyless, global); (3) port_congestion — congestion status for any UN/LOCODE port (e.g. NLRTM, SGSIN, CNSHA) with waiting vessel count, severity (low/medium/high/extreme) and average wait hours; (4) ship_tracking — AIS position, speed, course, destination and ETA for a vessel by its 9-digit MMSI. No API key required for geocode/routing/port. Optional env: AIS_STREAM_API_KEY for live ship data (otherwise MarineTraffic scrape best-effort). SLA: <=25s p95. Cache: 24h geocoding / 1h routing / 30min port / 5min ship. Quality score 0-100. Status: final/partial/failed.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNorouting only: destination address or 'lat,lon'
fromNorouting only: origin address or 'lat,lon'
modeYes'geocode_batch': address -> lat/lon. 'routing': route + ETA. 'port_congestion': UN/LOCODE port state. 'ship_tracking': vessel by MMSI
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesPrimary input: address for geocode/routing, UN/LOCODE (e.g. NLRTM) for port_congestion, 9-digit MMSI for ship_tracking
addressesNogeocode_batch only: up to 50 addresses (overrides query if provided)
mode_transportNorouting only: transport mode. Default: driving

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
routingNo
sourcesYes
geocode_batchNo
quality_scoreYes
ship_trackingNo
port_congestionNo
Behavior5/5

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

Beyond annotations (readOnlyHint, openWorldHint), the description discloses rate limits (1 req/s), fallback providers, API key requirements, SLA (<=25s p95), caching durations (24h/1h/30min/5min), quality score, and status values (final/partial/failed). This adds substantial behavioral context not present 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?

The description is dense but well-organized: it opens with a clear summary, lists the four modes with specific deliverables, and then includes operational details (rate limits, SLA, caching). Every sentence contributes useful information without redundancy.

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?

The description covers all necessary context for a complex multi-mode tool: mode-specific inputs/outputs, data source reliability, API key conditions, performance expectations, caching behavior, and response statuses. Given the output schema exists, the description is thorough and leaves no critical gaps.

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 documents parameters. The description adds some explanatory context about each mode's inputs (e.g., UN/LOCODE example, MMSI digit count), but this largely mirrors the schema's own descriptions. No significant additional meaning 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?

The description clearly states the tool's purpose: 'Geospatial logistics intelligence for supply chain, maritime and transport agents.' It enumerates four distinct modes with specific actions (geocode_batch, routing, port_congestion, ship_tracking), each with concrete outputs (lat/lon, ETA, congestion status, AIS data). This distinguishes it from other tools 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?

The description gives clear context for each mode, including input types (UN/LOCODE, MMSI) and data sources. However, it does not explicitly contrast with alternative tools or specify when not to use it. The guidance is implicit in the mode descriptions rather than explicit exclusion or comparison.

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

global_salary_inflation_adjusterA
Read-onlyIdempotent
Inspect

Adjusts salary benchmarks for local inflation using OECD, IMF, and World Bank data. Designed for CHROs to normalize compensation across regions with accurate inflation adjustments. Inputs include country codes, base salary, and reference year. Outputs inflation-adjusted salary with data sources and warnings.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
baseSalaryYes
targetYearNo
countryCodeYes
referenceYearYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
targetYearNo
countryCodeNo
inflationRateNo
referenceYearNo
adjustedSalaryNo
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds the data sources and output warnings, but does not detail behavioral aspects like async behavior or data freshness. It is acceptable but not rich.

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 concise sentences front-load the purpose and output. Every sentence earns its place with no repetition or fluff.

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 an output schema and annotations, the coverage is good: purpose, key inputs, output, and data sources are present. It lacks explicit guidance on alternatives and targetYear, but overall is sufficient for a read-only calculator tool.

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 only 20%; the description names country code, base salary, and reference year, which helps, but it omits targetYear and async semantics. It partially compensates for the sparse schema but leaves meaningful gaps.

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 a specific verb ('Adjusts') and resource ('salary benchmarks for local inflation'), with clear data sources and output. It distinguishes itself from compensation siblings by focusing on cross-regional inflation normalization.

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 gives clear context ('for CHROs to normalize compensation across regions'), implying when to use it. However, it does not explicitly name alternatives or state when not to use it.

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

gl_reconcilerB
Read-only
Inspect

GL Reconciler — Réconciliation grand livre — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Answers: Identify the root causes of the GL breaks in 's ledger for — cluster them and rank by materiality. · For Q close: which accounts have unreconciled items over €? Provide a sign-off routing and resolution plan. · Run an automated GL reconciliation for — AR/AP/intercompany entries — flag open items, suggest journal entries. · What are the top 5 systemic control weaknesses causing recurring GL breaks at ? Recommend preventive controls. · Generate a month-end close reconciliation report for — breaks by account type, aging analysis, sign-off assignments. Reference case: Acme SaaS Q4 2026 — 47 breaks GL, €1.4M variance non postée. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
entityYes
ledgerContextYes
Behavior4/5

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

Annotations declare readOnlyHint=true and openWorldHint=true, and the description is consistent with these, describing analysis and reporting rather than mutation. It adds useful context beyond annotations: mentions 'Inputs are validated server-side' and describes the deliverable as 'structured, audited,' giving a sense of what the agent can expect. It does not disclose rate limits or pagination, but that is less critical given read-only behavior and the presence of annotations.

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

Conciseness2/5

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

The description is verbose and marketing-oriented, including a French subtitle, a reference case, and multiple example questions. Every sentence does not earn its place; the 'Reference case: Acme SaaS' and the marketing phrase 'Gapup agent-payable C-suite expertise (CFO)' add noise. While it is front-loaded with a clear title, the bulk is unnecessarily long and repetitive.

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

Completeness2/5

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

The tool has nested parameters (entity, ledgerContext) and no output schema, so the description should compensate by explaining how to construct inputs and what the deliverable contains. It gives some idea of output ('structured, audited deliverable') but leaves parameter semantics unaddressed and does not mention output format or fields. Given the complexity and low schema coverage, this is insufficient.

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

Parameters2/5

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

Schema description coverage is only 25% (only 'async' has a description). The description does not explain the meaning of 'entity', 'ledgerContext', or 'focus' beyond saying 'send the documented case fields,' which is vague. It does not compensate for the poor schema coverage, leaving the agent to infer parameter semantics from field names and nesting. This is a significant gap.

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 clearly states it is a GL recon reconciler that returns a structured, audited deliverable, and provides specific examples of what it can do (root cause analysis, ranking by materiality, month-end close reports). This distinguishes it from sibling finance tools like budget_variance_ai or working_capital, though the multiple verbs (identify, run, generate) make the core action slightly diffuse. Still, it is specific and focused on GL reconciliation.

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

Usage Guidelines4/5

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

The description gives strong contextual usage via example questions ('Identify the root causes...', 'Generate a month-end close reconciliation report...'), implying when to use the tool. However, it does not explicitly name alternatives or state when not to use it, so it falls short of a 5. The use cases are clear enough for an agent to recognize relevant scenarios.

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

gov_procurement_multiA
Read-only
Inspect

Aggregate public procurement tenders (calls for tender / appels d'offres) from multiple government sources simultaneously: TED Europa v3 (27 EU countries, keyless API), BOAMP France (opendatasoft, keyless), UK Contracts Finder (OCDS standard, keyless), SAM.gov United States (requires SAM_GOV_API_KEY env var), and bund.de Germany (HTML scraping, partial). Returns structured tender records with buyer authority, EU CPV sector code, estimated contract value converted to EUR via live FX rates, submission deadlines, and direct notice URLs. Use when: a B2G agent needs to find government contract opportunities matching keywords across multiple jurisdictions; building a pipeline of public tenders for bid/no-bid qualification; monitoring a domain by CPV code; market sizing public sector spend. Key inputs: query (keywords), countries (ISO-2 array), cpv_codes (EU standard codes, e.g. 72000000=IT services, 45000000=construction, 79000000=business services), min_value_eur (filter), published_after (ISO date, defaults to 30 days ago). SLA: <=25s p95 (all sources fetched in parallel, 8s budget per source). Optional env var SAM_GOV_API_KEY enables US federal tenders (free key at api.sam.gov). Quality score: 25 pts if TED EU retrieved, 15 pts per other source retrieved (max 60), 10 pts if >= 10 tenders returned, 5 pts if aggregates computed. Status: failed < 30 / partial 30-59 / final >= 60.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesKeywords to search for tenders (e.g. "cybersecurity audit", "construction", "consulting AI")
countriesNoCountries to search. Defaults to ["EU","US","FR","UK","DE"]. Use "EU" for all 27 EU member states via TED Europa.
cpv_codesNoEU Common Procurement Vocabulary codes (e.g. ['72000000'] for IT services, ['45000000'] for construction). Optional.
min_value_eurNoMinimum contract value in EUR. Tenders below this are excluded. Optional.
published_afterNoISO date YYYY-MM-DD. Only return tenders published after this date. Defaults to 30 days ago.

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryYes
statusYes
sourcesYes
tendersYes
by_sourceYes
by_countryYes
quality_scoreYes
countries_searchedYes
Behavior5/5

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

Beyond annotations (readOnlyHint, destructiveHint), the description discloses parallel fetching, per-source time budgets (8s), a quality score formula, partial/final status grades, optional SAM_GOV_API_KEY requirement, and bund.de's partial coverage. This operational detail materially exceeds the annotation baseline.

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 long but efficiently organized with clear sections: function, source list, use cases, key inputs, SLA, and quality scoring. Every sentence provides operational or selection-relevant information without redundancy or fluff.

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?

Despite the tool's complexity (6 params, 5 sources, async mode), the description covers output fields (buyer authority, CPV, value in EUR, deadlines, URLs), failure grading (failed/partial/final), environmental prerequisites (env var), and performance expectations. This is sufficient for an agent to invoke and interpret results.

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 adds value by giving concrete CPV code examples (72000000=IT services, 45000000=construction), clarifying the ISO-2 array format, and reaffirming defaults for countries and published_after. It also explains quality scoring that depends on source coverage.

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

Purpose5/5

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

The description clearly states the tool aggregates public procurement tenders from multiple named government sources (TED, BOAMP, UK Contracts Finder, SAM.gov, bund.de) with a specific verb 'Aggregate'. It also lists concrete use cases (B2G lead finding, pipeline building, CPV monitoring, market sizing) distinguishing it from siblings like rfp_tender_architect or procurement_spend_optim.

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?

An explicit 'Use when' section provides four distinct scenarios with example keywords and CPV usage. It also includes SLA and quality score semantics, enabling the agent to decide if this tool fits the task and to interpret partial results.

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

growth_path_architectC
Read-only
Inspect

Architecte de croissance — Gapup agent-payable C-suite expertise (CSO). Returns a structured, audited deliverable. Reference case: Pennylane (€30M ARR) — 3 voies de croissance · Mix recommandé : Organique + Geo EU · ARR cible €120M en 36 mois. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
constraintsYes
growthTargetYes
currentDriversYes
Behavior3/5

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

Annotations already mark readOnlyHint=true and openWorldHint=true. The description adds that inputs are validated server-side and the deliverable is 'audited,' providing slightly more context than the annotations alone. However, it does not disclose output format, latency, or any potential external data usage that the openWorldHint might imply.

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

Conciseness3/5

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

The description is relatively short but contains marketing-style language ('Gapup agent-payable C-suite expertise (CSO)') that adds little value. The reference case is informative but takes up space without providing a general template or behavior description.

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

Completeness2/5

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

Given the complex nested schema (5 parameters, 4 required) and no output schema, the description should specify what the deliverable contains and how to interpret the result. It only offers a single example (Pennylane) and does not cover async execution, response structure, or edge cases, leaving significant gaps for an agent invoking the tool.

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

Parameters2/5

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

Schema description coverage is only 20% (only async has a description), and the description provides no additional semantic meaning for company, growthTarget, currentDrivers, or constraints. The reference case mentions ARR and mix but does not explain field units, relationships, or how to construct valid inputs beyond the schema's structural requirements.

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 identifies the tool as 'Architecte de croissance' and states it returns 'a structured, audited deliverable,' with a reference case (Pennylane) showing 3 growth paths and target ARR. This implies it produces growth strategies, though it lacks an explicit verb like 'designs' or 'creates' and does not distinguish it from sibling tools such as strategic_options_analyzer or geographic_expansion.

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?

No guidance is provided on when to use this tool versus alternatives. The only usage-related note is 'Inputs are validated server-side — send the documented case fields,' which is about input submission mechanics, not tool selection context.

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

hallucination_confidence_meterA
Read-onlyIdempotent
Inspect

Evaluates the likelihood of hallucination in LLM responses by comparing against HuggingFace model confidence scores. Designed for risk assessment personas to quantify response reliability. Accepts text snippets or model outputs, returns confidence metrics and potential hallucination warnings. Cross-references with top-performing models from the HuggingFace leaderboard.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe LLM-generated text to evaluate for hallucination risk
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
model_idNoOptional specific HuggingFace model ID to use for evaluation
thresholdNoConfidence threshold below which hallucination warnings are triggered

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
confidence_scoresNo
hallucination_likelihoodNo
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint. The description adds context by mentioning it cross-references HuggingFace leaderboard models (implying external calls) and that it returns confidence metrics and hallucination warnings. This goes beyond the annotations without contradicting 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?

The description is four sentences, each providing useful information: purpose, target audience, inputs/outputs, and external cross-referencing. It's slightly verbose but not bloated, and information is front-loaded. A 4 is appropriate.

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 a rich schema (100% coverage) and output schema present, the description covers purpose, inputs, outputs, and context (risk assessment). It doesn't need to explain return values. The only minor gap is not mentioning the async parameter behavior, but that's covered in the schema. Overall complete.

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 adds nuance that the text input can be 'text snippets or model outputs,' which clarifies input flexibility beyond the schema's 'LLM-generated text.' This extra context justifies a 4.

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

Purpose5/5

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

The description clearly states the tool 'evaluates the likelihood of hallucination in LLM responses' and explains the method ('by comparing against HuggingFace model confidence scores'). This specific verb+resource+method distinguishes it from sibling evaluation tools like bias_amplification_tracker or jailbreak_attempt_detector.

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 identifies target users ('risk assessment personas') and the goal ('quantify response reliability'), and specifies accepted inputs ('text snippets or model outputs'). However, it doesn't explicitly mention when not to use the tool or name alternatives, so it falls short of a 5.

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

historical_price_seriesA
Read-onlyIdempotent
Inspect

Fetch historical OHLCV price series for any ticker: stocks (AAPL, SAP.DE, 7203.T), ETFs, indices, commodities (GC=F for gold) or cryptocurrencies (BTC-USD). Returns a full date-indexed series of open/high/low/close/volume plus pre-computed statistics: total return, annualised return (CAGR), annualised volatility, max drawdown and Sharpe estimate (rf=4%). Automatically detects crypto tickers (→ CoinGecko) vs traditional assets (→ Yahoo Finance primary, Stooq fallback). Adjusts for dividends and splits when adjusted=true (default). Use cases: backtesting, factor analysis, performance attribution, charting, financial modelling. Sources: Yahoo Finance, CoinGecko, Stooq. All keyless. Optional env: AICI_RESEARCH_PROXY_URL for Bright Data routing (lifts Yahoo 429), TWELVE_DATA_API_KEY for higher Twelve Data quota.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
periodNoLook-back period. Default: 1y.
tickerYesYahoo Finance ticker symbol. Examples: AAPL (US stock), SAP.DE (Frankfurt), 7203.T (Tokyo), BTC-USD (Bitcoin), GC=F (gold futures), ^GSPC (S&P 500).
metricsNoSubset of fields to include (informational — all fields always returned).
adjustedNoAdjust close prices for dividends and splits. Default: true.
intervalNoBar interval. Default: 1d (daily).

Output Schema

ParametersJSON Schema
NameRequiredDescription
statsYes
periodYes
seriesYes
statusYes
tickerYes
sourcesYes
currencyYes
intervalYes
data_pointsYes
quality_scoreYes
splits_detectedNo
resolved_exchangeNo
dividends_detectedNo
Behavior5/5

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

The description adds significant behavior beyond the readOnly/idempotent annotations: it details data source routing (CoinGecko vs Yahoo Finance with Stooq fallback), dividend/split adjustment behavior, keyless access, and optional proxy env handling for rate limits. This is exactly the kind of extra context that helps an agent anticipate side effects and configuration 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?

The description is dense but well-structured: it starts with the core purpose, then output stats, routing behavior, adjustment, use cases, sources, and env config. Each sentence provides distinct operational information with no filler or redundancy. It's long but every segment earns its place.

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 tool's complexity (6 params, multiple asset classes, data-source selection, output statistics), the description covers all essential aspects: return content, statistics, ticker formats, sources, rate-limit workarounds, and use cases. The output schema exists, so exact return structure is handled outside the description. This is complete for an agent to decide when and how to invoke the tool.

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 input schema already describes all 6 parameters with 100% coverage, so the bar is lower. The description adds practical value with concrete ticker examples, clarifies that the 'metrics' parameter is informational (all fields are always returned), and explains the meaning of 'adjusted=true' in the context of dividends/splits.

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

Purpose5/5

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

The description clearly states the tool fetches historical OHLCV price series, with specific examples (AAPL, SAP.DE, 7203.T, BTC-USD, GC=F). This distinguishes it from sibling tools like fx_rate, interest_rate, and economic_indicator, which cover other financial data types.

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?

Explicit use cases are listed (backtesting, factor analysis, performance attribution, charting, financial modelling), and it notes automatic crypto vs traditional asset detection. However, it does not explicitly mention when NOT to use this tool or name alternative tools, so it stops short of full exclusionary guidance.

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

hr_benefits_esg_alignerA
Read-onlyIdempotent
Inspect

Asynchronous tool for Chief Human Resources Officers (CHROs) to align employee benefits packages with ESG (Environmental, Social, Governance) goals. Uses Eurostat HR data, MSCI ESG ratings, and Sustainalytics metrics to generate actionable recommendations. Inputs include company location, industry, and current benefits structure. Outputs ESG-aligned benefits adjustments with sustainability impact scores. Requires async:true to avoid timeout errors.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
esgFocusNoPrimary ESG pillars to prioritize
industryCodeYesNACE or ISIC industry classification code
companyLocationYesISO 2-letter country code of company headquarters
currentBenefitsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
recommendationsNo
overallESGAlignmentScoreNo
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is known. The description adds behavioral transparency by stating it is asynchronous and requires async:true, and it reveals the data sources and output format (sustainability impact scores), which go 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?

The description is concise, consisting of four sentences with no redundant information. It front-loads the purpose, then adds data sources, inputs/outputs, and a key async requirement. Every sentence contributes to understanding the tool.

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 an existing output schema and 80% schema description coverage, the description provides sufficient context: it states inputs, outputs, data sources, and the async requirement. No critical gaps remain for an agent to select and invoke the tool correctly.

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

Parameters3/5

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

Schema description coverage is 80%, so most parameters are already well documented. The description mentions 'company location, industry, and current benefits structure' but does not add meaning beyond the schema. It does not clarify the remaining parameters (like esgFocus) beyond what the schema already states, so a baseline 3 is 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 clearly identifies the tool's function: aligning employee benefits packages with ESG goals for CHROs. It specifies the target user, the domain (HR benefits), and distinguishes from generic ESG tools by naming specific data sources (Eurostat, MSCI, Sustainalytics) and outputs (sustainability impact scores).

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool (CHROs aligning benefits with ESG) and includes a critical usage requirement: 'Requires async:true to avoid timeout errors.' However, it does not explicitly mention alternatives or exclusions, so it does not fully meet the 'explicit when/when-not' bar.

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

incident_response_evidence_collectorA
Read-onlyIdempotent
Inspect

As a CTO, gather forensic evidence (logs, network flows, MITRE TTPs) from public breach reports and threat intelligence sources to support incident response post-mortems. Inputs include incident identifiers, date ranges, or MITRE technique IDs. Outputs structured evidence with attack patterns, indicators of compromise, and source references. — pass async:true REQUIRED to avoid x402 timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
date_rangeNo
incident_idYesUnique identifier for the incident (e.g., CVE, GitHub Advisory ID)
mitre_technique_idsNoList of MITRE ATT&CK technique IDs (e.g., T1059)
include_network_flowsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
timelineNo
warningsNo
indicatorsNo
incident_idNo
network_flowsNo
attack_patternsNo
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, covering safety and idempotency. The description adds critical behavioral guidance: 'pass async:true REQUIRED to avoid x402 timeout.' This is valuable beyond annotations and informs the agent of a required invocation pattern. It also describes outputs without contradicting annotations.

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

Conciseness5/5

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

The description is two concise sentences plus a critical async tip. It front-loads the core purpose, then covers inputs and outputs, and ends with an actionable warning. No unnecessary fluff.

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 tool has 5 parameters, nested objects, and an output schema, the description provides a solid overview: purpose, inputs, outputs, and the async requirement. It doesn't explain every parameter or the output schema structure, but the schema and output schema handle some of that, and the essential usage context is present. Minor gaps remain for include_network_flows and date_range format.

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 60%, and the description mentions key inputs ('incident identifiers, date ranges, or MITRE technique IDs') which adds some context. However, it does not detail the date_range structure or explain include_network_flows, and the async parameter is only mentioned in a passing note. The description adds moderate value but leaves gaps for parameters not covered by 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?

The description clearly states the tool's function: 'gather forensic evidence (logs, network flows, MITRE TTPs) from public breach reports and threat intelligence sources to support incident response post-mortems.' It uses a specific verb ('gather') and identifies the resource (forensic evidence) and context (incident response post-mortems), making it distinct from sibling tools like ai_act_incident_response.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool: 'support incident response post-mortems.' It also hints at input flexibility ('incident identifiers, date ranges, or MITRE technique IDs'). However, it does not explicitly mention alternatives or when not to use it, which prevents a 5.

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

india_market_dataA
Read-only
Inspect

Indian capital market intelligence for the IN diaspora (30M+) and investors. Covers NSE, BSE, and MCA corporate registry across four modes:

• company — full company profile: name, CIN, exchange, NSE/BSE tickers, industry, incorporation date, paid-up capital, registered office, status, directors • market_quote — real-time quote: price (INR), change%, volume, market cap, P/E ratio. Sources: Yahoo Finance (primary), BSE API, NSE API (proxy-gated) • sector_overview — Nifty/Sensex sector snapshot: top 5 companies by market cap. Supported sectors: it, banking, pharma, energy, auto, fmcg, realestate, metals, telecom, consumer • mca_filing — Ministry of Corporate Affairs filings. Requires CIN for direct lookup.

Input formats accepted: • NSE ticker (e.g. 'RELIANCE', 'TCS.NS') • BSE 6-digit code (e.g. '500325' for Reliance) • CIN 21-char (e.g. 'L17110MH1973PLC019786') • Company name EN (e.g. 'Reliance Industries', 'Tata Consultancy') • Sector keyword (e.g. 'IT services', 'banking', 'pharma')

ENV: AICI_RESEARCH_PROXY_URL with country-in routing unlocks NSE direct API and MCA.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesAnalysis mode.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesNSE/BSE ticker, CIN (21 chars), company name (EN), or sector keyword.
exchangeNoExchange filter. Default: all.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
queryYes
statusYes
companyNo
sourcesYes
mca_filingsNo
market_quoteNo
quality_scoreYes
sector_overviewNo
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 valuable behavioral context: data sources (Yahoo Finance primary, BSE API, NSE API proxy-gated), async job behavior, and the requirement of AICI_RESEARCH_PROXY_URL for full access. This goes beyond the annotations and helps set expectations without contradicting 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?

The description is long but well-organized with bullet points and clear sections for modes and input formats. Every sentence carries useful information, and the structure makes it scannable. It is somewhat dense, but the complexity of a tool with four modes justifies the length, and no redundancy is present.

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 complex tool with multiple modes, input formats, async behavior, and external dependencies, the description is remarkably complete. It covers all key aspects: what each mode returns, accepted query formats, supported sectors, proxy/ENV prerequisites, and source fallbacks. The presence of an output schema means return-value details are handled elsewhere, so the description fully satisfies the contextual burden.

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

Parameters5/5

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

Despite 100% schema coverage, the description significantly enriches parameter meaning. It elaborates each mode's returned fields (e.g., company includes CIN, directors, status), lists supported sector keys for sector_overview, and gives concrete input format examples (e.g., 'RELIANCE', '500325', 'L17110MH1973PLC019786'). This transforms the schema's bare enum and string descriptions into actionable guidance.

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

Purpose5/5

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

The description clearly states it provides 'Indian capital market intelligence' and enumerates four distinct modes (company, market_quote, sector_overview, mca_filing) with specific data fields for each. This distinguishes it from sibling tools like china_market_data or generic market research tools by naming the exact exchanges (NSE, BSE) and MCA registry coverage.

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?

Usage is implied through detailed mode descriptions and input formats, including the note that mca_filing requires a CIN. The async parameter is explicitly explained ('Use for slow tools to avoid client timeouts') and the ENV requirement for NSE direct API/MCA is stated. However, it does not explicitly name alternative sibling tools or provide when-not-to-use scenarios, so it stops short of a perfect guideline score.

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

industry_classifier_naics_sicA
Read-only
Inspect

Classificateur d'industrie NAICS/SIC/NACE — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Answers: What is the NAICS code for a company that does ? · Give me NAICS + SIC + NACE classification for this company description. · Which industry sector (GICS) does this company belong to for equity analysis? · What HS code applies to products manufactured by this company? · For EU procurement compliance, what NACE Rev. 2 code applies to this company? · Classify this business into NAICS + SIC + ISIC + GICS + NACE + HS with hierarchy and confidence. · I need to segment my ICP list by NAICS 4-digit subsector — classify these company descriptions. Reference case: Helios Cold Chain EU — Freight forwarding maritime réfrigéré · . Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
company_urlNo
company_nameNo
company_descriptionYes
focus_classificationsNo
primary_revenue_sourceNo
Behavior4/5

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

Given the annotations already declare readOnlyHint=true and openWorldHint=true, the description need not repeat safety traits. It adds useful context: the tool returns a 'structured, audited deliverable' and that inputs are validated server-side, implying a defined output format and error handling. No contradictions with 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 somewhat lengthy due to multiple example queries, but each example adds value by illustrating different use cases. The opening sentence is clear and the structure is logical. It could be tightened, but it is not bloated with meaningless filler.

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 complex tool covering multiple classification standards, and there is no output schema. The description gives many usage examples and states that the deliverable is structured and audited, but it does not describe the output format, confidence levels, or hierarchy beyond mentioning them. This is a gap given the tool's complexity, but the examples provide some context.

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

Parameters2/5

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

The schema description coverage is only 17%, meaning most parameters lack descriptions. The tool description does not compensate sufficiently; it mentions 'company description' in examples but fails to explain critical fields like focus_classifications, primary_revenue_source, company_name, company_url, or the async flag. This leaves the agent uncertain about how to populate these parameters correctly.

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

Purpose5/5

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

The description clearly identifies the tool as an industry classifier for NAICS/SIC/NACE, and further extends to GICS, ISIC, and HS. It provides multiple example queries that specify exactly what the tool can do, such as returning NAICS codes, combined classifications, or segmenting lists. This distinguishes it from any sibling tools by focusing on industry classification specifics.

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

Usage Guidelines4/5

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

The description provides many contextual usage examples, such as 'For EU procurement compliance' and 'for equity analysis', which implicitly tell the agent when to use this tool. It lacks explicit 'when not to use' or alternative tool suggestions, but the rich examples effectively convey the intended scenarios. The note about server-side validation also offers guidance.

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

infra_blueprint_designerB
Read-only
Inspect

Architecte infra cloud — Gapup agent-payable C-suite expertise (CTO). Returns a structured, audited deliverable. Answers: Design a cloud infrastructure blueprint for a app with expected traffic and requirements. · What is the recommended AWS vs GCP vs Azure architecture for a SaaS multi-tenant app with EU data residency and SOC2? · How should I architect my cloud infra to stay under €5k/month with GDPR compliance and a junior DevOps team? · What cloud services do I need for a with load — compute, DB, cache, CDN, observability? · Give me an end-to-end cloud architecture with scaling plan, security baseline, and IaC tool recommendation. Reference case: Spinora fintech B2B SaaS — saas-multi-tenant · medium load (1k-100k req/d) · eu-west · . Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
team_sizeNo
expected_loadYes
workload_typeYes
business_contextNo
cloud_preferenceNo
region_preferenceYes
budget_monthly_eurNo
compliance_requiredNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the tool is known safe. The description adds that it returns a structured, audited deliverable and validates inputs server-side, but does not detail any side effects, auth requirements, or limitations. This is adequate for a read-only tool.

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

Conciseness2/5

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

The description contains branding fluff ('Gapup agent-payable C-suite expertise') and a repetitive reference case, while not being well front-loaded. The core purpose appears mid-description, and there is redundancy in workload/load placeholders.

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

Completeness3/5

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

Given no output schema, the description provides some output expectations via examples (scaling plan, security baseline, IaC recommendation), but the exact deliverable structure is vague. It also lacks guidance on parameter combinations or error cases, though it is one of the more complex 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 coverage is low (11%), but the description maps several key parameters (workload_type, expected_load, compliance_required, cloud_preference, budget_monthly_eur, region_preference) to example queries. However, it does not fully explain all 9 parameters, such as team_size or business_context.

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

Purpose5/5

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

The description clearly states the tool designs cloud infrastructure blueprints, listing concrete example questions covering architecture, cloud provider comparison, costs, and services. It distinguishes from siblings by focusing on comprehensive architectural design rather than cost optimization alone.

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 provides clear use cases via example questions, but does not explicitly state when to prefer this over alternatives or mention exclusions. Context implies use for infrastructure architecture design, but no explicit comparisons to sibling tools.

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

insurance_coverage_analyzerC
Read-only
Inspect

Analyseur de couvertures d'assurance — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: Gapup Hub — 3 polices · €24k prime · Score 58/100 · 3 gaps critiques · RFP template. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
arrEurYes
sectorYes
objectivesYes
companyNameYes
riskProfileYes
jurisdictionYes
employeeCountYes
currentPoliciesYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is known. The description adds that inputs are validated server-side and returns a structured, audited deliverable, which provides some behavioral context. However, it does not explain cost (ambiguous 'agent-payable'), rate limits, or output format details, so a middle score is appropriate.

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

Conciseness4/5

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

The description is compact and front-loaded with purpose. The 'Gapup agent-payable C-suite expertise (RISK)' part is jargon and adds little, but the reference case and validation note are useful. It is concise overall, with minor fluff.

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

Completeness2/5

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

Given the complex nested schema and no output schema, the description is insufficient. It does not explain the scoring system (Score 58/100), what the deliverable contains, or how the input fields relate to the analysis. The reference case gives a glimpse but leaves major gaps.

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

Parameters1/5

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

Schema description coverage is only 11% (only 'async' has a description). The description does not explain any parameter semantics, merely saying 'send the documented case fields' without specifying which fields or how they should be formatted. It fails to compensate for the low schema coverage, making the tool difficult to use correctly.

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 name and description clearly indicate this tool analyzes insurance coverage and returns a structured, audited deliverable. The reference case (Gapup Hub) provides a concrete example of output. It does not explicitly distinguish from siblings, but the domain is specific enough.

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?

No explicit guidance on when to use this tool versus alternatives. It only mentions a reference case and server-side validation, which are examples or technical notes, not usage guidelines. No exclusions or alternative tool names are provided.

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

interest_rateA
Read-only
Inspect

Return a precise reference interest rate — the exact figure an agent injects into a treasury, lending, valuation or trading model. Available rates: fed_funds, sofr, us_10y, us_2y, us_3m, ecb_main, euribor_3m. Source: FRED (Federal Reserve Bank of St. Louis). When to use: an agent's computation needs a current benchmark rate as a precise input.

ParametersJSON Schema
NameRequiredDescriptionDefault
rateYesReference rate name
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.

Output Schema

ParametersJSON Schema
NameRequiredDescription
rateYes
unitYes
as_ofYes
valueYes
sourceYes
series_idNo
source_urlNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the read-only nature is known. The description adds the source (FRED) and emphasizes the 'precise' nature of the rate, but does not disclose additional behavioral traits such as latency, rate limits, or potential variance. It is consistent with annotations.

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

Conciseness5/5

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

The description is concise and well-structured: a clear opening sentence, a list of available rates, the source, and a usage note. No wasted words, and the most important information 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?

Given the tool's simplicity (two parameters, one enum) and the presence of an output schema, the description covers the essential aspects: purpose, rates, source, and when to use. It does not explain the async behavior, but the schema already does, so this is adequately complete.

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?

The schema already covers both parameters with descriptions, including a detailed async explanation. The tool description lists the enum values for 'rate', which adds no new meaning beyond the schema, and it does not explain the semantics of each rate. Baseline 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 clearly states the tool returns a precise reference interest rate for use in financial models, and lists the specific rates available. It does not explicitly distinguish from sibling tools like fx_rate or economic_indicator, but the focus on benchmark interest rates and the FRED source provides sufficient clarity.

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

Usage Guidelines4/5

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

The description includes a 'When to use' clause specifying that the tool is for when an agent needs a current benchmark rate as a precise input. This gives clear context for invocation, though it does not mention exclusions or alternative tools.

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

internal_communicationC
Read-only
Inspect

Communication interne — Gapup agent-payable C-suite expertise (CHRO). Returns a structured, audited deliverable. Reference case: Cas démo — Communication interne. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
contextYes
audienceSegmentsYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, which cover safety and openness. The description adds that it returns an 'audited deliverable' and says inputs are validated server-side, which are useful behavioral traits. However, it does not elaborate on what 'audited' entails, or any other behavioral aspects like rate limits or error handling.

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 short and front-loaded with the title. It includes useful notes about validation and the deliverable. However, 'Gapup agent-payable C-suite expertise (CHRO)' and 'Reference case: Cas démo — Communication interne' are somewhat promotional and do not add practical information, so it is not a perfect score.

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

Completeness2/5

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

For a tool with nested object parameters, no output schema, and many siblings, the description is insufficient. It does not explain what the deliverable contains, how the parameters interact, or expected output shape. The sparse guidance leaves the agent to rely on the schema alone, which is incomplete.

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

Parameters2/5

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

Schema description coverage is only 20% (only async is described). The description does not compensate by explaining company, context, or audienceSegments. The phrase 'documented case fields' is vague and unhelpful. Field names in the schema provide some clues, but the description adds no meaningful parameter semantics.

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

Purpose3/5

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

The description indicates the tool is about internal communication for CHRO-level expertise and returns a structured, audited deliverable. However, it lacks a specific verb+resource combination; it does not clearly state whether it generates an assessment, a plan, or a report. It is not differentiated from sibling tools such as hr_benefits_esg_aligner or talent_intelligence.

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 description provides no guidance on when to use this tool versus alternatives. It mentions 'send the documented case fields' but does not discuss prerequisites, exclusions, or typical scenarios. No alternatives are named.

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

investor_listA
Read-only
Inspect

Liste d'investisseurs + warm intros — Gapup agent-payable C-suite expertise (FUNDRAISING). Returns a structured, audited deliverable. Reference case: Agicap Série D — 25 VCs matchés · Tier A: Balderton/Accel/Partech · Warm intro path chaque investisseur. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
roundYes
companyYes
existingInvestorsNo
Behavior4/5

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

Annotations declare readOnlyHint and openWorldHint, and the description adds useful context: the tool returns an audited deliverable, includes warm intro paths, and validates inputs server-side. This goes beyond the annotations without contradicting 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?

The description is compact and front-loaded with the core purpose. The reference case adds some promotional noise but is brief and arguably helpful for context.

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

Completeness2/5

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

With no output schema and complex nested parameters, the description should explain the deliverable's contents more concretely. Saying 'structured, audited deliverable' is vague, and the async parameter is not mentioned at all.

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

Parameters2/5

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

Schema description coverage is only 25% and the description adds almost no detail about the parameters. It only references 'documented case fields' without explaining what they are, leaving the nested company/round/existingInvestors structures largely undocumented.

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 clearly states the tool produces an investor list with warm intros and a structured, audited deliverable, and provides a concrete reference case. However, it doesn't explicitly differentiate itself from similar siblings like investor_shortlist.

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

Usage Guidelines4/5

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

The description gives clear context: it's for FUNDRAISING and investor warm intros, and it instructs to send the documented case fields. It does not mention alternatives or when not to use it, but the intended use is clear enough.

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

investor_shortlistB
Read-only
Inspect

Shortlist d'investisseurs ciblés — Gapup agent-payable C-suite expertise (FUNDRAISING). Returns a structured, audited deliverable. Reference case: Aleph AI — Series B €30M · 60 investisseurs EU/US matchés par stage/thèse · fit score + warm intro path + first message angle. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
roundYes
companyYes
preferencesYes
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is clear. The description adds that inputs are 'validated server-side' and that it returns an 'audited deliverable,' but it does not disclose other behaviors like async handling, auth requirements, or rate limits. No contradiction with 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 two dense sentences, front-loaded with the purpose. The reference case is illustrative but slightly verbose; overall, it is efficient and earns its place.

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

Completeness2/5

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

This is a complex tool with nested objects and no output schema. The description mentions 'structured, audited deliverable' and lists reference case outputs, but lacks explicit response structure, input field mapping, and async guidance. The reference case is a hint, not a substitute for complete documentation.

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

Parameters1/5

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

The schema description coverage is only 20%, yet the tool description provides no parameter meaning beyond a vague 'send the documented case fields.' It does not explain what company, round, or preferences should contain, making it impossible to correctly fill the parameters without external 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?

The description clearly states the resource: 'Shortlist d'investisseurs ciblés' and specifies the action via 'Returns a structured, audited deliverable.' It distinguishes itself from sibling tools like investor_list by emphasizing 'fit score + warm intro path + first message angle,' showing a unique value proposition.

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?

No explicit when-to-use guidance or alternative tools are mentioned. The fundraising context is implied via 'FUNDRAISING' and the reference case, but the description does not explain how this tool differs from or when to choose it over siblings like investor_list or funding_hunter.

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

ip_contract_clause_extractorA
Read-onlyIdempotent
Inspect

For CHRO use: analyzes employment contract text to identify and extract IP-related clauses such as invention assignment, confidentiality, non-compete, and patent rights. Returns structured data with clause types, risk levels, and relevant legal context. Ideal for contract review workflows, compliance checks, and IP protection strategy. Sources: USPTO PatFT and EPO Espacenet public datasets. Keywords: employment contract, IP clause, invention assignment, confidentiality agreement, non-compete, patent rights, CHRO tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
contractTextYesFull text of the employment contract to analyze
jurisdictionNoCountry/state jurisdiction for legal context (e.g., 'US-CA', 'DE')
includeContextNoWhether to include legal context for each clause

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
clausesYes
sourcesNo
summaryYes
warningsYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the safety profile is covered. The description adds that it returns 'structured data with clause types, risk levels, and relevant legal context,' which is useful. However, the mention of 'Sources: USPTO PatFT and EPO Espacenet public datasets' is misleading for a tool that analyzes contract text, creating confusion about its data dependencies and possibly implying it searches patent databases.

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

Conciseness3/5

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

The description is front-loaded with the core purpose, but it includes a 'Keywords' list at the end that is unnecessary for an AI agent and appears SEO-oriented. The 'Sources' line is also questionable and adds clutter. While not excessively long, these extraneous elements reduce overall conciseness.

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?

The presence of an output schema means the description does not need to explain return values. The description covers the main use cases and purpose, while the schema handles parameter details. However, the confusing source reference slightly detracts from completeness, as it might mislead the agent about the tool's data inputs, but overall the information is sufficient for correct selection and invocation.

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 parameters already have descriptions in the schema. The tool description does not add meaningful parameter semantics beyond what is already documented; it only implicitly aligns 'contractText' with 'analyzes employment contract text' and 'legal context' with includeContext. No additional syntax or format details are provided, 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.

Purpose5/5

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

The description clearly states a specific verb and resource: 'analyzes employment contract text to identify and extract IP-related clauses.' It lists specific clause types (invention assignment, confidentiality, non-compete, patent rights) which distinct it from generic legal clause extractors. The CHRO-targeted scope further clarifies its specialized purpose.

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

Usage Guidelines4/5

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

The description provides clear use contexts: 'Ideal for contract review workflows, compliance checks, and IP protection strategy.' It does not explicitly mention alternatives or exclusions, but the IP-specific focus implies when it should be preferred over more general tools like legal_clause_extractor. The 'For CHRO use' adds audience guidance, though no explicit 'when not to use' is given.

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

ip_employee_invention_trackerA
Read-onlyIdempotent
Inspect

For CHROs: tracks employee patent filings and flags unassigned inventions. Input employee name or ID to retrieve their patent applications from USPTO and WIPO databases. Returns list of inventions with assignment status, filing dates, and potential ownership gaps. Useful for IP audits, inventor onboarding, and compliance checks. Keywords: patents, IP ownership, employee inventions, USPTO, WIPO.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
endDateNoFilter patents filed before this date (YYYY-MM-DD)
startDateNoFilter patents filed after this date (YYYY-MM-DD)
employeeIdNoInternal employee ID (optional if name provided)
companyNameYesExact legal name of company for assignment check
employeeNameYesFull name of employee to track (e.g., 'John Doe')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
patentsYes
sourcesNo
warningsYes
employeeIdNo
companyNameYes
employeeNameYes
totalPatentsYes
unassignedPatentsYes
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, covering the safety profile. The description adds context about data sources and return fields, but does not disclose potential caveats such as data latency, completeness limitations, or external API dependency. No contradiction with 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 concise and front-loaded with the target user and core purpose. The keyword list at the end is slightly redundant but does not detract significantly. Each sentence contributes meaning.

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 lookup tool with rich annotations and 100% schema coverage, the description provides sufficient context: what it does, who it's for, input approach, and output contents. It is functionally complete, though a note on result size or pagination would strengthen it.

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 parameters are already well-documented. The description restates that employeeName or employeeId can be used and mentions companyName for assignment checking, but adds little beyond the schema. Baseline 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 clearly states the tool tracks employee patent filings and flags unassigned inventions, specifying the data sources (USPTO/WIPO) and output (assignment status, filing dates, ownership gaps). This is specific and actionable, though it does not explicitly differentiate from sibling tools like patent_ownership_audit.

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 mentions use cases ('IP audits, inventor onboarding, compliance checks') and target audience (CHROs), providing some context. However, it lacks explicit guidance on when not to use this tool versus alternatives, and no sibling tools are referenced.

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

ip_protection_pilotC
Read-only
Inspect

Pilote de protection IP — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: Carbios SA — Deeptech FR recyclage PET enzymatique · 14 brevets EP/US/FR · 5 concurrents · licensing €2-8M potentiel. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
competitorsYes
targetMarketsYes
patentPortfolioSummaryYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, and the description adds that inputs are validated server-side and the deliverable is audited. This is useful but does not cover rate limits, data sources, or further behavioral specifics. No contradiction with annotations.

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

Conciseness3/5

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

The description is a single sentence plus a reference example. The cryptic phrase 'Gapup agent-payable C-suite expertise (RISK)' and the lengthy Carbios case add clutter. It is not excessively long, but the structure could be more direct.

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

Completeness2/5

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

For a complex tool with nested objects and no output schema, the description is thin. It does not explain what the audited deliverable contains, how to structure input fields, or the purpose of 'focus'. The reference case provides a hint but is insufficient for correct invocation.

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

Parameters2/5

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

Schema description coverage is only 17% (only 'async' is described), and the description does not compensate. It references 'documented case fields' and gives a case example, but does not explain required parameters like company, patentPortfolioSummary, targetMarkets, competitors, or focus.

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

Purpose3/5

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

The description states the tool is an IP protection pilot that returns a structured, audited deliverable, referencing a specific case (Carbios SA). However, it lacks a clear action verb (e.g., assess, generate) and does not explicitly distinguish itself from sibling tools like patent_landscape or patent_ownership_audit.

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 description provides no guidance on when to use this tool versus alternatives. It only instructs to send the documented case fields, implying a submission workflow, but does not mention suitability, exclusions, or comparison with other IP-related tools.

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

jailbreak_attempt_detectorA
Read-onlyIdempotent
Inspect

Detects potential LLM jailbreak attempts by analyzing user input against NIST AI Risk Management Framework adversarial patterns. Designed for persona risk assessment, this tool evaluates text for common jailbreak techniques such as prompt injection, role-playing, or obfuscation. Inputs include the user message and optional context, returning a risk assessment with confidence scores and pattern matches. Ideal for real-time moderation in chat applications or API gateways.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
contextNoOptional conversation context for better pattern matching
messageYesUser input text to analyze for jailbreak attempts
thresholdNoConfidence threshold for flagging attempts

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
riskScoreNoConfidence score of jailbreak attempt
patternsMatchedNoList of detected adversarial patterns
isJailbreakAttemptNoWhether the input exceeds the risk threshold
Behavior4/5

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

Annotations already provide readOnlyHint, openWorldHint, and idempotentHint. The description adds insight into the tool's detection logic (techniques like prompt injection, role-playing, obfuscation) and output structure (risk assessment with confidence scores and pattern matches), which goes 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.

Conciseness4/5

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

The description is a compact 3-sentence paragraph. Each sentence adds value: purpose, techniques/design, and usage/output. Some repetition of schema details (e.g., 'message and optional context') exists but is not excessive.

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 tool's moderate complexity, the description covers purpose, usage, and output. Annotations cover safety characteristics, and an output schema exists, so the description need not explain return values in depth. It sufficiently enables correct selection and invocation.

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 the baseline is 3. The description only restates that inputs include message and optional context, adding no extra detail beyond what the schema already provides for parameters like threshold and async.

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 clearly states a specific verb ('detects') and resource ('potential LLM jailbreak attempts'), and adds detail about analyzing against NIST AI RMF adversarial patterns and common techniques. It does not explicitly distinguish from sibling tools like adversarial_input_stress_tester, but the focus on 'jailbreak' and 'persona risk assessment' is clear.

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

Usage Guidelines4/5

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

The description provides clear use context: 'Designed for persona risk assessment' and 'Ideal for real-time moderation in chat applications or API gateways.' However, it does not mention when not to use it or explicitly name alternative tools for different scenarios.

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

job_postings_intelligenceA
Read-only
Inspect

Agrégation d'offres d'emploi publiques pour inférer les tendances de recrutement. Trois modes : (1) company_hiring — analyse des postings d'une société : volume, fonctions (engineering/sales/marketing/ops/finance/hr), seniorité, géographie, croissance vs période précédente, signaux stratégiques inférés ; (2) role_market — volume marché global pour un rôle (open positions estimate, top employeurs, compétences demandées, médiane seniorité) ; (3) competitor_hiring_comparison — comparaison multi-sociétés (total postings, growth%, focus areas). Sources : Adzuna (ADZUNA_APP_ID/KEY env), RemoteOK (keyless), Himalayas (keyless), baseline statique 40 top employeurs. Usages : due diligence VC, intelligence compétitive, benchmarks RH, signaux pivots stratégiques. Cache 6h. SLA ≤15s.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesMode d'analyse : 'company_hiring' | 'role_market' | 'competitor_hiring_comparison'
roleNoIntitulé de poste à analyser (pour role_market, ex. 'data scientist', 'compliance officer')
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyNoNom de la société (pour company_hiring ou comme 1er concurrent)
locationNoPays ou ville (ex. 'France', 'United States', 'London')
competitorsNoListe de sociétés à comparer (pour competitor_hiring_comparison, min 2)
period_daysNoFenêtre d'analyse en jours (défaut 30)

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
sourcesYes
role_marketNo
quality_scoreYes
company_hiringNo
competitor_comparisonNo
Behavior4/5

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

Beyond annotations (readOnlyHint, openWorldHint), the description adds valuable context: data sources (Adzuna, RemoteOK, Himalayas), cache duration (6h), SLA (≤15s), and the three modes' behavior. It does not contradict annotations and enriches understanding of the tool's operation.

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 a single dense paragraph that efficiently communicates modes, sources, uses, and performance. While it could be bulleted for readability, every sentence earns its place without unnecessary fluff.

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?

The description is exceptionally complete for a tool with 7 parameters: it covers all three modes, parameter combinations, data sources, performance characteristics, and intended use cases. An output schema exists, so return values need not be explained further.

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% with each parameter described. The description adds context for understanding the modes and related parameters (e.g., company, role, competitors) but does not add significant new meaning beyond the schema's parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool aggregates public job postings to infer recruitment trends, with three specific modes (company_hiring, role_market, competitor_hiring_comparison) and their distinct outputs. This is a specific verb+resource and distinguishes from sibling tools by detailing unique analysis modes.

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?

Explicit use cases are listed: VC due diligence, competitive intelligence, HR benchmarks, and strategic pivot signals. This provides clear context for when to use the tool, though it does not mention alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

job_resultA
Read-onlyIdempotent
Inspect

Poll the result of any tool called with async:true. Returns status=pending while running, status=completed with the full result once done, status=failed on error, or status=not_found if the job_id is unknown or expired (TTL 24h).

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesThe job_id returned by an async tool call

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds significant behavioral context beyond the annotations: the four possible statuses (pending, completed, failed, not_found), the 24-hour TTL, and that completed returns the full result. These details are consistent with the readOnly and idempotent hints and clarify lifecycle behavior.

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, front-loaded with the core purpose. The second sentence efficiently enumerates the statuses and TTL without unnecessary detail.

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 polling tool with an output schema, the description covers all critical aspects: how to poll, what statuses exist, what each means, and the expiration behavior. It does not need to describe the return structure since an output schema is present.

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?

The schema description already fully explains the only parameter (job_id) as the value returned by an async tool call. The tool description adds little beyond that, so it meets the baseline for high schema coverage.

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 a specific verb ('Poll') and resource ('result of any tool called with async:true'), clearly stating its purpose. It also distinguishes itself from specialized result tools by emphasizing it works for any async tool.

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 explicitly states when to use: after any tool called with async:true, by polling the returned job_id. It also tells the agent what statuses to expect, which helps interpret the response. However, it does not explicitly mention exclusions or alternative result-fetching methods.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kalshi_marketsAInspect

Query live Kalshi prediction markets (CFTC-regulated US exchange). Returns question, implied probability (0-1, derived from the yes bid/ask mid), volume, open interest, close time and URL. Optional free-text filter on the question.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNoMaximum markets (default 20)
queryNoFree-text filter on the market question
statusNoMarket status (default open)
includeRawNoInclude Kalshi's original fields (default false)
includeUnpricedNoAlso return markets with no live bid/ask (default false — they carry no information)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the burden. It adds useful context beyond the schema, such as the derivation of implied probability from the yes bid/ask mid and the list of return fields. However, it doesn't explicitly state read-only nature, rate limits, or error scenarios, preventing a perfect score.

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 concise at two sentences, front-loaded with the main action and key output fields. Every phrase adds value, with no redundant or filler 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?

Given no output schema, the description adequately lists core return fields and the optional filter. It doesn't mention pagination, error handling, or the async job mechanism, but the parameters and schema fill in those gaps. Overall, it is complete enough for a straightforward query tool.

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 parameters are already well-documented. The description's mention of 'optional free-text filter' reinforces the query parameter but adds no new semantic detail. The probability derivation is output-related, not parameter-related.

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 a specific verb ('Query') and resource ('live Kalshi prediction markets') with additional qualifiers (CFTC-regulated US exchange), clearly distinguishing it from sibling tools like polymarket_markets. The return fields and optional filter are also specified.

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 use for Kalshi-specific prediction markets but does not explicitly mention alternatives or when-not-to-use. It states 'CFTC-regulated US exchange' as context, but doesn't compare with other market tools like prediction_markets_search, leaving usage largely to the tool's name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

knowledge_base_autoC
Read-only
Inspect

Base de connaissance automatique — Gapup agent-payable C-suite expertise (COO). Returns a structured, audited deliverable. Reference case: Klarna — knowledge base auto · Slack+Notion+Drive · 12 articles seed + structure 8 catégories. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
sourcesYes
topPainPointsYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds that it returns a structured, audited deliverable and that inputs are validated server-side, which is useful behavioral context. However, it does not disclose further traits such as pagination, rate limits, or output format details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, but the first is a label-like phrase and the reference case adds illustrative detail that isn't essential. It is compact but not highly efficient, with some redundancy between the title and first sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has nested parameters and produces a deliverable, but the description is sparse. It doesn't explain the deliverable's structure, how the knowledge base is constructed, what the output contains, or any prerequisites, making it incomplete for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only the async parameter is described in the schema (20% coverage). The description vaguely mentions 'documented case fields' but does not explain company, sources, topPainPoints, or their nested required structures, failing to compensate for the low schema coverage.

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 clearly identifies the tool as an automatic knowledge base for C-suite expertise, returning a structured, audited deliverable. It includes a reference case that adds specificity, though it lacks a direct verb like 'builds' or 'generates' and does not explicitly differentiate from sibling content 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?

No explicit guidance on when to use this tool versus alternatives. The reference case provides an example scenario but does not state exclusions or when to select this tool over sibling tools like content_engine or content_catalog.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kyc_screenerC
Read-only
Inspect

Screening KYC / AML / Sanctions — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: Q4 2026 onboarding — 8 entités (UBO chain LLC + SPV offshore), sanctions/PEP/adverse media. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
entitiesYes
riskAppetiteYesstandard
screeningScopeYes
onboardingPacketYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description's 'Screening' aligns with read-only behavior. The description adds that inputs are validated server-side and the output is 'audited', which provides some extra context. However, it does not disclose details like rate limits, result format, or any data retention implications, so it adds limited 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences but includes marketing fluff ('Gapup agent-payable C-suite expertise (RISK)') and a verbose reference case. The reference case adds some context but could be trimmed. Overall, it is not well-structured; key information is buried among promotional language.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (nested objects, 5 parameters, no output schema), the description is insufficient. It does not explain the deliverable's structure, how to handle async execution (despite the async parameter existing in schema), or how results integrate with other tools. The absence of output schema makes the description's lack of return-value details even more impactful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20%, so the description should compensate by explaining parameter meaning. It does not; it merely says 'send the documented case fields', which is a pointer to the schema rather than added semantics. The tool's nested objects (entities, screeningScope, onboardingPacket) are not explained in the description, leaving the agent to infer from names and enums.

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 clearly states the tool performs KYC/AML/sanctions screening and returns a structured deliverable. The verb 'Screening' plus resource 'KYC / AML / Sanctions' makes the core purpose clear. However, it does not differentiate from sibling tools like kyc_screener_batch or sanctions_screener_multi, missing an opportunity to clarify its specific niche.

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 description provides a reference case but offers no guidance on when to use this tool versus alternatives. There is no mention of batch vs. single screening, sanctions-only vs. full KYC, or any exclusions. The 'send the documented case fields' instruction is functional but not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kyc_screener_batchA
Read-only
Inspect

Async batch variant of kyc_screener. Accepts 1-100 names and returns immediately (<300ms) with a job_id. The screening runs in the background (up to 10 parallel KYC calls). Poll the result with kyc_screener_batch_result(job_id) after the eta_seconds hint. Each entry can specify name, type (person/company/any), and an optional birthdate hint. Use for bulk client onboarding, UBO list screening, or periodic AML refresh batches. Async tool — register a webhook via webhooks_manage(register, url, [job.completed]) to receive callbacks instead of polling. Faster + lighter.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
namesYesList of entities to screen (1-100). Each entry requires at minimum a name.

Output Schema

ParametersJSON Schema
NameRequiredDescription
job_idYesUnique job identifier — pass to kyc_screener_batch_result
statusYes
batch_sizeYesNumber of names queued for screening
eta_secondsYesEstimated seconds until result is ready
submitted_atYesISO-8601 submission timestamp
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses background execution with up to 10 parallel KYC calls, immediate job_id return, polling with kyc_screener_batch_result, and webhook callbacks. This goes beyond the annotations (readOnlyHint, destructiveHint) and provides substantial behavioral context.

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 core behavior and provides rich context about job polling and webhooks. It is slightly verbose where it summarizes entry fields already present in the schema, but remains efficient overall.

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 job submission, result retrieval, webhook alternative, use cases, and limits. The async parameter ambiguity and lack of error handling or job retention details prevent a higher score, though the output schema likely covers return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

While schema coverage is 100%, the description introduces ambiguity with the `async` parameter. It states the tool 'returns immediately (<300ms) with a job_id', implying it is always async, but the schema's `async` parameter suggests it can be toggled (true or false) with a different timing (<200ms). This inconsistency could lead to incorrect invocation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Async batch variant of kyc_screener' and explains it accepts 1-100 names, returning a job_id immediately. This distinguishes it from the sibling kyc_screener and the result tool, giving a specific verb, resource, and scope.

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 lists use cases: 'bulk client onboarding, UBO list screening, or periodic AML refresh batches.' It also provides alternatives like registering a webhook via webhooks_manage instead of polling, showing clear when-to-use and alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kyc_screener_batch_resultA
Read-onlyIdempotent
Inspect

Poll the result of a kyc_screener_batch job. Returns status=pending while running, status=completed with the full array of KYC results once done, status=failed on error, or status=not_found if the job_id is unknown or expired (TTL 24h). Call this after the eta_seconds hint returned by kyc_screener_batch.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesThe job_id returned by kyc_screener_batch (prefix: kycb_)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds rich behavioral detail beyond annotations: status transitions (pending/completed/failed/not_found), TTL 24h expiry, and the relationship to eta_seconds. Annotations already declare readOnly and idempotent, and the description aligns perfectly with no contradictions.

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 three sentences, each serving a clear purpose: stating the action, describing the response states, and giving usage instruction. It is front-loaded with the core purpose and contains no redundant or fluff content.

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 presence of a full output schema, annotations, and complete parameter documentation, the description covers all essential aspects: the polling lifecycle, error/expiration behavior, TTL, and the expected invocation timing. It is complete for its intended use.

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?

The schema description coverage is 100% for the single job_id parameter, which already explains its origin and format. The tool description does not add additional parameter semantics beyond mentioning expired/unknown job_id, which is part of the behavioral status not parameter definition. Baseline of 3 is 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 clearly states the tool's purpose with a specific verb and resource: 'Poll the result of a kyc_screener_batch job.' It also distinguishes itself from siblings by explicitly referencing the related kyc_screener_batch tool and detailing the polling statuses.

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 provides explicit when-to-use guidance: 'Call this after the eta_seconds hint returned by kyc_screener_batch.' However, it does not explicitly mention when not to use it or name alternative tools (e.g., kyc_screener for single screening), so it misses the full 5 criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

labor_law_alert_geoA
Read-onlyIdempotent
Inspect

Provides CHROs with daily alerts on new labor law changes by jurisdiction (state/country). Inputs include jurisdiction (ISO country/state code) and optional date range. Outputs structured legislative updates with summaries, effective dates, and source links. Useful for compliance monitoring, risk assessment, and policy adjustments. Keywords: labor law, compliance, legislation, jurisdiction, CHRO, HR policy.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
sinceNoOptional start date for changes (YYYY-MM-DD). Defaults to 7 days ago.
untilNoOptional end date for changes (YYYY-MM-DD). Defaults to today.
jurisdictionYesISO 3166-1 alpha-2 country code or ISO 3166-2 state/province code (e.g., 'US-CA', 'FR')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
changesYes
sourcesYes
warningsYes
last_updatedNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds value by detailing the output structure ('structured legislative updates with summaries, effective dates, and source links') and the nature of the alerts ('daily'). This enriches the behavioral context 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?

The description is three sentences: first states the purpose, second summarizes inputs and outputs, third lists use cases and keywords. It is front-loaded with the most critical information and contains no fluff.

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?

The description covers the tool's purpose, inputs, outputs, and use cases. It does not explain the async parameter, but that is detailed in the schema. The output schema exists, so return values are well-defined. Minor ambiguity about whether 'daily alerts' implies a push model, but overall it is 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 coverage is 100% with each parameter having a description. The description restates the key inputs (jurisdiction, date range) but does not add significant new semantics beyond the schema, which is already comprehensive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Provides CHROs with daily alerts on new labor law changes by jurisdiction (state/country).' It specifies the verb (provides alerts), the resource (labor law changes), and the scope (by jurisdiction), distinguishing it from 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says it is 'Useful for compliance monitoring, risk assessment, and policy adjustments,' giving clear context for when to use it. It does not explicitly name alternatives or exclusions, but the context is sufficient given the tool's niche.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ld_architectC
Read-only
Inspect

Architecte formation & développement — Gapup agent-payable C-suite expertise (CHRO). Returns a structured, audited deliverable. Reference case: Pennylane (180 FTE) — Catalogue 8 formations · 3 parcours individuels · ROI €480k · Payback 7 mois. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
teamYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
budgetYes
companyYes
learningNeedsYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, establishing the tool as safe and flexible. The description adds that it returns a structured, audited deliverable and mentions server-side validation, which implies possible error responses. It does not discuss rate limits, authentication, or mutation risks, but the read-only annotation lowers the burden. No contradiction with 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 concise (3 sentences). It front-loads the purpose and includes a reference case with metrics, which is somewhat tangential but not wasteful. The phrasing is dense and does not ramble. However, the reference case could be considered non-essential for invocation, so it loses a point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complex input schema (nested objects, 4 required parameters) and no output schema, the description is incomplete. It does not describe what the deliverable contains, how to structure inputs, or what 'documented case fields' refers to. The server-side validation mention hints at error handling but lacks specifics. A more complete description would explain the output format and input expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only async has a description). The tool description does not explain any parameter meaning or format. It only says 'send the documented case fields,' which is unhelpful. For a tool with nested objects (company, team, budget, learningNeeds), the description should clarify expected values, but it does not.

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 clearly names the domain (formation & développement, i.e., L&D architecture) and states it returns a structured, audited deliverable. The reference case (Pennylane) hints at output like a training catalog and ROI analysis. It distinguishes from sibling architect tools (e.g., recruiting_architect, revops_architect) by focusing on CHRO/L&D. However, it does not explicitly state 'design a training plan' or enumerate output components, leaving some ambiguity.

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 description provides no explicit when-to-use guidance or alternatives. It targets C-suite CHRO expertise but does not explain when ld_architect should be chosen over similar tools (e.g., lnd_ai_skill_forecast, lnd_skill_taxonomy_builder). The phrase 'send the documented case fields' implies a prerequisite but lacks detail on user scenarios or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lead_magnetsC
Read-only
Inspect

Aimants à leads — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Spendesk — Guide trésorerie startup SaaS B2B FR/EU (2024). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
icpYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
brandYes
leadMagnetYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and openWorldHint=true, and the description adds that 'Inputs are validated server-side' which is a useful behavioral detail. However, it does not explain what happens with invalid inputs, authentication requirements, or the structure of the audited deliverable beyond a generic promise.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but not well-structured; it leads with the redundant title and includes promotional fluff like 'agent-payable C-suite expertise.' The key functional information ('Returns a structured, audited deliverable') is buried after marketing language.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has complex nested objects and no output schema, yet the description provides no details on return value format, error handling, or parameter relationships. The reference case is the only concrete hint, which is insufficient for an agent to know what deliverable will be produced.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only 25% of top-level parameters have schema descriptions (async), and the description does not compensate. It vaguely says 'send the documented case fields' but never names or explains icp, brand, or leadMagnet. The reference case implies an example but not field-level semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Aimants à leads' which is just the French title, and then uses marketing language ('Gapup agent-payable C-suite expertise') without a clear action verb. It says 'Returns a structured, audited deliverable' but this is generic and could apply to any tool. The reference case provides an example but doesn't define the tool's core function.

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?

There is no explicit guidance on when to use this tool versus alternatives. It does not mention any sibling tools or constraints like 'use for lead magnet generation' or 'not for other content types.' The only directive is 'send the documented case fields,' which is about input submission, not usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lgpd_data_subject_rights_automatorA
Read-onlyIdempotent
Inspect

Automates LGPD Data Subject Access Requests (DSARs) for legal teams, handling Brazil-specific data retention, erasure, and access workflows. Accepts user identifiers, request type (access/rectification/deletion), and optional scope filters. Returns structured response with compliance status, warnings, and source references to Brazilian LGPD and CNIL decisions.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
scopeNoOptional list of data categories to limit the request
urgencyNoPriority level for processing
requestTypeYesType of LGPD request
userIdentifierYesCPF, email, or other unique identifier for the data subject

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
dataCategoriesNo
erasureDeadlineNo
complianceStatusNo
retentionPeriodDaysNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds context about returning structured responses with compliance status, warnings, and source references, which goes beyond annotations. However, it does not clarify async/job_id behavior or the apparent contradiction between 'erasure handling' and readOnlyHint, though this is not a direct contradiction. The mention of 'CNIL decisions' is odd for a Brazil-specific tool.

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 concise sentences, with the primary purpose front-loaded. Every sentence adds value without redundancy, making it easy for an agent to scan.

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?

It covers the main purpose, inputs, and output summary, but omits the behavior of the async parameter (job_id polling) and includes a potentially misleading reference to CNIL. Since an output schema exists, return details are covered, but the description still has notable gaps in operational context.

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 descriptions already cover parameters like userIdentifier and requestType. The description merely restates what the schema provides, adding no extra meaning or format details beyond what is already structured.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it automates LGPD Data Subject Access Requests (DSARs) for legal teams, specifying Brazil-specific workflows for retention, erasure, and access. It lists input types and request types, making its scope distinct from general privacy compliance tools.

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?

Usage is implied for handling LGPD DSARs, but there is no explicit guidance on when to use it versus alternative tools or any exclusions. The description does not mention competing privacy compliance tools or indicate when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lnd_ai_skill_forecastA
Read-onlyIdempotent
Inspect

Forecasts AI skill demand trends for CHROs by analyzing patent filings (USPTO PatFT) and job postings (BLS API). Returns 12-month skill demand projections with confidence scores, helping HR leaders prioritize workforce upskilling. Inputs: target AI skills (e.g., 'machine learning', 'NLP'), geographic focus (US state/country), and forecast horizon. Outputs include skill growth rates, patent filing trends, and job posting volumes. Keywords: AI workforce planning, skill gap analysis, talent strategy, patent trends, labor market data.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
regionYesGeographic focus (US state code or 'US' for national, e.g., 'CA', 'US')
skillsYesList of AI-related skills to forecast (e.g., ['machine learning', 'computer vision'])
horizon_monthsNoForecast horizon in months (3-24, default 12)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
forecastNo
metadataNo
warningsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, and the description adds behavioral context: data sources (USPTO PatFT, BLS API), output type (12-month projections with confidence scores), and input constraints (skills list, region, horizon). This goes beyond annotations without contradicting 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?

Description is a single structured paragraph with front-loaded purpose, then Inputs/Outputs sections and keywords. It is longer than necessary but each segment adds context; no filler. Could be tightened by removing keyword list.

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 output schema exists and annotations are rich, the description covers data sources, inputs, outputs, and target users. It does not mention async polling behavior, but that is documented in the async parameter description. Overall, complete for the tool's complexity.

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 covers 100% of parameters with descriptions; description repeats inputs ('target AI skills', 'geographic focus', 'forecast horizon') with an example ('machine learning', 'NLP') but adds no significant meaning beyond schema. Baseline 3 applies given high schema coverage.

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?

Description uses specific verb 'Forecasts' with clear resource 'AI skill demand trends' for CHROs, and distinguishes from siblings like job_postings_intelligence and patent_landscape by combining USPTO PatFT and BLS API data sources.

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?

Provides clear context: 'helping HR leaders prioritize workforce upskilling' and keywords like 'AI workforce planning, skill gap analysis, talent strategy' indicate intended use. However, it does not explicitly state when to prefer this over related siblings such as lnd_skill_taxonomy_builder or job_postings_intelligence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lnd_skill_taxonomy_builderA
Read-onlyIdempotent
Inspect

Generates a dynamic skill taxonomy for CHROs by cross-referencing patent filings (USPTO), job postings (BLS), and learning & development data (OECD). Inputs include industry codes, job roles, or skill clusters; outputs structured skill hierarchies with demand trends and competency gaps. Essential for workforce transformation, talent pipeline optimization, and future-proofing organizational capabilities. — pass async:true REQUIRED to avoid x402 timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
jobRoleNoTarget job role or occupation (e.g., 'Data Scientist')
industryYesNAICS industry code or sector name (e.g., '541511' for IT services)
timeRangeNoTime range for trend analysis
skillClusterNoOptional skill cluster to focus taxonomy (e.g., 'AI/ML')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
skillTaxonomyNo
industryTrendsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so safety profile is covered. The description adds the critical behavioral note that async:true is REQUIRED to avoid x402 timeout, and it describes the multi-source data processing. No contradiction with 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 three sentences, with the core functionality in the first sentence, inputs/outputs in the second, and a beneficial use-case statement in the third. The promotional 'Essential for' sentence is somewhat unnecessary but not overly verbose. The async warning is essential and tightly integrated.

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 output schema exists and schema coverage is 100%, the description adequately covers tool behavior, inputs, outputs, and the critical async requirement. It doesn't mention authentication or rate limits, but with read-only annotations and no destructive actions, these are less critical. The description is complete for practical invocation.

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 the description merely restates that inputs include industry codes, job roles, or skill clusters, which adds little beyond the schema. The schema already documents all parameters including async, timeRange enum, and descriptions. Therefore, the description provides no significant additional parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates a dynamic skill taxonomy for CHROs by cross-referencing specific data sources (USPTO, BLS, OECD), with outputs including skill hierarchies, demand trends, and competency gaps. This specific verb+resource distinguishes it from generic tools, though it doesn't explicitly differentiate from the sibling lnd_ai_skill_forecast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context (workforce transformation, talent pipeline optimization) but does not explicitly state when to use this tool versus alternatives like lnd_ai_skill_forecast. It mentions essential use cases but lacks exclusion criteria or alternative tool references. The async note is operational guidance, not usage vs alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

logistics_esg_incident_trackerA
Read-onlyIdempotent
Inspect

Tracks real-time ESG incidents in logistics networks for COOs, including supply chain disruptions, regulatory violations, and sustainability risks. Inputs: geographic region, incident type (e.g., emissions, labor, deforestation), and time range. Outputs: structured incident data with severity, location, and source verification. Uses CDP open data and UNCTAD STAT for comprehensive coverage. Keywords: ESG, logistics, supply chain, sustainability, compliance, risk management.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
regionYesGeographic region filter (e.g., 'Europe', 'Asia', 'Global')
endDateNoEnd date for incident search (ISO 8601)
severityNoMinimum severity level to include
startDateNoStart date for incident search (ISO 8601)
incidentTypeYesType of ESG incident to track

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
summaryNo
warningsNo
incidentsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly, openWorld, and idempotent hints, lowering the bar. The description adds context about data sources (CDP open data, UNCTAD STAT) and output structure (severity, location, source verification), which is useful but could include more about freshness or limits.

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 purpose, then inputs/outputs and data sources, all in three sentences. It is compact and informative, though the trailing keyword list is slightly redundant but not harmful.

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 tool's moderate complexity, the presence of an output schema, and strong annotations, the description sufficiently covers what the tool does, its data sources, and key outputs. It lacks alternative recommendations but remains complete for an agent to select and invoke it correctly.

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 the baseline is 3. The description lists core inputs (region, incident type, time range) but does not add new semantic details beyond what the schema already provides for each parameter (e.g., enum values, date formats).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool 'Tracks real-time ESG incidents in logistics networks for COOs', which is a specific verb+resource with a defined audience. It distinguishes from siblings by scoping to logistics networks and listing example incident types, making its unique purpose evident.

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 for COOs needing real-time ESG incident data, with input/output examples. However, it does not explicitly specify when to use this tool over alternative ESG-related siblings like supplier_esg_audit or sustainability_report, nor does it provide exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ma_arbitrage_hunterA
Read-onlyIdempotent
Inspect

As a CFO, identify cross-border M&A arbitrage opportunities by comparing target company valuations across different jurisdictions. Inputs include target company ticker, primary and secondary jurisdictions, and valuation metrics. Outputs include valuation gaps, FX-adjusted multiples, and jurisdiction-specific premiums/discounts. Uses real-time ECB FX rates, Yahoo Finance market data, and SEC EDGAR filings for public companies. Ideal for quick assessment of potential arbitrage in M&A scenarios.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
sectorNoIndustry sector for peer comparison (e.g., 'Technology')
targetTickerYesTarget company ticker symbol (e.g., 'AAPL')
valuationMetricNoValuation multiple to use for comparison
primaryJurisdictionYesPrimary jurisdiction for valuation comparison (e.g., 'US')
secondaryJurisdictionNoSecondary jurisdiction for valuation comparison (e.g., 'DE')

Output Schema

ParametersJSON Schema
NameRequiredDescription
fxRateNo
statusYes
sourcesNo
warningsNo
valuationGapNo
peerMultiplesNo
targetCompanyNo
primaryValuationNo
secondaryValuationNo
jurisdictionPremiumNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds valuable context by naming specific data sources (ECB FX rates, Yahoo Finance, SEC EDGAR) and noting applicability to public companies, which helps the agent anticipate dependencies and limitations.

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 five sentences long, with each sentence serving a clear purpose: purpose, inputs, outputs, data sources, and use case. It is front-loaded and free of fluff, though slightly longer than necessary.

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 output schema exists and the schema documents all parameters, the description is complete for an analysis tool. It covers purpose, inputs, outputs, data sources, and the specific arbitrage scenario. Minor gaps like explicit public-company-only limitation are implied rather than stated outright.

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 baseline is 3. The description groups input parameters (target ticker, primary/secondary jurisdictions, valuation metrics) but adds no additional syntax or format detail beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'identify cross-border M&A arbitrage opportunities' using a specific verb and resource. It distinguishes itself from siblings by emphasizing cross-border valuation comparisons, FX-adjusted multiples, and jurisdiction-specific premiums/discounts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use it (CFO quick assessment of M&A arbitrage) but does not explicitly mention alternatives like ma_deal_screener or state when not to use it. It lacks exclusionary guidance, but the scenario is well-specified.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ma_deal_screenerC
Read-only
Inspect

M&A Deal Screener — Gapup agent-payable C-suite expertise (CSO). Returns a structured, audited deliverable. Reference case: Salesforce M&A targets — 12 cibles screened · fit score + valuation + integration risk. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
acquirerYes
criteriaYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description does not contradict this. It adds that inputs are validated server-side and the deliverable is audited, but does not disclose async behavior or polling expectations, which the schema mentions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences, but includes promotional fluff ('Gapup agent-payable C-suite expertise (CSO)') and a reference case that, while informative, is not essential. It could be tighter and more focused on actionable guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/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 gives only a hint of outputs (fit score, valuation, integration risk). It omits important operational details like async/job_id handling, required field semantics, or response structure, making it incomplete for a complex tool with nested objects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 25% (only async is described). The description says 'send the documented case fields' but provides no details about acquirer, criteria, focus, or how to structure them. This fails to compensate for the low schema coverage.

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 clearly states it is an M&A deal screener that returns a structured, audited deliverable, and mentions screening targets with fit score, valuation, and integration risk. This distinguishes it from sibling tools like re_deal_screener, though the verb 'screener' is implied rather than explicit.

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 description provides a reference case (Salesforce M&A targets) but no explicit when-to-use or when-not-to-use guidance. It does not name alternatives or explain how this differs from similar tools like ma_arbitrage_hunter or deal_coach.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manufacturing_esg_compliance_mapperA
Read-onlyIdempotent
Inspect

As a COO, quickly identify ESG compliance gaps across manufacturing facilities using EPA TRI emissions data and GRI sustainability standards. Input facility identifiers or geographic regions to receive a prioritized remediation roadmap with risk scores, regulatory violations, and suggested corrective actions. Ideal for sustainability reporting, regulatory risk assessment, and operational improvement planning. Keywords: ESG compliance, manufacturing facilities, EPA TRI, GRI standards, sustainability reporting, regulatory risk.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoReporting year (default: current year - 1)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
regionNoGeographic region (state, county, or ZIP code) for facility search
includeGriNoInclude GRI standards analysis (default: true)
facilityIdsYesList of EPA facility identifiers (e.g., TRIFID)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
summaryNo
warningsYes
facilitiesYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, and there is no contradiction with the description. The description adds output details (prioritized roadmap, risk scores, corrective actions) but no additional behavioral traits such as rate limits, data freshness, or external API dependencies. Thus it meets but does not exceed the lower bar set by annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is informative but wordy, including a role-playing opener ('As a COO') and a redundant keyword list. The main purpose is front-loaded, but the extra sentences and keywords could be trimmed for tighter structure.

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 5 parameters, an output schema, and rich annotations, the description provides sufficient context: purpose, inputs, outputs, and use cases. It does not explain return values (covered by output schema) or async behavior (covered by schema), but overall it is complete enough for an agent to select and invoke the tool appropriately.

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 covers all 5 parameters with descriptions (100% coverage). The description mentions facility identifiers and geographic regions but largely restates schema info without adding new semantic details. It does not explain parameter interdependencies or format specifics beyond what is already in 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?

The description clearly states the tool's function: 'identify ESG compliance gaps across manufacturing facilities' using specific data sources (EPA TRI, GRI standards). It also differentiates from siblings by focusing on manufacturing facilities and a remediation roadmap, unlike generic ESG audit tools such as esg_audit_multi.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage context: 'Ideal for sustainability reporting, regulatory risk assessment, and operational improvement planning' and mentions inputs (facility identifiers or geographic regions). However, it does not explicitly exclude alternatives or name sibling tools, so it lacks explicit when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manufacturing_waste_heatmapA
Read-onlyIdempotent
Inspect

Generates manufacturing waste heatmaps for COOs using EPA TRI and FAOSTAT data. Input manufacturing site identifiers or geographic regions to analyze waste streams, emissions, and resource inefficiencies. Outputs include waste intensity maps, circular economy opportunity rankings, and cost-saving potential. Ideal for sustainability strategy and operational efficiency improvements. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearYesAnalysis year (2010-2023)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
regionNoGeographic region (country code or sub-national region) for aggregated analysis
site_idsNoList of manufacturing site identifiers (EPA TRI IDs or FAO facility codes)
waste_typesNoSpecific waste types to analyze (e.g., ['metals', 'chemicals', 'energy'])

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
heatmap_dataNo
opportunitiesNo
benchmark_dataNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds valuable context about data sources, output types, and the async behavior to avoid timeouts. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences, front-loaded with the core purpose, then data sources, output types, and usage context. Every sentence adds distinct information with no redundancy or 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 tool with an output schema and rich annotations, the description is sufficiently complete. It covers the purpose, audience, data sources, input types, output categories, and async usage. No critical gaps for agent selection and invocation.

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 each parameter already has a description. The description adds some guidance about using site identifiers or geographic regions and the async parameter, but it does not fundamentally extend the schema meaning. Baseline of 3 is 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 clearly states the tool generates manufacturing waste heatmaps for COOs using specific data sources (EPA TRI and FAOSTAT). This specific verb+resource pair distinguishes it from siblings like manufacturing_esg_compliance_mapper and procurement_six_sigma_waste_hunter.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear use-case context ('Ideal for sustainability strategy and operational efficiency improvements') and identifies the target audience (COOs). It does not explicitly mention when not to use or name alternative tools, so it misses full exclusion/alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

margin_doctorC
Read-only
Inspect

Marge par deal — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub — 8 deals pipeline · €28k ARR sous-marge détecté · Récupération €4.2k/an · Playbook 4 scénarios. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
dealsYes
companyYes
productYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the description adds value only through the note that inputs are validated server-side and that the output is an audited deliverable. This is helpful context but stops short of describing pagination, rate limits, or error behavior.

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 concise and front-loaded with the core purpose. The reference case adds concrete context, and the validation note is useful. It is not overly verbose, though the reference case could be shortened.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the nested schema, lack of output schema, and low parameter descriptions, the description should provide more context. It mentions a structured deliverable but never clarifies its format, how results are returned (async support exists but is unmentioned), or what to do with the output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 25%, and the description does not compensate. It refers to 'documented case fields' without explaining what each parameter means or how they map to the reference case. Property names give some hints, but the description adds no semantic depth.

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 clearly indicates it computes margin per deal and returns a structured, audited deliverable, with a concrete reference case. However, it does not explicitly differentiate from closely related siblings like 'margin_doctor_finance' or 'pricing_in_deal'.

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?

No explicit guidance on when to use this tool versus alternatives. The description mentions CRO expertise and a reference case, but does not state when not to use it or point to specific sibling tools that cover overlapping use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

margin_doctor_financeC
Read-only
Inspect

Médecin des Marges — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Reference case: Alan — ARR €60M · marge brute 68% → 79% · €3,2M fuites identifiées · Rule of 40 : 14→38. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
costBreakdownYes
marginTargetsYes
unitEconomicsYes
incomeStatementYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is known. The description adds that inputs are validated server-side and that the deliverable is 'structured, audited', which is useful context. However, it does not mention the async behavior, which is left to the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short (two sentences plus reference case), but the opening 'Médecin des Marges — Gapup agent-payable C-suite expertise (CFO)' is marketing-focused and the reference case is optional. It front-loads enough but includes some non-essential content, making it neither fully concise nor overly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with six parameters, nested objects, and no output schema, the description is severely under-specified. It gives no details on expected input structure, deliverables, async flow, or error handling, leaving the agent with almost no guidance on how to properly invoke and interpret results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With schema description coverage at only 17%, the description needed to explain the five required objects (company, incomeStatement, costBreakdown, unitEconomics, marginTargets) but instead only says 'send the documented case fields' without defining those fields. It adds no value beyond the schema for parameter meaning.

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 clearly states it 'Returns a structured, audited deliverable' and provides a reference case showing margin analysis (gross margin 68% → 79%, €3.2M leaks identified). This implies a margin diagnostic tool, distinct from the generic margin_doctor sibling, though not explicitly differentiated.

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?

No explicit when-to-use or when-not-to-use guidance is provided. The phrase 'Gapup agent-payable C-suite expertise (CFO)' positions it for CFO use, but does not state alternatives or exclusions, leaving the agent to guess relative to the many sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_entry_strategistC
Read-only
Inspect

Stratégie d'entrée marché — Gapup agent-payable C-suite expertise (CSO). Returns a structured, audited deliverable. Reference case: OpenAI Inde 2026 — entrée marché 1.4Md utilisateurs · 5 forces Porter + 4 entry modes + 18-month roadmap + risk register. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
preferencesYes
targetMarketYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true and openWorldHint=true. The description adds that it validates inputs server-side and returns a structured, audited deliverable, which goes beyond the annotations. However, it does not disclose the async behavior (despite an async parameter in the schema), nor any potential limitations like rate limits or output size. The added context is helpful but incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact (two sentences), but it wastes space on promotional fluff ('Gapup agent-payable C-suite expertise (CSO)') that does not help an agent. The core information is front-loaded, but the filler could be removed. It is neither excessively long nor perfectly efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex tool with 5 parameters, 3 required nested objects, no output schema, and low schema coverage. The description fails to explain what inputs are actually needed or what the deliverable looks like in detail. It mentions a reference case and frameworks, but an agent would not know how to construct the required 'case fields' or interpret the response. The description is insufficient for the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only async has a description). The description itself adds no parameter semantics—it merely says 'send the documented case fields' without explaining any of the nested fields (company, targetMarket, preferences, focus). For a tool with complex nested objects and low schema coverage, this is inadequate. It fails to compensate for the schema's sparse descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool produces a market entry strategy ('Stratégie d'entrée marché') and returns a structured, audited deliverable. It references specific frameworks (Porter's 5 forces, entry modes, roadmap, risk register), giving a concrete sense of what it does. However, it does not explicitly distinguish this from sibling tools like market_research_brief or market_sizing, so it falls short of a 5.

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 description offers no guidance on when to use this tool versus alternatives. There is no mention of 'use this for X, use that for Y' or any prerequisites. The only operational note ('send the documented case fields') is about input submission, not about selection criteria. This is a significant gap for a strategy tool among many similar strategic options.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

marketing_roi_dashboardC
Read-only
Inspect

Dashboard ROI marketing — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Gapup Hub — H1 2026 · 5 canaux · ROI 3.2× · Attribution W-shaped · Budget €60k. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
arpuEurYes
channelDataYes
companyNameYes
periodLabelYes
totalRevenueAttribEurYes
targetAttributionModelYes
currentAttributionModelYes
totalMarketingBudgetEurYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is known. The description adds that inputs are validated server-side and that the deliverable is 'audited,' which gives some behavioral context. However, it does not disclose error behavior, response format beyond 'structured,' or any rate limits. It does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, but the first sentence is cryptic ('Gapup agent-payable C-suite expertise (CMO)') and the reference case, while concrete, uses unexplained abbreviations and is not essential to understanding the tool's function. It is not bloated, but the words could be better spent explaining inputs and output semantics.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 parameters, 8 required, and no output schema, the description is severely incomplete. It offers no explanation of the required case fields, no description of the output structure (only 'structured, audited deliverable'), and no guidance on how to interpret the result. The agent would be left guessing, especially since the schema documentation is nearly absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has low description coverage (11%), with only 'async' described. The description's 'send the documented case fields' fails to explain the meanings of companyName, channelData, attribution models, or any other parameters. It adds no semantic value beyond the field names and types already present in the schema, leaving the agent uninformed about what values to supply and how they affect the output.

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 clearly indicates the tool produces a marketing ROI dashboard deliverable, mentioning 'Dashboard ROI marketing' and 'Returns a structured, audited deliverable.' It is distinct from sibling tools like 'programmatic_attribution_calibrator' by focusing on a full dashboard/report rather than a specific calibration function. However, the phrasing is somewhat jargon-heavy and does not explicitly state 'use this to compute and present marketing ROI' in a straightforward way.

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 description provides no explicit guidance on when to use this tool versus alternatives. It mentions 'send the documented case fields' as a requirement but does not explain prerequisites or scenarios where this dashboard is preferred over other marketing analysis tools. The reference case gives a context example but no comparison to siblings or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_research_briefA
Read-only
Inspect

Generate a structured, sourced market research brief on any market, sector or industry. Returns a machine-readable note with six sections: an executive overview, a market-size estimate (with assumptions and sources — no invented figures), key players, demand & technology trends, risk factors, and a traceable source list. When to use this tool: an agent needs to assess a new market, validate a business opportunity, prepare a pitch, or benchmark a sector before a strategic decision. Data is assembled live from keyless public sources: Wikipedia (sector context), World Bank (macro GDP/population for market sizing), REST Countries (geo context). Fields that cannot be sourced are marked 'unavailable' rather than estimated. Inputs: topic (required), geo and sector (optional refinements).

ParametersJSON Schema
NameRequiredDescriptionDefault
geoNoOptional geography to scope the brief (country name, region, or continent — e.g. 'France', 'Southeast Asia')
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
topicYesMarket or sector to research (e.g. 'electric vehicle batteries', 'B2B SaaS CRM Europe', 'telemedicine Africa')
sectorNoOptional parent sector to disambiguate the topic (e.g. 'healthcare', 'energy', 'software')

Output Schema

ParametersJSON Schema
NameRequiredDescription
geoYes
risksYes
topicYes
sectorYes
trendsYes
sourcesYesAll sources consulted, with URL and retrieval status
overviewYesExecutive summary of the market
key_playersYes
generated_atYesISO-8601 timestamp of generation
market_size_estimateYesMarket size estimate with hypotheses. All figures sourced or marked unavailable.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnlyHint, openWorldHint), the description discloses key behavioral traits: data is 'assembled live from keyless public sources' (Wikipedia, World Bank, REST Countries), fields that cannot be sourced are 'marked unavailable rather than estimated,' and the output is a 'machine-readable note with six sections.' This adds substantial transparency about data provenance, accuracy safeguards, and output structure, which the annotations do not cover.

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 moderately lengthy but every sentence contributes value: purpose, output structure, use cases, data sources, error handling, and inputs. It is well-organized and front-loaded with the primary action. Slightly verbose due to enumerating the six sections, but not wasteful.

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 tool's complexity and the presence of an output schema, the description is remarkably complete. It explains what the tool does, what output format to expect, when to use it, how data is sourced, and how missing data is handled. It also covers all inputs succinctly. There are no obvious gaps for an agent to misuse the tool.

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?

The input schema already provides 100% coverage, describing each parameter clearly (topic, geo, sector, async). The description only adds 'Inputs: topic (required), geo and sector (optional refinements),' which merely restates the schema. It does not introduce new semantic insight beyond what the schema already offers, so the baseline score of 3 is 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 starts with a specific verb and resource: 'Generate a structured, sourced market research brief on any market, sector or industry.' It also details six distinct sections and emphasizes 'no invented figures,' which clearly distinguishes it from generic 'market_sizing' or 'competitive_deep_dive' tools. The scope is explicit and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a dedicated 'When to use this tool' clause listing four concrete scenarios: assessing a new market, validating a business opportunity, preparing a pitch, or benchmarking before a strategic decision. While it clearly states when to use it, it does not explicitly mention when not to use it or name alternative tools, so it misses the full 'when-not/alternatives' criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

market_sizingC
Read-only
Inspect

Dimensionnement marché TAM/SAM/SOM — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Gapup Hub — TAM/SAM/SOM IA décisionnelle C-suite Europe · TAM €48Md · SOM €280M Year-3. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
targetYes
horizonNo
productYes
approachNo
competitorCompsNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, and the description adds that the deliverable is structured and audited and inputs are validated. It does not detail output format or async behavior, but the annotations reduce the need.

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 brief and front-loaded, with two sentences conveying purpose and context. The reference case, while illustrative, includes specific numbers that may be unnecessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has nested objects and six parameters with no output schema, yet the description lacks guidance on parameter structure or expected output details. The reference case offers some context but is insufficient for a complex tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is low (17%), and the description does not describe any of the six parameters. It only references 'documented case fields' without listing them, so the agent cannot infer parameter semantics 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 clearly states the tool performs TAM/SAM/SOM market sizing and returns a structured, audited deliverable. The reference case adds specificity. However, it does not explicitly differentiate from sibling tools like market_research_brief or market_entry_strategist.

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 use for market sizing cases via the reference case but provides no explicit guidance on when to choose this over alternatives. It mentions server-side validation and 'documented case fields' but no exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ma_tax_efficiency_mapperA
Read-onlyIdempotent
Inspect

For CFOs evaluating cross-border M&A deals: analyzes tax efficiency by mapping withholding tax rates, transfer pricing regulations, and permanent establishment risks across specified jurisdictions. Inputs include acquirer/target jurisdictions, deal structure, and transaction value. Outputs jurisdiction-specific tax exposure, efficiency scores, and risk flags. Uses World Bank Tax Rates API, IMF SDR data, and SEC EDGAR filings for corporate tax disclosures. — pass async:true REQUIRED to avoid x402 timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
deal_structureNoType of M&A transaction structure
transaction_valueNoDeal value in USD millions
target_jurisdictionYesISO 3166-1 alpha-3 country code of the target entity
acquirer_jurisdictionYesISO 3166-1 alpha-3 country code of the acquiring entity
include_transfer_pricingNoWhether to analyze transfer pricing risks

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
tax_treatiesNo
efficiency_scoreNo
target_tax_ratesNo
acquirer_tax_ratesNo
transfer_pricing_riskNo
permanent_establishment_riskNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds significant behavioral context beyond annotations: specific data sources (World Bank, IMF, SEC), output types (exposure, efficiency scores, risk flags), and a mandatory async requirement to avoid a x402 timeout. This enriches the read-only/open-world/idempotent hints provided by 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?

Five sentences, each contributing distinct information (audience, analysis scope, inputs, outputs, data sources, async requirement). Well-structured and front-loaded with purpose. Slightly longer than strictly necessary but no 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?

Given the complexity of cross-border tax analysis, the description covers purpose, inputs, outputs, data sources, and a critical async requirement. With an output schema present and strong annotations, this is complete enough for an agent to select and invoke 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%, so baseline is 3. The description adds meaning for the async parameter by explaining it is REQUIRED to avoid timeout, and mentions acquirer/target jurisdictions, deal structure, and transaction value as inputs. It doesn't detail all params, but the async note goes beyond 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?

The description states a specific verb ('analyzes tax efficiency') and resource ('mapping withholding tax rates, transfer pricing regulations, and permanent establishment risks across specified jurisdictions'). It clearly distinguishes from siblings by focusing on tax efficiency for cross-border M&A, and lists concrete outputs.

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?

Provides clear context ('For CFOs evaluating cross-border M&A deals') and describes inputs, but does not explicitly name alternatives or when-not-to-use. The async note also gives practical usage guidance. Lacks explicit exclusions or alternative tool mentions, which prevents a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

meddic_scoringB
Read-only
Inspect

Scoring MEDDIC du pipeline — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub — Pipeline 8 deals · €2.1M · MEDDIC score moyen 62/100 · 3 deals at-risk. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
dealsYes
companyYes
productYes
salesCycleNo
targetWinRateNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true and openWorldHint=true. The description adds server-side validation and an audited deliverable, which are useful behavioral details beyond the annotations. No contradictions detected.

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 concise, with the purpose front-loaded. The reference case adds length but provides a concrete example without being verbose. Overall, each sentence contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given a complex nested schema with 6 parameters and no output schema, the description is too sparse. It doesn't describe expected deal fields, scoring logic, or result format beyond 'structured deliverable.' The reference case hints at metrics but is insufficient for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17% (async only). The description does not explain company, product, deals, salesCycle, or targetWinRate. It only vaguely says 'send the documented case fields,' providing almost no semantic value for the parameters.

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 clearly states the tool scores the pipeline against the MEDDIC framework and returns a structured, audited deliverable. This is a specific verb+resource combination that distinguishes it from generic sales tools, though it doesn't explicitly name sibling 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 context 'Gapup agent-payable C-suite expertise (CRO)' implies the tool is for MEDDIC scoring in sales pipelines, but there is no explicit when-to-use or alternatives guidance. The usage is implied rather than clearly delineated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

model_behavior_drift_monitorA
Read-onlyIdempotent
Inspect

Monitors AI model output drift by comparing current model responses against MLCommons safety benchmarks. Designed for risk and compliance personas to detect behavioral deviations that may indicate safety or alignment issues. Accepts model outputs or identifiers and returns structured drift metrics with statistical significance. Sources data from MLCommons public benchmark APIs.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
thresholdNoDrift threshold for alerting
currentOutputsNoRecent model outputs to analyze for drift
baselineMetricsNo
modelIdentifierYesUnique identifier for the model being monitored

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
driftMetricsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is established. The description adds meaningful behavioral context by revealing the external data source ('MLCommons public benchmark APIs') and the return type ('structured drift metrics with statistical significance'), which are not present in the schema or annotations. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, each carrying meaningful information: purpose, target persona, input/output summary, and data source. It is front-loaded with the core action and stays brief without unnecessary detail.

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 tool with 5 parameters, a nested baselineMetrics object, and an output schema, the description covers the essential aspects: what it does, who it is for, what inputs it accepts, what outputs it returns, and where data comes from. It does not explicitly explain when to prefer it over sibling tools, but the purpose and benchmark-specific focus are strong. The output schema covers return details, so further return documentation is unnecessary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 80%, so the schema already documents most parameters (modelIdentifier, currentOutputs, threshold, baselineMetrics). The description adds a general note about accepting 'model outputs or identifiers' but does not clarify the relationship between currentOutputs and baselineMetrics or the meaning of threshold beyond schema defaults. This meets the baseline for high schema coverage without significant added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Monitors AI model output drift by comparing current model responses against MLCommons safety benchmarks.' It identifies the specific resource (model output drift) and methodology, distinguishing it from related tools like bias_amplification_tracker or hallucination_confidence_meter by its benchmark-driven drift focus.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage context: 'Designed for risk and compliance personas to detect behavioral deviations that may indicate safety or alignment issues.' It also explains accepted input forms ('model outputs or identifiers') and output type. However, it does not explicitly state when not to use this tool or name alternatives, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

model_safety_certification_checkerA
Read-onlyIdempotent
Inspect

Verifies AI model safety certifications against MLCommons and IEEE 7000 standards. Designed for risk management personas to assess model compliance with established safety benchmarks. Accepts model identifiers or certification IDs and returns structured verification results with source references.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
model_idYesUnique identifier for the AI model
standardNoSafety standard to check against
certification_idNoSpecific certification ID to verify

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
complianceNo
last_verifiedNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true. The description adds that it 'returns structured verification results with source references,' which is useful behavioral context beyond the annotations. It does not contradict annotations and provides a clear picture of the output.

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 long, front-loaded with the key action ('Verifies AI model safety certifications...'), and contains no filler. Every sentence contributes essential information about purpose and output.

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 four parameters, an output schema, and strong annotations (readOnly, idempotent, openWorld), the description provides sufficient context for an agent to invoke the tool correctly. It mentions the standards, input flexibility, and output nature. It could add more about when to prefer this over neighboring safety tools, but the existing context is adequate given the structured data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter is already well-documented. The description adds semantic value by stating 'Accepts model identifiers or certification IDs,' which highlights the flexibility in input and suggests that model_id and certification_id can be used interchangeably. This goes beyond the individual parameter descriptions.

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 opens with 'Verifies AI model safety certifications against MLCommons and IEEE 7000 standards,' which is a specific verb (verifies) plus resource (AI model safety certifications) and scope (specific standards). It distinguishes itself from other safety-related tools by naming these standards and the compliance assessment purpose.

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 states it is 'Designed for risk management personas to assess model compliance,' providing context but no explicit when-to-use vs alternatives. It does not mention any exclusions or reference sibling tools such as safety_guardrail_breach_analyzer or model_behavior_drift_monitor, leaving the decision boundary unclear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

monte_carlo_portfolioA
Read-only
Inspect

Pure-compute Monte Carlo portfolio simulation using Geometric Brownian Motion (GBM). Models a multi-asset portfolio across time with contributions, withdrawals, and annual rebalancing. Returns full probability distribution of terminal wealth, percentile paths, drawdown stats, and Sharpe ratio. Modes: simulate (full Monte Carlo) | glide_path (lifecycle 110-age target-date allocation) | stress_test (4 historical crises: 2008 GFC / 2000 dotcom / 1970s stagflation / 2020 COVID). No external data needed — all computed from asset assumptions. Ticker defaults built-in: SPY/VOO/VTI 7%/15%, QQQ 9%/20%, TLT/BND 3%/6%, GLD 5%/18%, BTC 30%/70%. ICP: asset managers, family offices, retail wealth advisors, robo-advisor agents, retirement planners. 10k simulations × 30 years runs in <3s on V8 JIT.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYessimulate = full Monte Carlo GBM | glide_path = lifecycle target-date allocation | stress_test = 4 historical crisis scenarios
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
assetsYesPortfolio assets. Weights must sum to 1.0 (auto-normalized if not).
simulationsNoNumber of Monte Carlo simulations (1000-100000). Default 10000.
horizon_yearsYesInvestment horizon in years (1-50).
target_value_eurNoTarget terminal portfolio value in EUR. Used to compute probability_target_achieved.
confidence_intervalsNoPercentiles to compute in the output distribution. Default [5, 25, 50, 75, 95].
initial_investment_eurYesInitial capital in EUR (e.g. 100000 for €100k).
withdrawals_annual_eurNoAnnual withdrawal amount in EUR for decumulation phase (e.g. 50000 for €50k/yr).
contributions_annual_eurNoAnnual contribution in EUR (e.g. 12000 for €1000/month).
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, and the description reinforces this with 'pure-compute' and 'no external data needed.' It adds significant behavioral transparency by detailing performance (<3s for 10k×30y), the output (distribution, paths, drawdown, Sharpe), and built-in assumptions (ticker defaults), which go 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose, then logically covers modes, defaults, ICP, and performance. Most sentences earn their place, but the 'ICP' line is arguably filler and could be omitted without losing tool guidance. Still, it remains well-structured and not overly verbose given the tool's complexity.

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 compensates by clearly stating what is returned (full probability distribution, percentile paths, drawdown stats, Sharpe ratio). It also covers mode specifics, performance, and defaults, making it self-contained for an agent to invoke correctly across the 10-parameter, 4-required tool.

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 10 parameters, so the baseline is 3. The description adds meaningful context by explaining the mode values (glide_path→110-age allocation, stress_test→4 crises) and enumerating default ticker return/volatility percentages, which are not present in the schema. This enriches parameter understanding beyond the basic property descriptions.

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 specifies a clear action (Monte Carlo portfolio simulation) using a precise method (GBM) and distinct resources (multi-asset portfolio, terminal wealth distribution). It also differentiates itself through modes (simulate, glide_path, stress_test) and the 'pure-compute' nature, distinguishing it from sibling tools like financial_model_3statement.

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?

Provides clear context on intended users (asset managers, family offices, etc.) and mode-specific scenarios (glide_path for target-date, stress_test for historical crises). However, it does not explicitly mention when not to use the tool or name alternative tools, so there is no direct exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mttr_breakdown_analyzerA
Read-onlyIdempotent
Inspect

As a CTO, analyze your team's incident response efficiency by breaking down Mean Time To Recovery (MTTR) into root causes: code defects, infrastructure failures, or process bottlenecks. This tool ingests GitHub issue and pull request data alongside Snyk vulnerability reports to provide a detailed breakdown of MTTR components, helping you identify systemic weaknesses in your incident resolution pipeline. Input your GitHub repository details and time range to receive a structured analysis of MTTR contributors with actionable insights.

ParametersJSON Schema
NameRequiredDescriptionDefault
repoYesFull GitHub repository name (owner/repo)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
sinceYesStart date for analysis (ISO 8601)
untilYesEnd date for analysis (ISO 8601)
snykTokenNoSnyk API token for vulnerability data (optional)
githubTokenYesGitHub personal access token for API access

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
breakdownNo
topContributorsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, openWorldHint, and idempotentHint, which align with the description's 'analyze' language. The description adds value by disclosing data sources (GitHub issues/PRs, Snyk vulnerabilities) and the structured nature of the output, but it does not detail limitations, rate limits, or async behavior beyond the schema.

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 three sentences and front-loaded with the primary purpose. Each sentence adds relevant information: what it does, what data it ingests, and what the user needs to provide. It is slightly verbose but retains every sentence with value.

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 tool's complexity (6 params, output schema present), the description covers the purpose, data sources, and input requirements. It does not need to explain return values because an output schema exists. Minor gap: no explicit mention of when to use async or optional snykToken, but the schema covers that.

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 parameters are documented in the schema. The description only loosely references 'repository details and time range' without adding new semantic meaning beyond what the JSON schema already provides for repo, since, until, and tokens. Baseline 3 is 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 a specific verb ('analyze') and clearly defines the resource: team's MTTR broken down into root causes. It distinguishes itself from siblings like dora_metrics_deep_dive by focusing on MTTR attribution (code, infra, process) and specifying data sources (GitHub, Snyk).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for CTOs wanting to analyze incident response efficiency via MTTR breakdown, and it states the required inputs. It provides context but does not explicitly name alternatives or when not to use this tool versus siblings such as change_failure_root_cause_classifier.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nis2_supply_chain_dependency_mapA
Read-onlyIdempotent
Inspect

Generates a visual dependency map of supply chain relationships under the NIS2 Directive, scoring criticality based on regulatory sources like EUR-Lex and CNIL decisions. Designed for legal and compliance teams to identify high-risk third-party dependencies. Inputs include organization identifiers and optional scope filters. Outputs structured dependency data with criticality scores and regulatory references.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
depthNoDependency chain depth to analyze
scopeNoAnalysis scope: full supply chain or critical dependencies only
sectorNoNIS2 sector classification (e.g., 'energy', 'transport')
organizationIdYesUnique identifier for the organization (e.g., VAT number or LEI)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
dependenciesNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the description need only add context. It adds that criticality is scored using regulatory sources like EUR-Lex and CNIL decisions, and that outputs include criticality scores and regulatory references. This goes beyond the annotations and gives the agent useful behavioral expectations.

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 three sentences, front-loaded with the core action, then target audience, then input/output summary. It contains no redundant or filler content. Every sentence contributes to understanding the tool's purpose and usage.

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 a rich input schema (100% coverage), a declared output schema, and annotations covering safety and idempotency, the description provides sufficient context for an agent to select and invoke the tool. It mentions regulatory sources, intended users, and outputs, which together make the tool's role clear without needing to restate schema details.

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?

The input schema has 100% description coverage, so the baseline is 3. The description only summarizes that inputs include 'organization identifiers and optional scope filters,' which adds no meaning beyond the schema. It does not elaborate on depth, sector, or async behavior, but the schema already documents these sufficiently.

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 states a specific verb and resource: 'Generates a visual dependency map of supply chain relationships under the NIS2 Directive.' It further specifies that it scores criticality based on regulatory sources, which distinguishes it from generic supply chain or vendor risk tools. The mention of being 'Designed for legal and compliance teams' clarifies its intended domain.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: it is for legal and compliance teams to identify high-risk third-party dependencies under NIS2. However, it does not explicitly mention alternatives or when not to use this tool, so it lacks exclusionary guidance. The intended use case is clear enough to guide an agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

observability_log_pattern_minerA
Read-onlyIdempotent
Inspect

As a CTO, extract anomalous log patterns from public breach reports (e.g., Verizon DBIR) and MITRE ATT&CK techniques to optimize SIEM rules and observability pipelines. Inputs include threat actor groups, MITRE tactics (e.g., 'TA0005'), or log sources (e.g., 'AWS CloudTrail'). Outputs structured patterns with MITRE mappings, prevalence scores, and detection recommendations. Ideal for reducing false positives and improving breach detection coverage. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
tacticYesMITRE ATT&CK tactic ID (e.g., 'TA0005')
techniqueNoMITRE ATT&CK technique ID (e.g., 'T1059')
log_sourceNoLog source type (e.g., 'AWS CloudTrail', 'Windows Event Log')
max_resultsNo
threat_actorNoThreat actor group name (e.g., 'APT29')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
metadataNo
patternsYes
warningsYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, reducing the burden on the description. The description adds behavioral context by noting 'Pass async:true to avoid timeout,' indicating potential slow execution and providing a mitigation strategy. It does not cover rate limits or auth, but the async hint adds value beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences, each earning its place: purpose, inputs, outputs, and async note. It is front-loaded with the primary function and avoids fluff. Slightly verbose with 'As a CTO' framing, but still concise overall.

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 tool has an output schema, the description does not need to detail return values. It covers inputs, use cases, and the async fallback, which is sufficient for a moderately complex tool with 6 params. It lacks explicit prerequisites or edge cases, but the presence of an output schema and annotations fills gaps, making it fairly complete.

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 83%, so the schema already describes most parameters. The description adds semantic meaning by giving examples: 'threat actor groups, MITRE tactics (e.g., 'TA0005'), or log sources (e.g., 'AWS CloudTrail')' and explains that outputs include 'MITRE mappings, prevalence scores, and detection recommendations,' which connects the parameters to the tool's purpose. This enhances the schema's dry parameter names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'extract anomalous log patterns from public breach reports ... and MITRE ATT&CK techniques to optimize SIEM rules and observability pipelines.' This uses a specific verb ('extract') and resource (log patterns, breach reports, MITRE techniques), distinguishing it from sibling tools like observability_metric_anomaly_detector, which focuses on metric anomalies rather than log pattern mining.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use the tool: 'Ideal for reducing false positives and improving breach detection coverage.' It also explains inputs and outputs, giving a sense of use cases. However, it does not explicitly mention alternatives or when not to use it, so it lacks explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

observability_metric_anomaly_detectorA
Read-onlyIdempotent
Inspect

As a CTO, quickly identify anomalous cloud metrics (CPU, latency, memory) by comparing your infrastructure against AWS public benchmarks and CVE-linked hardware risks. Input your observed metrics (e.g., CPU utilization, request latency) and receive a risk assessment with potential root causes. Ideal for performance troubleshooting, security hardening, and capacity planning. Keywords: cloud observability, anomaly detection, CVE hardware risks, AWS benchmark comparison.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
regionNo
metricTypeYes
instanceTypeNo
observedValueYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
cveRisksNo
warningsNo
anomalyScoreNo
benchmarkValueNo
deviationPercentNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the agent knows it's a safe, non-mutating operation. The description adds valuable context about the comparison methodology (AWS benchmarks, CVE hardware risks) and the output (risk assessment with root causes), going beyond the annotations without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately concise but includes redundant elements like the keyword list and the persona 'As a CTO'. The first three sentences carry the core information, while the fourth is filler. It could be tightened without losing meaning.

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?

The description covers the primary inputs (observed metrics), the output (risk assessment with root causes), and common use cases. It does not explain optional parameters (region, instanceType) or async behavior, but the presence of an output schema and annotations compensates for some of this. Overall, it provides enough context for an agent to decide when and how to invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only 'async' has a description). The tool description mentions 'observed metrics (e.g., CPU utilization, request latency)', which hints at metricType and observedValue, but does not clarify units, expected value ranges, or the meaning of 'region' and 'instanceType'. It fails to compensate for the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool identifies anomalous cloud metrics (CPU, latency, memory) by comparing against AWS public benchmarks and CVE-linked hardware risks. This specific verb+resource+method distinguishes it from sibling tools like observability_log_pattern_miner (logs) and sre_slo_breach_predictor (SLO predictions).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly lists ideal use cases: performance troubleshooting, security hardening, and capacity planning. It provides clear context for when to use the tool, but does not mention exclusions or alternative tools, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

onboarding_salariesC
Read-only
Inspect

Onboarding opérationnel des salariés — Gapup agent-payable C-suite expertise (COO). Returns a structured, audited deliverable. Reference case: Pennylane (FR fintech SaaS, ~250 FTE) — 5 parcours 30/60/90 jours · Engineering / Sales / CS / Design / People Ops. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
rolesYes
companyYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the agent knows this is a safe read operation. The description adds that it returns an 'audited deliverable' and that inputs are 'validated server-side', which provides some extra behavioral context. However, it does not describe the output structure, any potential side effects, or what 'audited' means in practice. No contradiction with annotations found.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively short, but it is not front-loaded with a clear functional statement. It mixes French and English, includes a specific reference case that may not be relevant to all users, and uses jargon like 'Gapup agent-payable C-suite expertise (COO)' without explanation. Every sentence does not earn its place; the reference case could be omitted in favor of a clearer general description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex tool with nested objects, 4 parameters, and no output schema. The description fails to explain what the deliverable actually contains, how to interpret the 'roles' array, what 'parcours 30/60/90 jours' means, or what the expected output format is. Given the complexity, the description is severely incomplete and leaves the agent without enough information to correctly invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 25% (only the 'async' parameter has a description). The description does not explain the meaning or expected format of 'company', 'roles', or 'focus'. The phrase 'send the documented case fields' is unhelpful and does not clarify what parameters are needed or how to structure them. The tool fails to compensate for the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states it is about 'Onboarding opérationnel des salariés' and says it returns a 'structured, audited deliverable', giving some sense of the tool's function. However, it lacks a clear, direct statement of what the tool does beyond this vague phrase, and does not distinguish it from sibling tools like 'comp_plan_architect' or 'talent_intelligence'. The reference to 'Pennylane' and '5 parcours 30/60/90 jours' hints at onboarding pathway generation but remains unclear.

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 description provides no explicit guidance on when to use this tool versus alternatives. It mentions a specific reference case and says 'send the documented case fields', but does not explain in which scenarios this tool is appropriate or what distinguishes it from other HR/talent tools. The usage context is only implied by the tool's name and the reference case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

operational_dashboardsC
Read-only
Inspect

Dashboards opérationnels — Gapup agent-payable C-suite expertise (COO). Returns a structured, audited deliverable. Reference case: Qonto (5 départements · 12 KPIs) — 4 dashboards live en 3 semaines · time-to-décision -55%. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
techStackYes
departmentsYes
kpiRequestsYes
primaryDashboardToolNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and the description adds server-side validation and an 'audited deliverable', which is consistent and adds some context. However, no mention of rate limits, required permissions, or output format, so it's adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively short and front-loaded with the tool name, but it includes promotional content (reference case, time-to-decision metric) that isn't essential. The core behavioral information is present but mixed with marketing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, and the description gives only a vague 'structured, audited deliverable' without format details. It doesn't mention the async option or required fields, leaving a complex 6-parameter tool under-specified for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17%, and the description merely says 'send the documented case fields' without listing or explaining any parameters. With 6 parameters including nested objects, the agent gets no help understanding what to send.

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?

Description identifies an operational dashboard deliverable for C-suite/COO, illustrated by the Qonto reference case. However, it lacks an explicit verb like 'generates' or 'creates', relying on 'Returns' to imply production, so it's not fully clear as a one-liner.

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?

No guidance on when to use this tool over sibling dashboard tools (e.g., marketing_roi_dashboard). The only hint is 'C-suite expertise (COO)' and the operational focus, but there are no exclusions or explicit alternative comparisons.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

oss_dependency_velocity_trackerA
Read-onlyIdempotent
Inspect

As a CTO, track the update velocity of your project's open-source dependencies to assess their impact on DORA metrics like deployment frequency and lead time. This tool fetches release history and version adoption data from npm registry and libraries.io, providing insights into dependency freshness, update frequency, and potential risks. Input a list of package names and optional version ranges to analyze. Outputs structured dependency velocity metrics and warnings about stale or rapidly changing packages.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
packagesYes
lookbackDaysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
metricsNo
sourcesNo
warningsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, openWorld, and idempotent hints, so the description doesn't need to restate those. It adds valuable behavioral context by naming the external data sources (npm registry and libraries.io), describing the output (structured metrics and warnings), and noting what triggers warnings (stale or rapidly changing packages). No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three well-organized sentences: purpose, data sources, input, and output. It is front-loaded with the core use case, then provides necessary details without fluff or repetition. Every sentence adds value.

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 tool's moderate complexity and the presence of an output schema, the description covers the essential points: intended user, input, data sources, and output. It is nearly complete but lacks explicit mention of the optional 'lookbackDays' parameter and has a slight ambiguity with 'version ranges' (schema expects 'version' as a string). These small gaps prevent a perfect score.

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 low (33% with only async described). The description compensates by explaining the main parameter ('Input a list of package names and optional version ranges') and clarifying the version field's role. However, it does not mention the 'lookbackDays' parameter at all, leaving a gap in understanding for that parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool's purpose: tracking update velocity of open-source dependencies and assessing impact on DORA metrics. It uses a specific verb-resource combination ('track the update velocity') and distinguishes itself from related siblings like dependency_vulnerability_scan by focusing on velocity rather than vulnerabilities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a clear use case (CTO assessing DORA impact) and implies when to use this tool, but does not explicitly mention alternatives or exclusion scenarios. It lacks a direct 'use this instead of X' statement, but the context is understandable and relevant for the target user.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ossf_scorecard_trend_analyzerA
Read-onlyIdempotent
Inspect

As a CTO, analyze OSSF Scorecard trends for your top 10-50 dependencies to identify security regressions or deteriorating project health. Input GitHub repository names (owner/repo), get structured trend data including score deltas, check failures, and risk flags. Uses OSSF Scorecard API and GitHub Archive for historical context. Ideal for proactive dependency management and risk assessment.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
lookbackDaysNoNumber of days to analyze trends for
repositoriesYesList of GitHub repositories in owner/repo format
minScoreThresholdNoMinimum acceptable score to flag as risky

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
resultsNo
sourcesNo
warningsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds useful behavioral context by revealing data sources ('OSSF Scorecard API and GitHub Archive') and the shape of results ('score deltas, check failures, and risk flags'). This goes beyond what annotations provide, though it does not discuss rate limits or error handling.

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 efficient and well-structured: it opens with the purpose, then input, then data sources and use case. Each of the three sentences contributes distinct value with no redundancy or filler. Perfectly sized for an AI agent to parse.

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 that an output schema exists, the description does not need to detail return values, and it doesn't. It covers purpose, input format, data sources, and intended use. It could improve by mentioning the async parameter or potential limitations, but the annotations and schema fill many gaps. Overall it is complete enough for a read-only analysis tool.

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% for all 4 parameters, so the schema already documents each parameter's meaning and constraints. The description only restates that input is 'GitHub repository names (owner/repo)', which is already in the schema. It adds no new semantic depth beyond the schema, so the baseline 3 is 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 clearly states a specific action ('analyze OSSF Scorecard trends') and a specific resource ('top 10-50 dependencies') with a clear goal ('identify security regressions or deteriorating project health'). This distinguishes it from sibling tools like dependency_vulnerability_scan by focusing on trend analysis over time.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a clear use case, stating it is 'Ideal for proactive dependency management and risk assessment.' It gives a strong context for when to use the tool, though it does not explicitly name alternatives or exclusion conditions. This meets the 'clear context, no exclusions' level.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

outbound_sequencerC
Read-only
Inspect

Séquences outbound — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub → CFO + CRO B2B SaaS France — Séquence 6 touches multi-canal · Taux réponse +180%. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
icpYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
offerYes
excludedAnglesNo
targetAccountsNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations declare readOnlyHint=true, so the agent already knows this is a non-mutating operation. The description adds that inputs are validated server-side and that the deliverable is 'audited', which provides some behavioral context. However, it doesn't disclose return format, rate limits, or any side effects, leaving gaps for an agent.

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 relatively brief and front-loaded with the purpose. It includes a reference case that adds context without excessive length. Minor redundancy: 'Séquences outbound' repeats the title/name. Overall, it communicates efficiently, though some jargon ('Gapup agent-payable C-suite expertise') may obscure clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters (including nested objects) and no output schema, the description is incomplete. It does not explain the structure of the 'structured, audited deliverable', the meaning of 'documented case fields', or how the parameters relate to the output. The absence of examples or further detail makes it hard for an agent to invoke it correctly beyond basic schema validation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only 'async' is described). The description says 'send the documented case fields' but doesn't explain what those fields are or how to populate them. The reference case gives an indirect example (CFO + CRO B2B SaaS France), but it doesn't compensate for the lack of parameter-level guidance.

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 identifies the tool as generating outbound sequences ('Séquences outbound') and mentions a specific reference case (Gapup Hub → CFO + CRO B2B SaaS France), indicating it produces a structured deliverable. However, the action verb is weak ('Returns'), and it doesn't explicitly distinguish itself from sibling tools like battle_plan or sales_enablement_architect.

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?

No explicit guidance on when to use this tool versus alternatives. The reference case implies a B2B SaaS C-suite outreach context, but there is no statement about when to prefer this tool or what it excludes. The only instruction ('send the documented case fields') is about invocation, not usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

partnership_synergiesA
Read-onlyIdempotent
Inspect

Identify and rank strategic partnership opportunities for a company. Returns 5-12 high-fit partnership targets, each scored on revenue lift, time-to-impact, integration complexity and regulatory risk, with a rationale and a recommended first-step outreach playbook. When to use this tool: the user wants business-development or alliance ideas, or M&A target screening before deeper due diligence. Inputs: the user's own company and the strategic axis to unlock through partnership (e.g. enter a new market via distribution, add AI infrastructure without rebuilding). Delivered by Antoine, the AI CSO of the Gapup portfolio.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
constraintsNo
selfCompanyYes
strategicAxisYesWhat strategic axis to unlock through partnership (e.g. 'enter US market via distribution', 'leverage AI infra without rebuild')
currentPartnershipsNoExisting alliances to factor in

Output Schema

ParametersJSON Schema
NameRequiredDescription
kpisNo3-5 headline KPI bubbles
sourcesNo
recommendationsNoPrioritised next steps
executiveSummaryYesBoard-ready partnership opportunity overview
partnershipTargetsYes5-12 ranked partnership targets
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context by describing the output structure: 5-12 ranked targets, scoring dimensions, rationale, and an outreach playbook, which goes beyond the structured 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 well-structured and front-loaded with the core purpose, then adds usage context and inputs. The sentence about 'Delivered by Antoine' is minor fluff but does not significantly detract. It is longer than the two-sentence ideal but stays efficient.

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 an output schema present, the description doesn't need to detail return values. It provides the necessary context for agent selection: when to use, what inputs are required, and what kind of output to expect. The tool's complexity is moderately high, but the description covers the essential decision-making information.

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 50%. The description clarifies the two required parameters by calling out 'Inputs: the user's own company and the strategic axis to unlock through partnership,' and gives an example for strategicAxis. However, optional parameters like focus and constraints are not mentioned, so the description only partially compensates for the schema's gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Identify and rank strategic partnership opportunities for a company.' It adds specificity by noting it returns 5-12 targets scored on dimensions like revenue lift and regulatory risk, which distinguishes it from generic advice tools.

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 provides a 'When to use this tool' clause: 'the user wants business-development or alliance ideas, or M&A target screening before deeper due diligence.' This gives clear context for usage, though it does not explicitly name alternative tools or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

patent_landscapeA
Read-only
Inspect

Search, analyze and map patent landscapes across major jurisdictions (US, EP, WO, CN, JP, KR). Three modes: (1) search — find patents by keywords, company name or inventor name; (2) landscape — aggregate distributions: top assignees, top inventors, CPC class breakdown, filings by year, citation leaders, white-space innovation opportunities; (3) lookup — retrieve a specific patent by number (e.g. US10000000B2, EP3456789A1, WO2023/123456). Primary source: WIPO PatentScope (WO PCT, keyless). Optional sources: USPTO PatentsView (US, env PATENTSVIEW_API_KEY), EPO OPS (EP/WO, env EPO_OPS_CONSUMER_KEY + EPO_OPS_CONSUMER_SECRET), Lens.org (global, env LENS_API_TOKEN). Use cases: freedom-to-operate (FTO) analysis, R&D gap identification, VC due diligence IP audit, competitor patent portfolio mapping, inventor network analysis. SLA: <=24s p95 (parallel fetches, 8s per source). Cache: 24h TTL (patent data stable). Quality score: 30 pts per retrieved source (max 90), +10 if >=10 patents, +10 bonus for landscape mode with non-empty top_assignees.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNosearch: keyword/inventor/assignee search; landscape: aggregate distributions; lookup: fetch by patent number. Default: "search"
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesKeywords, company/inventor name, or patent number (e.g. "machine learning", "Tesla Inc", "US10000000B2")
date_toNoISO date YYYY-MM-DD — latest filing date
date_fromNoISO date YYYY-MM-DD — earliest filing date
max_resultsNoMax patents to return (5-50). Default: 20
jurisdictionsNoJurisdictions to include. Default: ["US","EP","WO"]

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
queryYes
statusYes
patentsYes
sourcesYes
landscapeNo
quality_scoreYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already set readOnlyHint=true and destructiveHint=false; the description goes beyond by specifying SLA (24s p95), cache TTL (24h), source selection behavior, and a quality scoring formula. This adds meaningful operational context 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 dense but efficiently structured with numbered modes, bullet-like source lists, and clear use cases. It is longer than average, but each clause provides operational value (SLA, cache, scoring), so it earns its place without being bloated.

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 complex multi-mode tool with 7 parameters, an async flag, and external sources, the description covers modes, sources, use cases, performance expectations, and quality scoring. An output schema exists, so omitting return-value details is appropriate. The only minor gap is not mentioning the async pattern in the description itself, but the schema covers 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?

Input schema has 100% coverage with descriptions for every parameter. The description supplements this by explaining the three modes in detail and clarifying that 'query' can be keywords, a company/inventor name, or a patent number—semantics not fully captured by the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource ('Search, analyze and map patent landscapes') and then details three distinct modes (search, landscape, lookup), making the tool's purpose unmistakable. It clearly distinguishes from siblings like patent_ownership_audit by focusing on landscape mapping across jurisdictions.

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?

Provides explicit use cases (FTO analysis, R&D gap identification, VC due diligence, competitor mapping, inventor network analysis) that signal when to invoke the tool. It doesn't name direct alternatives or exclusions, but the use-case list is strong contextual guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

patent_landscape_asyncA
Read-only
Inspect

Async extended variant of patent_landscape. Supports max_results up to 200 (vs 50 in sync mode) and an optional include_citation_graph flag that enriches each patent with its 2-level citation graph (parent patents that cite this one + child patents cited by this one). Returns immediately (<300ms) with a job_id. Poll the result with patent_landscape_result(job_id) after eta_seconds (~180s). Use for deep R&D white-space analysis, freedom-to-operate (FTO) audits, VC due diligence IP mapping, or large-scale competitor portfolio analysis. Async tool — register a webhook via webhooks_manage(register, url, [job.completed]) to receive callbacks instead of polling. Faster + lighter.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNosearch / landscape / lookup. Default: "search"
queryYesKeywords, company/inventor name, or patent number (e.g. "machine learning", "Tesla Inc")
date_toNoISO date YYYY-MM-DD — latest filing date
date_fromNoISO date YYYY-MM-DD — earliest filing date
max_resultsNoMax patents to return (5-200). Default: 20
jurisdictionsNoJurisdictions to include. Default: ["US","EP","WO"]
include_citation_graphNoIf true, enriches each patent with a 2-level citation graph (parents + children). Adds significant processing time — use for deep analysis only. Default: false.

Output Schema

ParametersJSON Schema
NameRequiredDescription
job_idYesUnique job identifier — pass to patent_landscape_result
statusYes
eta_secondsYes
submitted_atYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description discloses key behavioral traits beyond annotations: returns immediately with a job_id, eta_seconds ~180s, supports max_results up to 200 vs 50, and include_citation_graph adds processing time. Annotations already indicate read-only, and the description does not contradict them; it adds substantial async-specific context.

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?

Description is well-structured and front-loaded with the variant identification, then capability details, async behavior, polling/webhook options, and use cases. Every sentence earns its place; the only minor vagueness is 'Faster + lighter', but overall it is compact for the information conveyed.

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 an async tool, the description covers the full workflow: submission, immediate job_id, ETA, polling via patent_landscape_result, and webhook registration. It also explains extended capabilities and use cases, while output schema handles return value details. This is complete given the tool's complexity.

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 adds semantic value for max_results (explicitly contrasting with sync limit) and include_citation_graph (explains 2-level graph, parent/child definition, and processing overhead), going beyond the schema for these distinctive parameters.

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?

Clearly identifies itself as 'Async extended variant of patent_landscape' and explains its specific capabilities (max_results up to 200, include_citation_graph flag). It distinguishes itself from the sync sibling by describing async behavior and points to patent_landscape_result for polling.

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 lists use cases: deep R&D white-space analysis, freedom-to-operate audits, VC due diligence IP mapping, and large-scale competitor portfolio analysis. It also contrasts with sync mode limits and gives an alternative to polling via webhooks_manage, making the when-to-use vs alternatives clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

patent_landscape_resultA
Read-onlyIdempotent
Inspect

Poll the result of a patent_landscape_async job. Returns status=pending while running, status=completed with the full patent landscape report once done, status=failed on error, or status=not_found if the job_id is unknown or expired (TTL 24h). Call this after the eta_seconds hint returned by patent_landscape_async (~180s).

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesThe job_id returned by patent_landscape_async (prefix: patl_)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds valuable behavioral details: status transitions, TTL of 24h for job_id expiry, and the meaning of not_found. This goes beyond annotations without contradicting them.

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?

Description is three sentences, front-loaded with the core purpose ('Poll the result'), then enumerates statuses and timing. Every sentence contributes, with no fluff or repetition.

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 tool's polling complexity and presence of an output schema, the description covers all critical aspects: statuses, error/expiry behavior, and when to call. It does not need to explain return values because the output schema exists.

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 covers 100% of the single parameter, describing job_id as returned by patent_landscape_async with prefix patl_. The description references the parameter contextually but adds no new semantic details beyond the schema, so baseline 3 is 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 clearly identifies the tool as a polling mechanism for patent_landscape_async jobs, listing distinct statuses (pending, completed, failed, not_found). It distinguishes this from the async launch tool and related patent tools, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance to call after the eta_seconds hint from patent_landscape_async (~180s), which is clear usage context. It does not explicitly mention when not to use it or alternative tools, but for a polling tool this context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

patent_ownership_auditA
Read-onlyIdempotent
Inspect

Audits patent ownership for employees or contractors, identifying gaps where inventors may not have properly assigned patent rights to the company. Designed for CHROs to ensure IP compliance and mitigate legal risks. Inputs: employee/contractor names or IDs, optional date range. Outputs: list of patents, ownership status, flagged gaps, and assignment details. Sources: USPTO PatFT and EPO Espacenet public records. Keywords: patent audit, IP compliance, employee inventions, contractor agreements, CHRO.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
dateRangeNoOptional date range for patent filings
employeeIdsNoList of employee or contractor IDs (optional if names provided)
employeeNamesYesList of employee or contractor full names to audit

Output Schema

ParametersJSON Schema
NameRequiredDescription
gapsNo
statusYes
patentsNo
sourcesNo
warningsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations declaring readOnlyHint, openWorldHint, and idempotentHint, the description adds valuable context about sources (USPTO/EPO), outputs (patents, ownership status, flagged gaps), and the audit nature. It does not contradict annotations and provides extra detail beyond the structured metadata.

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 structured bullet-like but in prose, including purpose, audience, inputs, outputs, sources, and keywords. It is slightly longer than necessary, but every sentence adds value and it is not bloated.

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 tool's complexity (4 params, nested object, output schema), the description covers purpose, inputs, outputs, and data sources comprehensively. It does not explain the async param but that is covered in the schema. It is complete for an AI agent to understand and invoke the tool.

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 parameters are fully documented. The description mentions inputs (names/IDs, optional date range) but adds minimal detail beyond schema descriptions. It reinforces the meaning but does not significantly extend it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Audits') and resource ('patent ownership for employees or contractors'), and differentiates from siblings by focusing on ownership gaps and CHRO compliance. It explicitly lists inputs, outputs, and data sources, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context—designed for CHROs for IP compliance and legal risk mitigation—but does not explicitly name alternative tools or when not to use this tool. It implies the use case well but lacks explicit exclusions or alternative references.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

payment_rails_cost_analyzerA
Read-onlyIdempotent
Inspect

As a CFO, compare cross-border payment rail costs (SWIFT, SEPA, local ACH, stablecoins) with FX conversion fees and settlement times. Input source/destination countries and amount, receive cost breakdown, FX rates, and settlement time estimates. Uses ECB FX rates and World Bank remittance price data for accurate cost analysis. Ideal for optimizing international payment strategies and reducing transaction expenses.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
amountYesTransaction amount in source currency
source_countryYesISO 3166-1 alpha-2 country code of payment origin
source_currencyNoISO 4217 currency code of source amount
destination_countryYesISO 3166-1 alpha-2 country code of payment destination
destination_currencyNoISO 4217 currency code of destination amount

Output Schema

ParametersJSON Schema
NameRequiredDescription
amountNo
statusYes
fx_rateNo
sourcesNo
warningsNo
total_costNo
source_countryNo
settlement_timeNo
source_currencyNo
destination_countryNo
destination_currencyNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide read-only, idempotent, and open-world hints. The description adds meaningful behavioral context by disclosing data sources (ECB FX rates, World Bank remittance price data) and what outputs to expect (cost breakdown, FX rates, settlement time estimates). No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, front-loaded with the core purpose, and every sentence adds value (purpose, input/output, data sources). No redundant or vague 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?

Given the tool complexity, schema coverage, and presence of an output schema, the description is complete enough. It explains what the tool does, key inputs, outputs, and data sources. It could mention optional currency inputs explicitly, but those are already in the 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 the baseline is 3. The description mentions the key required parameters (source/destination countries, amount) but adds little beyond that—for instance, it does not elaborate on currency parameters or async behavior, which are already documented in 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?

The description clearly states the tool's function: comparing cross-border payment rail costs (SWIFT, SEPA, local ACH, stablecoins) including FX fees and settlement times. This is a specific verb+resource+scope that distinguishes it from related tools like fx_rate or x402_payment_flow_analyzer.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for use: 'Ideal for optimizing international payment strategies and reducing transaction expenses.' It does not explicitly name alternatives or exclusions, but the purpose is unambiguous enough for an agent to decide when to invoke it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pentest_scope_estimatorA
Read-only
Inspect

Estimateur de scope pentest — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Answers: For a pentest on with assets, what is the effort and cost estimate? · How much should I budget for a web application + API penetration test for SOC 2 Type II compliance? · What is the standard engagement plan (PTES phases + deliverables) for a pentest? · Which engagement type (black-box/grey-box/white-box/red-team) is recommended for my context? · What are the prerequisites and risks for a pentest engagement on my cloud infrastructure? Reference case: Acme SaaS Inc — Fintech B2B EU · web-app + API REST · 12 microservices Node.js AWS · . Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
scope_typeYes
tech_stackYes
asset_countNo
target_geosNo
engagement_typeNo
retest_includedNo
business_contextYes
compliance_frameworksNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and openWorldHint=true. The description adds that it returns a structured, audited deliverable and validates inputs server-side, providing useful context beyond the annotations. There is no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than necessary, containing branding noise ('Gapup agent-payable C-suite expertise (RISK)') and a list of example questions that could be condensed. It front-loads the purpose but could be more tightly structured.

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?

With 9 parameters and no output schema, the description provides a reasonable overview and usage examples, but lacks details on the deliverable's structure, how to interpret estimates, and edge-case behavior. The validation note is helpful but does not fully compensate for the missing output schema and under-documented parameters.

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 only 11%, so the description must compensate. It adds meaning via placeholders like <scope_type>, <tech_stack>, and <N> assets, plus a reference case (Acme SaaS, web-app, Node.js AWS) that maps to several parameters. However, it does not clarify all parameters; target_geos, retest_included, and async are not addressed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as a pentest scope estimator, with specific examples of the questions it answers (effort/cost estimates, budget, engagement plan, engagement type, prerequisites/risks). It distinguishes itself from sibling tools by focusing on pentest scoping/estimation rather than vulnerability scanning or attack surface monitoring.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides multiple concrete usage scenarios via example questions, such as budgeting for SOC 2 compliance and choosing engagement types. It gives clear context for when to use the tool but does not explicitly mention when not to use it or name alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pitch_deck_storylineA
Read-onlyIdempotent
Inspect

Build a complete investor pitch-deck storyline for a company. Returns an 8-20 slide narrative tailored to the target audience (seed-vc / series-a-vc / growth-vc / strategic / bank / grant) — each slide carrying a title, key points, a speaker note and a visual hint — plus a Q&A bank of 10-15 likely board questions and traps to avoid. Output is deck JSON ready to export to Google Slides, Notion or Pitch.com. When to use this tool: the user is preparing a fundraise, a board meeting, or an investor presentation. Inputs: the company profile and the target audience type. Delivered by Sarah, the AI Fundraising lead of the Gapup portfolio.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
audienceYesTarget audience — adapts tone + emphasis + Q&A bank
keyFactsYesHard facts to weave into the deck (traction numbers, milestones, awards)
slideCountYes12 = standard VC deck, 15 = bank-friendly with annexes, 20 = growth/strategic

Output Schema

ParametersJSON Schema
NameRequiredDescription
kpisNo3-5 headline KPI bubbles surfaced from keyFacts
slidesYes8-20 slide objects ready to export to Google Slides / Notion / Pitch.com
qaBanksYes10-15 anticipated investor questions with recommended answers
recommendationsNoFundraising preparation actions
executiveSummaryYesOne-paragraph elevator pitch distilled from the deck
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description doesn't bear the full safety burden. The description adds useful context about the output structure and export targets (Google Slides, Notion, Pitch.com), but it does not disclose potential caveats like latency, async behavior, or failure modes. It also includes an irrelevant 'Delivered by Sarah' persona note, which adds noise rather than behavioral insight.

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 concise and front-loaded, stating the main action and output first, then usage context. The 'When to use' phrase is helpful, but the sentence 'Delivered by Sarah, the AI Fundraising lead of the Gapup portfolio' is unnecessary fluff that does not help the agent select or invoke the tool. Otherwise, every sentence earns its place.

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?

The tool has moderate complexity (nested objects, 5 params, output schema), and the description covers its purpose, when to use it, inputs, and output format. Since an output schema exists, detailed return-value explanation is unnecessary. The description is missing mention of the async option, but the schema documents it, so the context is complete enough for an agent to use the tool correctly.

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 high (80%), with detailed descriptions for audience ('adapts tone + emphasis + Q&A bank'), slideCount ('12 = standard VC deck...'), and keyFacts. The description merely restates that inputs are 'the company profile and the target audience type,' adding no new meaning beyond the schema. It does not clarify the 'company' nested object parameters or the 'async' flag, but the schema already covers these, so the baseline 3 is 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 opens with a specific verb+resource: 'Build a complete investor pitch-deck storyline for a company.' It further details the slide narrative (8-20 slides, each with title, key points, speaker note, visual hint) and the Q&A bank, making the tool's function unambiguous. While sibling tools like capital_strategy or investor_shortlist are adjacent, none claim to produce a full pitch-deck storyline, so this description clearly distinguishes the tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states the trigger condition: 'When to use this tool: the user is preparing a fundraise, a board meeting, or an investor presentation.' This gives clear context for when the tool is appropriate. However, it does not mention when not to use it or suggest alternative tools, so it falls short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

polymarket_eventsAInspect

List live Polymarket events, ranked by volume. An event groups several related markets — use it to discover a topic, then polymarket_markets to price it. Returns title, description, start and end dates, and URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNoMaximum events (default 20)
includeClosedNoInclude finished events (default false)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses the ranking (by volume), the return fields (title, description, dates, URL), and implies a read-only operation. It does not mention edge cases like pagination or rate limits, but for a simple list tool, this is adequate.

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, front-loaded with the action and resource. It avoids unnecessary details and earns every word, making it easy to parse.

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?

The tool is simple with no output schema, but the description adequately covers purpose, output fields, and the relationship to the sibling tool. It lacks mention of the 'async' option, but that is in the schema. Overall, complete for a list tool without needing additional context.

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 the parameter definitions already document each parameter (async, limit, includeClosed). The description adds no extra meaning beyond the phrase 'live events' which aligns with includeClosed's default. Since the schema handles parameter semantics, the description adds no additional value.

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 a specific verb ('List') and resource ('live Polymarket events'), immediately clarifying what the tool does. It also distinguishes itself from the sibling tool 'polymarket_markets' by explicitly stating the relationship and next step.

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 when to use this tool ('use it to discover a topic') and directs users to the alternative 'polymarket_markets' for pricing. This provides clear context for selecting the tool versus its siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

polymarket_marketsAInspect

Query live Polymarket prediction markets, ranked by volume. Returns question, implied probability (0-1, derived from the outcome price), volume, liquidity, end date and URL. Optional free-text filter on the question.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
limitNoMaximum markets (default 20)
queryNoFree-text filter on the market question
includeRawNoInclude Polymarket's original fields (default false)
includeClosedNoInclude settled markets (default false)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the burden of disclosure. It reveals that the tool queries 'live' markets, ranks by volume, and explains the derivation of implied probability from outcome price. It also lists the return fields. While it does not mention rate limits or async behavior, the schema's async parameter description covers that. This is adequate for a read-only query tool.

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, front-loaded with the main action and resource, then a concise list of return fields and the optional filter. Every word contributes to understanding, with no filler or repetition.

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?

The description covers the core purpose, output fields, and a key option (free-text filter). Given there is no output schema, describing the return fields is important. The schema adequately covers all parameters. It could add more about when to use async or differentiate from sibling search tools, but overall it is complete enough for effective use.

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?

All five parameters are described in the input schema (100% coverage), so the description does not need to compensate. It adds minimal semantic value by mentioning the free-text filter on the question, but that is redundant with the schema. Baseline score of 3 applies when schema coverage is high.

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 begins with a specific verb ('Query') and resource ('live Polymarket prediction markets, ranked by volume'), clearly stating what the tool does. It also lists key returned fields and differentiates from sibling tools like kalshi_markets (different platform) and polymarket_events (events vs markets).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for use: querying live Polymarket markets with optional free-text filtering. However, it does not explicitly mention when not to use it or provide alternatives, such as prediction_markets_search or polymarket_events. This is clear context without exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

positioning_strategistB
Read-only
Inspect

Stratège de positionnement — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Gapup Hub vs Tableau/Pigment/Looker — Angle de différenciation + 5 piliers messaging + battle plan. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
marketYes
companyYes
productYes
aspirationsNo
competitorsYes
customerPainsYes
currentWeaknessesNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so the description adds some value by stating it returns an audited deliverable and that inputs are validated server-side. It also hints at 'agent-payable' cost implications, but doesn't elaborate on side effects, rate limits, or failure modes beyond validation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, but the opening phrase is a fragment and the reference case may be confusing rather than helpful. It is not excessively long, but the structure could be clearer with a more standard subject-verb-object format.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 8 parameters, nested objects, and no output schema, the description does not explain the return format in detail, does not list required input fields, and gives only a single reference case. This is insufficient for the complexity of the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 13%, and the description does not compensate. It merely says 'send the documented case fields' without enumerating or explaining any parameters, leaving the agent to rely on sparse schema metadata. The description adds essentially no semantic value for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the tool's function: it returns a structured positioning deliverable with differentiation angle, 5 messaging pillars, and battle plan. This is a specific verb-resource combination that distinguishes it from sibling tools like pricing_strategist or market_entry_strategist.

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 the tool should be used when a positioning strategy is needed, and 'send the documented case fields' gives a basic instruction. However, it does not explicitly contrast with alternatives or provide when-not-to-use scenarios, so it falls short of clear exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

press_influencerC
Read-only
Inspect

Presse & influenceurs — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Agicap (levée Série C €70M) — CP + 12 contacts presse Tier-1 · plan de diffusion 14 jours. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
budgetNo
companyYes
targetMediaYes
announcementYes
targetAudienceYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds that inputs are 'validated server-side' and the result is an 'audited deliverable', which gives some behavioral context. However, it does not describe output structure, potential errors, or any side effects beyond what the annotations cover. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences and not overly long, but part of it is promotional ('Gapup agent-payable C-suite expertise (CMO)') and adds no operational value. The reference case and server-side validation note are useful, but the wording could be tightened to focus on what the tool does and when to use it.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, low schema coverage, and nested required parameters, the description is insufficient. It fails to explain what the 'structured, audited deliverable' contains, how inputs map to the reference case, or what the agent should do with the result. The description is far from complete for a tool with this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17%, and the description does not compensate. It references 'documented case fields' but does not explain any parameter meanings. The schema only documents 'async' in detail; required nested objects like company, announcement, targetAudience, and targetMedia are left semantically opaque. The description adds nothing to clarify parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description says 'Presse & influenceurs' and 'Returns a structured, audited deliverable', but never states a specific verb or resource. The reference case hints at a press/influencer outreach plan, but the core action is implied rather than explicit, making it vague and not clearly distinguishable from sibling tools like content_engine or brand_builder.

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?

No explicit guidance on when to use this tool versus alternatives. It does not mention any exclusion criteria or sibling tools. The reference case provides some context for the intended use, but no when-to-use or when-not-to-use instructions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pricing_in_dealC
Read-only
Inspect

Pricing en Deal — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Agicap × Groupe Rocher — Deal €38k · stade négociation · contre-offre -30% · 3 scénarios pricing · ROI 12×. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
dealYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
redLinesYes
negotiationContextYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds that inputs are validated server-side and that a structured, audited deliverable is returned. It does not mention auth, rate limits, or cost implications, but given annotations, the added context is enough for a mid-range score.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one dense paragraph mixing English and French, with marketing fluff ('Gapup agent-payable C-suite expertise (CRO)') and an example case. It is not front-loaded with the core purpose, and the example adds specificity but also length. It could be more concise and structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with nested objects, no output schema, and significant complexity, this description is incomplete. It does not explain what the deliverable contains, how pricing scenarios are generated, or how the agent should handle async behavior. The reference case hints at the output but does not define it. The description leaves major gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only 'async' is explained). The description fails to explain the nested parameters or their fields, merely telling the agent to 'send the documented case fields.' This is insufficient for the complex input structure with required fields like redLines and negotiationContext. The description does not compensate for the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description vaguely indicates this tool handles pricing for a deal ('Pricing en Deal'), supported by a reference case showing negotiation scenarios. However, it lacks a clear verb+resource structure and uses jargon ('Gapup agent-payable C-suite expertise (CRO)') without defining what the tool actually computes or returns. It does not differentiate from siblings like pricing_strategist or deal_coach.

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?

No explicit guidance on when to use this vs. alternatives. The reference case implies a negotiation-stage use case, but there is no statement of prerequisites, exclusions, or comparisons to overlapping tools. 'Inputs are validated server-side' is about input handling, not usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pricing_strategistC
Read-only
Inspect

Stratège de pricing — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Vercel Pricing 2026 — 4 tiers + usage metering · 3 scenarios pricing chiffrés · ARPU +28% target. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
competitorsYes
currentPricingYes
valuePropositionYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and openWorldHint=true, and the description does not contradict them. The description adds that the tool returns a 'structured, audited deliverable' and that inputs are validated server-side, which gives some behavioral context. However, it does not disclose any side effects, auth needs, or limitations beyond what annotations imply, so the added value is modest.

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 concise, with three sentences and a reference example. It front-loads the tool's identity and output type. The inclusion of 'Gapup agent-payable' and the French reference case may be unclear to some users, but the text is efficient overall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with nested object parameters and no output schema, the description is inadequate. It gives a high-level idea of the deliverable but fails to explain required inputs, output format, or how to invoke it. The reference case provides an example but not enough context for an agent to correctly use the tool without additional assumptions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17%, and the description provides no explanations for the six parameters (company, currentPricing, competitors, valueProposition, focus, async). The phrase 'send the documented case fields' is vague and does not define what those fields mean or how to structure them. The description fails to compensate for the low schema coverage.

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 identifies the tool as a pricing strategist producing a structured, audited deliverable, with a concrete reference case (Vercel Pricing 2026) that clarifies its output. However, it does not explicitly state the primary action (e.g., 'generates pricing scenarios') and relies on the title and example to convey purpose. It is distinguishable from siblings like competitor_pricing_radar via the 'strategist' positioning, but the differentiation is implicit.

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?

No explicit guidance on when to use this tool versus alternatives. The description mentions 'agent-payable C-suite expertise' and that inputs are validated, but does not specify use cases, prerequisites, or exclusions. Usage context is only implied by the tool name and reference case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

privacy_compliance_auditB
Read-only
Inspect

Audit conformité vie privée — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: Lemlist SAS — SaaS outreach B2B, transferts UE→US Schrems II, RGPD + CCPA + LGPD + UK GDPR. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
presenterScriptNo
targetFrameworksYes
processingActivitiesYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint and openWorldHint. The description adds that 'inputs are validated server-side' and that it 'returns a structured, audited deliverable.' However, it does not disclose the async behavior (offered via the 'async' parameter) or explain the purpose of presenterScript, which is a notable behavioral gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively short (four sentences) but includes marketing fluff ('Gapup agent-payable C-suite expertise (RISK)') and a French title that may require translation. It is not as crisp as ideal, but still reasonably concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a complex nested schema, no output schema, and the description does not explain the deliverable's contents, the presenterScript parameter, or async behavior. The reference case provides some context, but overall the description is insufficient for an agent to understand the full input requirements or output format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is very low (17%, only async). The description mentions 'documented case fields' and references frameworks like RGPD, CCPA, LGPD, UK GDPR, giving some clue about targetFrameworks and processing activities, but it does not explain the structure of company, processingActivities, or presenterScript. It fails to compensate for the schema's lack of descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly indicates this is a privacy compliance audit tool, with the title 'Audit conformité vie privée' and reference to the Lemlist case involving RGPD, CCPA, LGPD, and UK GDPR. It also states the output is 'a structured, audited deliverable.' It does not explicitly distinguish from sibling compliance tools, but the focus on privacy compliance is evident.

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?

Usage is implied through the reference case (Lemlist SAS for B2B SaaS outreach, EU→US transfers, etc.) and the mention of multiple privacy frameworks, suggesting when to use it. However, there is no explicit guidance on when not to use it or which alternatives (e.g., ai_act_incident_response, cyber_risk_auditor) to prefer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

process_mappingC
Read-only
Inspect

Mapping des process opérationnels — Gapup agent-payable C-suite expertise (COO). Returns a structured, audited deliverable. Reference case: Decathlon France — process Retour produit en magasin · 1700 magasins · 200 retours/j/magasin · -30 à -50% temps cible. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
processesYes
presenterScriptNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds that inputs are validated server-side and that a structured, audited deliverable is returned, which is useful context but does not mention async behavior or what 'audited' entails despite an async parameter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively short but includes unnecessary marketing fluff ('Gapup agent-payable C-suite expertise (COO)') and a verbose reference case. It is not front-loaded with the most essential operational details, though it is not excessively long.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, complex nested input parameters (company, processes, presenterScript), and no description of return values, the tool description is far too incomplete. An agent would not know what the deliverable looks like or how to properly structure the input, making it nearly impossible to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only the async parameter has a description). The tool description does not explain company, processes, focus, or presenterScript, and merely says 'send the documented case fields' without specifying what those are. This is a severe gap for an agent to construct valid input.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Mapping des process opérationnels' and mentions it returns a structured, audited deliverable, which conveys a process mapping purpose. However, it lacks a clear verb (e.g., 'analyze', 'create') and does not distinguish itself from the similar sibling 'process_mining'.

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?

No explicit guidance on when to use this tool versus alternatives. The Decathlon reference case is an example of use but not a directive or comparison to process_mining or other process-related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

process_miningD
Read-only
Inspect

Mining des process — Gapup agent-payable C-suite expertise (COO). Returns a structured, audited deliverable. Reference case: Gapup Hub — 4 process · €320k gaspillage identifié · 3 quick wins · 5 automations. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
objectivesYes
companyNameYes
mainSystemsYes
topProcessesYes
employeeCountYes
revenueLostEstimateEurNo
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations include readOnlyHint=true and openWorldHint=true, but the description adds little behavioral context. It mentions 'Inputs are validated server-side' and 'audited deliverable', but does not disclose what happens to inputs, data handling, or any side effects beyond the read-only nature already hinted. No contradiction exists, but the added transparency is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, but it is not well-structured. It opens with a French term that duplicates the tool name, then jumps to a reference case with specific metrics (€320k, 3 quick wins, 5 automations) that are tangential. The main purpose is buried in implication rather than being front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a complex schema with 7 parameters, including nested objects, and no output schema. The description is inadequate: it does not explain the deliverable structure, the meaning of the inputs, or when to use the tool. It provides almost no useful context for an AI agent to correctly select and invoke this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 14%, and the description does not explain any of the parameters. It only says 'send the documented case fields' without clarifying what those fields mean, how to structure topProcesses, or what values are expected. The description fails to compensate for the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description does not clearly state what the tool does. It says 'Mining des process' (French for 'process mining') and 'Returns a structured, audited deliverable', but the actual purpose (e.g., analyzing processes to identify waste) is only implied through the reference case '€320k gaspillage identifié'. The verb is missing, and the description does not distinguish it from sibling tools like process_mapping.

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?

No explicit when-to-use or alternative guidance is provided. The phrase 'Gapup agent-payable C-suite expertise (COO)' vaguely suggests executive use, but it does not explain when to choose process_mining over process_mapping or other similar tools. There is no exclusion or comparison.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

procurement_okr_esg_alignerA
Read-onlyIdempotent
Inspect

Aligns procurement OKRs with ESG targets for COOs using GRI standards and EU TED procurement benchmarks. Inputs include procurement objectives and ESG focus areas (e.g., carbon reduction, supplier diversity). Outputs structured alignment scores, gap analysis, and actionable recommendations. Essential for COOs integrating sustainability into procurement strategy. Keywords: procurement, ESG, GRI, EU TED, OKR alignment, sustainability metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
esgFocusAreasYes
industrySectorNo
procurementObjectivesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
alignmentScoresNo
recommendationsNo
benchmarkComparisonNo
overallAlignmentScoreNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, openWorld, and idempotent hints; the description does not contradict them. It adds methodological context (GRI, EU TED) but no additional behavioral details such as data sourcing caveats, latency, or rate limits, so value beyond the annotations is modest.

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 functional sentences front-load the purpose, inputs, and outputs, but the trailing keyword list is redundant with the body and adds little value. The description is compact and scannable overall.

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 an output schema present and annotations covering safety, the description provides sufficient orientation: what inputs are expected, what analysis is performed (GRI, EU TED), and what outputs are produced. It omits optional parameter handling and limitations, but those are secondary; the core context for a COO user is present.

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 only 25% (async described), and the description partially compensates by naming the two required inputs ('procurement objectives' and 'ESG focus areas') and giving examples (carbon reduction, supplier diversity). It does not explain procurementObjectives structure (id, weight) or the optional industrySector field, leaving a gap.

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 opens with a specific verb-resource pair: 'Aligns procurement OKRs with ESG targets' and adds methodology (GRI standards, EU TED benchmarks) plus outputs (alignment scores, gap analysis, recommendations). This clearly distinguishes it from sibling ESG tools like hr_benefits_esg_aligner or action_plan_esg by focusing on procurement and COOs.

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 identifies target users ('COOs integrating sustainability into procurement strategy') and the context of procurement objectives with ESG focus areas, which implies when to use. However, it does not explicitly name alternatives or state when not to use it, unlike a best-practice exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

procurement_six_sigma_waste_hunterA
Read-onlyIdempotent
Inspect

Analyzes procurement waste for COOs using Six Sigma DMAIC framework and EU TED tender data. Identifies non-value-added activities, overprocessing, and inefficiencies in procurement workflows. Inputs include procurement category, time period, and organizational unit. Outputs waste classification, cost impact estimates, and process improvement recommendations. — pass async:true REQUIRED to avoid x402 timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
time_periodYesTime period for analysis (e.g., '2023-01-01/2023-12-31')
six_sigma_toolNoDMAIC
include_ted_dataNo
organizational_unitNoSpecific business unit or department (e.g., 'EMEA', 'Global Operations')
procurement_categoryYesSpecific procurement category to analyze (e.g., 'IT hardware', 'facilities')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
ted_data_coverageNo
cost_impact_estimateNo
waste_classificationNo
process_improvement_recommendationsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnly, idempotent, and openWorld hints. The description adds value by explicitly requiring async:true to avoid x402 timeout and by disclosing output types (waste classification, cost impact estimates, recommendations). This complements the annotations without contradiction.

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 concise and front-loaded with the core purpose, followed by waste types and input/output summary. The appended async note is slightly awkward but necessary and justifiable. No redundant 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?

With an output schema and safety annotations present, the description provides sufficient context: audience, data source, outputs, and the critical async requirement. It does not delve into six_sigma_tool options or include_ted_data behavior, but the schema's enums and defaults mitigate this 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 67%, and the description names procurement category, time period, and organizational unit, but these are already documented in the schema. It does not explain six_sigma_tool or include_ted_data beyond what the schema offers (enum/default), though it adds contextual meaning for DMAIC and EU TED data.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: analyzing procurement waste for COOs with Six Sigma DMAIC and EU TED tender data. It also specifies the types of waste identified (non-value-added activities, overprocessing, inefficiencies), which distinguishes it from generic analytics tools.

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 appropriate usage context through audience (COOs), framework (Six Sigma), and data source (EU TED), but it does not explicitly state when to use this tool over alternatives or when not to use it. There are no exclusions or alternative tool references.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

procurement_spend_optimC
Read-only
Inspect

Optimisation des achats / Spend strategy — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Reference case: Tech SaaS €60M ARR — 200 fournisseurs analysés · 20 leviers chiffrés · -€2.4M opex/an target. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
topSuppliersYes
spendCategoriesYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description does not contradict these. It adds useful context about server-side validation and an 'audited deliverable', plus a reference case for expected output. However, it does not mention the async parameter behavior or any rate limits, leaving some behavioral gaps. Given annotation coverage, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact at roughly three sentences and front-loads the title. The reference case adds concreteness, though the phrase 'Gapup agent-payable C-suite expertise (CFO)' is promotional filler. Overall, it is concise and readable, with minimal waste for its length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/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 clarify the return format, but it only says 'structured, audited deliverable' without detailing structure or content. It also omits the async option (present in schema) and any guidance on interpreting results. For a tool with nested objects and five parameters, this is underspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only 'async' is documented), and the description provides no parameter-level explanations. It only says 'send the documented case fields' without detailing company, spendCategories, topSuppliers, or focus. This is insufficient for an agent to correctly construct inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description's core 'Optimisation des achats / Spend strategy' largely restates the tool name and title, with no clear action verb like 'analyzes' or 'generates'. It adds that it 'returns a structured, audited deliverable' and gives a reference case, but does not distinctly differentiate from sibling procurement tools such as procurement_six_sigma_waste_hunter or supplier_esg_audit.

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?

No explicit guidance on when to use this tool versus alternatives. The sibling list includes many procurement-related tools, but the description offers no comparison, exclusion, or scenario-based recommendations. The only weak hint is 'C-suite expertise (CFO)', which is not actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

programmatic_attribution_calibratorA
Read-onlyIdempotent
Inspect

For ad_revenue_ops persona: calibrates marketing mix models (MMM) by ingesting OpenRTB impression-level data from FreeWheel Marketplace and other programmatic sources. Accepts model parameters, date ranges, and impression IDs as input, returning structured calibration metrics and attribution adjustments. Useful for improving model accuracy with real-time bidding data and validating revenue attribution across programmatic channels.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
endDateYesEnd date for impression data (ISO 8601)
modelIdYesIdentifier of the MMM model to calibrate
startDateYesStart date for impression data (ISO 8601)
impressionIdsNoList of OpenRTB impression IDs to include in calibration
confidenceThresholdNoConfidence threshold for calibration metrics

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
calibrationMetricsNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, covering safety and side effects. The description adds context about data sources (FreeWheel Marketplace) and output type (calibration metrics and attribution adjustments). However, it does not elaborate on behavior such as processing semantics, error conditions, or how calibration metrics are computed, leaving some behavioral details undisclosed.

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 composed of three sentences and is reasonably concise. It opens with the target persona and primary function, then lists inputs/outputs, and ends with use cases. While slightly redundant in listing inputs already covered by schema, it remains compact and well-structured.

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 tool has six parameters and an output schema, the description provides sufficient context about the data source, target persona, and intended use. It does not explain all details like the async parameter or confidence threshold, but the schema covers those. The description is complete enough for an agent to select and invoke the tool correctly.

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 the schema already documents all parameters (modelId, dates, impressionIds, confidenceThreshold, async). The description adds little beyond the schema, only generically mentioning 'model parameters, date ranges, and impression IDs', which does not enhance understanding of individual parameters. Baseline of 3 is 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 clearly states the tool 'calibrates marketing mix models (MMM)' using OpenRTB impression-level data, specifying a distinct verb and resource. It also names the persona (ad_revenue_ops) and differentiates from siblings by focusing on MMM calibration with programmatic data, unlike adjacent tools like programmatic_brand_safety_auditor.

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?

Provides clear context on when to use the tool: for ad revenue operations, improving model accuracy with real-time bidding data, and validating revenue attribution across programmatic channels. It does not explicitly mention when not to use it or name alternatives, but the use cases are specific enough to guide selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

programmatic_brand_safety_auditorA
Read-onlyIdempotent
Inspect

Evaluates programmatic ad inventory for brand safety risks using IAB Tech Lab's standards and GDPR-compliant tracking methods. Designed for ad revenue operations teams to assess inventory quality before bidding. Inputs include domain, page URL, and optional contextual signals. Outputs a structured brand safety score with risk categorization and compliance warnings.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFull page URL being evaluated
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
domainYesRoot domain of the inventory (e.g., 'example.com')
categoriesNoOptional IAB content categories for contextual analysis
gdprConsentNoGDPR consent string (TCF v2.0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
flagsNo
scoreNoBrand safety score (0-100)
statusYes
sourcesNo
warningsNo
riskLevelNo
gdprCompliantNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as read-only, open-world, and idempotent. The description adds valuable context about compliance (GDPR-compliant tracking), industry standards (IAB Tech Lab), and output structure (risk categorization, compliance warnings), going beyond what annotations convey. No contradiction detected.

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 three sentences, front-loaded with the core purpose, followed by audience/usage context, and then inputs/outputs. No redundant or filler content; every sentence earns its place.

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 a fully documented schema, rich annotations (readOnly, idempotent, openWorld), and an output schema, the description adds the remaining context: standards used, compliance approach, target users, and decision-timing. Nothing significant is missing for the tool's complexity.

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 baseline is 3. The description mentions 'domain, page URL, and optional contextual signals' which loosely maps to the schema's domain, url, categories, and gdprConsent, but does not add meaning beyond what the schema already documents. It adds no syntax, format, or behavioral specifics for parameters.

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 a specific verb ('Evaluates'), a specific resource ('programmatic ad inventory'), and a clear objective ('brand safety risks using IAB Tech Lab's standards'). It clearly distinguishes itself from siblings like programmatic_attribution_calibrator, which handles attribution, not safety.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description indicates a clear context for use ('before bidding') and identifies the intended audience ('ad revenue operations teams'). It does not explicitly mention alternatives or exclusions, but the context is sufficient to understand when to apply this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

proposal_generatorA
Read-only
Inspect

Générateur de propositions commerciales — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Spendesk × Gapup Hub — Proposition 7 sections · ROI 3Y €1.8M · Payback 4 mois. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
offerYes
companyYes
prospectYes
dealContextNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint. The description adds meaningful behavioral context: inputs are validated server-side and the deliverable is audited, which informs the agent about input processing and output reliability 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. It front-loads the tool's name and niche, then adds a concrete reference case and a validation note. Every sentence contributes meaningful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description lacks details about the output structure (only 'structured, audited deliverable'), does not explain how to use the async parameter or job_result flow, and does not specify the required case fields. With no output schema and nested parameters, the agent is left under-informed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only 'async' has a description). The tool description does not explain the meaning of company, prospect, offer, or dealContext fields, nor does it list or describe them beyond the vague 'documented case fields'. It fails to compensate for the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the verb (générer) and resource (propositions commerciales), and adds a specific niche (Gapup agent-payable C-suite expertise/CRO) along with a concrete output description (structured, audited deliverable). This distinguishes it from generic proposal tools and siblings like pitch_deck_storyline.

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 through a reference case (Spendesk × Gapup Hub) and mentions the CRO context, but does not explicitly state when to use this tool over alternatives or provide exclusions. It relies on the user to infer applicability.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

qa_pre_flightB
Read-only
Inspect

Préparation Q&A investisseurs — Gapup agent-payable C-suite expertise (FUNDRAISING). Returns a structured, audited deliverable. Reference case: Agicap Série C €70M — 30 Q&A stratégiques · 8 questions pièges · Plan de préparation 21 jours. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
roundYes
companyYes
founderContextYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the agent knows this is a safe read-only operation with possible external data access. The description adds that it returns an 'audited deliverable' and that inputs are validated server-side, which are useful but minimal behavioral disclosures. No details on rate limits, auth, or specific side effects are provided, but the annotation coverage lowers the bar.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose and return value are front-loaded, but the description includes marketing fluff ('Gapup agent-payable C-suite expertise') and a lengthy reference case (Agicap Series C €70M...) that does not aid an AI agent in tool selection or invocation. It is a single long sentence with extraneous details that could be trimmed for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complex nested input schema with 4 parameters and no output schema, the description leaves many gaps. It does not explain the structure of the 'structured deliverable', the meaning of the case fields, or how async mode should be used. The annotation hints cover safety, but the description is insufficient for a tool with this level of input complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 25% (only 'async' has a description). The tool description references 'documented case fields' but does not explain what round, company, or founderContext mean beyond their schema types. With low schema coverage, the description was expected to compensate, but it does not add meaningful 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+resource: 'Préparation Q&A investisseurs' (prepare investor Q&A) with a fundraising context. It clearly indicates the tool returns a structured, audited deliverable. However, it does not explicitly distinguish from sibling tools like pitch_deck_storyline or audit_pre_flight, so it misses the differentiation criterion for a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use the tool: during fundraising to prepare for investor Q&A, citing a reference case for a Series C round. It implies the usage scenario effectively, but it does not name alternatives or mention exclusions, so it falls short of the 'explicit when/when-not/alternatives' standard.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

qbr_autoD
Read-only
Inspect

QBR automatique CSM — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub × Alan — QBR Q1 2026 · Health score 82/100 · Upsell €18k détecté · Renewal low risk. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
winsYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
periodYes
companyYes
metricsYes
customerYes
challengesYes
nextQuarterGoalsYes
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds 'validated server-side' and 'audited deliverable,' but these are vague and fail to provide meaningful behavioral context about processing, output details, or limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is cluttered with branding and an irrelevant reference case ('Gapup Hub × Alan — QBR Q1 2026 ...'). It is not concise or front-loaded, mixing French and English while omitting essential functional details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 8 parameters, 7 required, nested objects, and no output schema, the description is severely incomplete. It does not explain the deliverable's content, expected metric formats, or how the tool relates to similar QBR-related sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 13% (only 'async' has a description). The description says 'send the documented case fields' but does not enumerate or explain any of the 8 parameters or nested object fields, providing no compensation for the sparse schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description's core phrase 'QBR automatique CSM' largely restates the tool name/title without specifying the action. 'Returns a structured, audited deliverable' is generic and does not clarify what the tool actually does or how it differs from siblings like renewal_optimizer or upsell_hunter.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives. The only directive is 'Inputs are validated server-side — send the documented case fields,' which concerns input submission rather than usage context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

real_estate_intelA
Read-onlyIdempotent
Inspect

Real estate intelligence aggregator with a best-in-class French dataset (DVF — Demandes de Valeurs Foncières — 100% of FR transactions since 2019, public, keyless) plus UK Land Registry Price Paid (all UK transactions 1995+). Four modes: (1) property — full transaction history for a specific address; (2) comparables — median/std price/m² within a radius (default 500m); (3) market — annual price series, YoY change, volume, trend by commune; (4) valuation — two-method estimate (comparables median + hedonic regression if n≥30) with confidence scoring (high/medium/low). All sources are free and require no API key. ICP: PropTech agents, REITs, fund managers, family offices, insurance. SLA: ≤25s p95 (sources fetched in parallel, 8s budget each). Cache: 24h TTL (DVF data is stable). Quality score: 30 pts DVF retrieved, 20 pts geocoding, 20 pts UK LR retrieved, 15 pts if comparables count ≥10, 15 pts if method quality achieved. Status: failed/<60/≥60 → failed/partial/final. No env vars required.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesproperty: transactions at an address | comparables: sample around a point | market: commune/neighbourhood market stats | valuation: price estimate for a given surface
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
date_toNoISO date YYYY-MM-DD — latest transaction date
locationYesLocation descriptor. One of: {address, city?, country?} | {lat, lon, radius_m?} | {insee_code} for FR communes.
date_fromNoISO date YYYY-MM-DD — earliest transaction date
max_resultsNoMaximum number of results to return (5–50, default 20)
surface_maxNoMaximum surface in m² (±20% tolerance applied for comparables)
surface_minNoMinimum surface in m² (±20% tolerance applied for comparables)
property_typeNoFilter by property type (default: all)

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
marketNomode=market — commune-level market stats
statusYes
sourcesYes
propertyNomode=property — transactions at the location
valuationNomode=valuation — price estimate
comparablesNomode=comparables — aggregated comp stats
quality_scoreYes
location_resolvedYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description adds a wealth of operational context: SLA (≤25s p95), cache TTL (24h), quality score computation, and status semantics (failed/partial/final). It also notes that no API key or env vars are required, making execution expectations clear.

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 dense but efficient, front-loading the core purpose and then itemizing modes and operational details. Each sentence contributes unique information (data sources, SLA, caching, quality scoring), so there is no waste.

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 tool's complexity (9 params, 4 modes, nested objects) and the presence of a full output schema, the description provides comprehensive coverage: data jurisdictions, mode behavior, caching, SLA, and quality metrics. The only minor gap is mode-to-parameter mapping, but the schema compensates.

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?

The schema already documents every parameter with 100% coverage, so the baseline is 3. The description adds some semantic context (e.g., radius default, mode meanings) but does not substantially extend parameter understanding 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?

The description clearly identifies the tool as a real estate intelligence aggregator with four distinct modes (property, comparables, market, valuation), each with a concrete definition. It distinguishes itself from sibling tools by naming its specific data sources (DVF + UK Land Registry) and output types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage context: aimed at PropTech agents, REITs, fund managers, etc., and explains each of the four modes so the agent can select the appropriate one. It does not name alternatives or exclusion rules, which prevents a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

realtime_data_streamsA
Read-only
Inspect

High-frequency real-time market data for trading agents, market-making bots and fintech analysts. Returns FX ticks (bid/ask/spread), intraday OHLCV candles, crypto orderbook snapshots (depth 5-50), recent trades with VWAP, and sovereign bond yields. All sources are keyless public REST APIs (Binance, Coinbase, Kraken, OKX, open FX feeds, worldgovernmentbonds.com). Ultra-short cache: 10s for ticks/trades, 60s for orderbook. Use when an agent needs live market data as precise numeric inputs for trading logic, arbitrage detection, or portfolio valuation.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesData stream type: fx_tick (latest FX bid/ask/mid/spread), fx_history_intraday (OHLCV candles), crypto_orderbook (order book snapshot), crypto_trades_recent (last 50 trades + VWAP), bond_yields (sovereign yield %)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
depthNoOrderbook depth (levels each side) for crypto_orderbook mode (default: 20)
periodNoCandle period for fx_history_intraday mode (default: 5m)
symbolYesMarket symbol. FX: EURUSD, GBPUSD, USDJPY. Crypto: BTCUSDT, ETHUSDT, BTC-USD. Bonds: US10Y, US2Y, DE10Y, FR10Y, UK10Y, JP10Y, IT10Y

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
symbolYes
fx_tickNo
sourcesYes
fx_historyNo
bond_yieldsNo
crypto_tradesNo
quality_scoreYes
crypto_orderbookNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

While annotations already signal readOnlyHint and openWorldHint, the description adds valuable behavioral context: keyless public REST APIs, ultra-short cache durations (10s for ticks/trades, 60s for orderbook). This goes beyond the annotations. It does not contradict annotations, though it omits rate limits and error/failure behavior.

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 dense but well-structured, front-loaded with the core concept, then details sources, cache, and use case. Each sentence carries useful information, though it is slightly long. It earns high marks but is not maximally concise.

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 tool with rich schema and output schema, the description provides strong contextual coverage: data types, sources, caching, and use case. It does not explicitly describe the async option in prose, but the parameter schema covers this. The description is complete enough for an agent to select and invoke 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 description coverage is 100%, but the description enriches parameter meaning by describing what each mode returns (bid/ask/spread, OHLCV, orderbook depth, VWAP, bond yields). It also notes the depth range 5-50, which aligns with the depth enum. This adds value on top of the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies a high-frequency real-time market data tool, enumerating concrete asset classes (FX, crypto, bonds) and data types (ticks, OHLCV, orderbook, trades, yields). It explicitly states the intended use case ('Use when an agent needs live market data as precise numeric inputs') and differentiates from siblings by emphasizing the real-time, multi-asset nature.

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?

Provides explicit usage context: 'Use when an agent needs live market data as precise numeric inputs for trading logic, arbitrage detection, or portfolio valuation.' This gives clear when-to-use guidance. However, it does not mention when not to use it or explicitly compare with alternatives like historical_price_series or fx_rate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recruiting_architectC
Read-only
Inspect

Architecte du recrutement — Gapup agent-payable C-suite expertise (CHRO). Returns a structured, audited deliverable. Reference case: Stripe France — 12 postes Q3 2026 · sourcing multi-canaux + employer brand + frameworks d'entretien + parcours candidat · time-to-hire -45%. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
rolesYes
budgetYes
companyYes
preferencesYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safe, read-only profile is known. The description adds that inputs are validated server-side and the deliverable is 'structured, audited,' which is useful but doesn't detail output format, latency, or data sources. No contradiction with 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 compact, at three sentences, and front-loads the tool's identity. It wastes some space on marketing language ('Gapup agent-payable C-suite expertise'), but the remaining sentences contribute meaningful information about outputs and validation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex tool with six parameters, nested objects, and no output schema. The description provides only a high-level deliverable and a reference case, leaving the agent without enough information to construct valid inputs or interpret results. It is inadequate for the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17%—only 'async' has a description. The tool description does not compensate: it merely says to send 'documented case fields' without explaining company, roles, budget, preferences, or focus. The reference case mentions roles and sourcing but does not map to actual parameters.

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 clearly identifies the resource as 'Architecte du recrutement' and states it returns a 'structured, audited deliverable' covering sourcing, employer brand, interview frameworks, and candidate journey. This conveys a recruitment-architecture scope, though it lacks an explicit action verb like 'designs' or 'builds' and doesn't differentiate it from sibling talent/recruiting tools.

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 reference case (Stripe France, 12 postes, multi-channel sourcing) implies the tool is for large or multi-role recruitment planning, and the CHRO framing suggests executive-level use. However, there is no explicit when-to-use guidance or mention of alternatives, so usage context is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

re_deal_screenerA
Read-only
Inspect

Screener deal immobilier (EU) — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Answers: Screen this real estate deal: , , asking € — give me cap rate vs market, location score, risk flags, and deal recommendation. · Should I pursue this hotel investment at for € with keys? Run an EU deal screener with DVF comparables and Géorisques risk data. · What is the real estate market valuation for a at based on recent French DVF transactions? · Run a due diligence deal screen on this property: , €, sqm — flood risk, cap rate, price vs comparables. · Evaluate this commercial real estate deal for an investment committee: at , €, NOI €. Reference case: Hôtel boutique 45 keys · 12 rue de la Paix 75002 Paris · €12.5M · €277k/key · comp DVF €250-380k/key · location 92/100 · score 72 · pursue-with-conditions. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
addressYes
deal_typeYes
country_iso2YesFR
units_or_keysNo
gross_area_sqmNo
current_noi_eurNo
asking_price_eurYes
investment_thesisNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds context beyond the annotations by mentioning 'structured, audited deliverable' and server-side validation. However, it does not elaborate on potential latency, error conditions, or the meaning of openWorldHint, leaving room for more transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than necessary and includes marketing jargon ('Gapup agent-payable C-suite expertise') that adds little value. It is front-loaded with purpose, but the extensive example list and reference case, while useful, could be trimmed for conciseness.

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 no output schema, the description clearly states the return elements (cap rate, location score, risk flags, recommendation) and provides a concrete reference case. It also mentions data sources and server-side validation, offering sufficient context for an agent to use the tool effectively, though it omits async behavior details.

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 only 11% schema coverage, the description partially compensates by illustrating address, deal_type, asking price, units/keys, sqm, and NOI through examples and a reference case. Yet it leaves async, country_iso2, and investment_thesis unexplained, so it does not fully cover the parameter space.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Screen') and resource ('real estate deal (EU)'), with explicit output components (cap rate vs market, location score, risk flags, deal recommendation). It distinguishes itself from sibling tools like ma_deal_screener by focusing on EU/FR real estate with DVF/Géorisques 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?

Provides multiple example prompts showing exactly when to use the tool (e.g., 'Should I pursue this hotel investment...', 'What is the real estate market valuation...'). However, it does not explicitly state when not to use it or name alternatives, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

renewal_optimizerB
Read-only
Inspect

Optimiseur de renouvellements — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub — Renewals 10 comptes · €89k ARR à 90j · 3 comptes at-risk · Playbook 6 scénarios. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
horizonNo
productYes
accountsYes
targetRenewalRatePctNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations include readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds that inputs are validated server-side and output is an audited deliverable, providing some behavioral context. However, it does not disclose potential delays, failure modes, or what the audit entails.

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 relatively short and front-loaded with the purpose. The reference case is somewhat promotional but still adds context. It earns most of its sentences, except the 'Gapup agent-payable C-suite expertise' phrase is fluff. Overall, it is concise enough.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the tool's complexity (nested objects, 6 parameters, no output schema), the description gives only a vague promise of a 'structured, audited deliverable' without explaining its contents or the expected input structure. It relies on 'documented case fields' but does not document them, leaving an agent with insufficient information to compose a correct request or interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17%, and the description does not compensate by explaining the parameter meanings. It only references 'documented case fields' and provides a high-level example (10 accounts, €89k ARR, etc.), but this does not map to the schema properties. The description fails to clarify the purpose of company, product, accounts, horizon, or targetRenewalRatePct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as 'Optimiseur de renouvellements' (Renewal optimizer) and states it returns a structured, audited deliverable. The CRO (Chief Revenue Officer) expertise framing and reference case (Gapup Hub renewals) establish a specific domain, distinguishing it from sibling tools like churn_defender or upsell_hunter.

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 the tool is for renewal optimization via its name and reference case, but it does not explicitly state when to use it versus alternatives. No exclusions or alternative tool mentions are provided, so the usage context is only implicitly conveyed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

repo_rate_arbitrage_scannerA
Read-onlyIdempotent
Inspect

Scans for arbitrage opportunities between repo rates (ECB) and short-term funding markets (Treasury Direct). Designed for CFOs to identify cost-effective funding strategies. Inputs include optional date ranges and currency filters. Outputs structured arbitrage opportunities with rate differentials and confidence scores.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
endDateNo
currencyNo
startDateNo
minDifferentialNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
opportunitiesNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the description does not need to repeat safety traits. It adds value by disclosing that the tool 'Outputs structured arbitrage opportunities with rate differentials and confidence scores,' which is behavioral information beyond the annotations. No contradiction.

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 three sentences, front-loaded with the core function, followed by the target user and key inputs/outputs. Every sentence earns its place without redundancy or waste.

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?

The tool has 5 optional parameters and an output schema, so the description adequately covers purpose, target, inputs, and output type. It does not mention potential limitations or explicit exclusions, but given the annotations and output schema, it is reasonably complete. Minor gaps like not describing minDifferential or async behavior (though async is covered in the schema) prevent a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only 'async' has a description). The description mentions 'optional date ranges and currency filters,' covering startDate, endDate, and currency at a high level, but it completely omits 'minDifferential,' which is a key parameter for arbitrage scanning. With such low schema coverage, the description should compensate more fully, but it does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Scans for arbitrage opportunities' and specifies the exact market pair (repo rates via ECB vs. short-term funding via Treasury Direct), which distinguishes it from other arbitrage tools. The target audience (CFOs) and output nature further clarify its unique function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context by stating the tool is 'Designed for CFOs to identify cost-effective funding strategies,' indicating the intended use case. However, it does not explicitly state when not to use it or compare with alternative arbitrage tools, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reputation_engineC
Read-only
Inspect

Moteur de réputation — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: PayShield SaaS — Monitoring réputation Q2 2026. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
brandYes
channelsYes
industryYes
keywordsYes
historicalCrisesNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds that inputs are 'validated server-side' and the deliverable is 'audited,' which provides modest context. It does not describe output shape or behavior when async=true, but the schema covers the async behavior. No contradiction with annotations exists.

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 short and gets to the point, with only two sentences plus a reference case. It is efficient and front-loaded with the tool's name and purpose. The phrase 'Gapup agent-payable C-suite expertise (CMO)' is a bit cryptic but not redundant enough to lower the score further.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema and the description only vaguely promises a 'structured, audited deliverable' without detailing what it contains. It provides a reference case but omits important context such as how inputs map to the deliverable, what the response format is, or how the async path is handled. The description leaves too much for the agent to infer.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17% (only 'async' has a description), and the tool description fails to compensate. It mentions sending 'documented case fields' but never explains what brand, keywords, channels, industry, or historicalCrises mean or how to use them. This is a major gap for a tool with four required parameters and no other parameter guidance.

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 clearly identifies the tool as a reputation engine ('Moteur de réputation') and states it 'Returns a structured, audited deliverable,' which conveys the core purpose. It lacks a strong action verb like 'generate' or 'monitor,' but the title and context make the tool's function reasonably clear. No sibling has the same 'reputation_engine' name, so differentiation is less critical.

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 description does not state when to use this tool versus alternatives. It mentions the audience ('C-suite expertise (CMO)') and provides a reference case, but there are no explicit conditions, exclusions, or alternative tool references. This leaves the agent without clear guidance on when reputation_engine is the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

research_paper_qaB
Read-only
Inspect

Synthèse littérature scientifique (PaperQA2) — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Answers: Conduct a literature review on — what does the evidence show across recent papers? · Evaluate the current hypothesis that — supporting and contradicting evidence with citations. · Map contradictions in the literature on — which camps exist, how many papers per side? · What is the state-of-the-art understanding of as of ? · Perform an interdisciplinary synthesis on — findings from and . Reference case: Gut-brain axis · Cognitive performance in healthy adults · OpenAlex+SemanticScholar+CORE · Evidence synthesis · DOI-verified citations · Contradictions + gaps mapped. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
max_papersYes
year_rangeNo
focus_domainYesall
include_preprintsYes
research_questionYes
evidence_grade_requiredYesstandard
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint and openWorldHint annotations, the description adds that it returns a 'structured, audited deliverable', uses specific sources, and notes that 'Inputs are validated server-side'. It does not mention rate limits or auth, but the read-only nature is already annotated and the added 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded and includes a useful list of use cases, but it contains marketing noise like 'Gapup agent-payable C-suite expertise (RISK)' and a somewhat ambiguous 'Reference case' list. It is structured and not overly long, but not every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 7 parameters, nested objects, and no output schema, the description is incomplete. It only vaguely says 'structured, audited deliverable' and does not cover evidence grading semantics, preprint inclusion, async behavior, or the return format in enough detail for an agent to know what to expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 14%, and the description does not compensate. It never explains key parameters like evidence_grade_required, year_range, max_papers, async, or include_preprints. The placeholders in the examples (<topic>, <year>, <domain A/B>) only hint at research_question and focus_domain, but not the other fields.

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 clearly identifies the tool as a scientific literature synthesis service with specific verbs and use cases such as 'Conduct a literature review', 'Evaluate the current hypothesis', and 'Map contradictions'. It is more specific than the tool name and references sources (OpenAlex, SemanticScholar, CORE), but it does not explicitly distinguish itself from the sibling tool sci_literature_search.

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 'Answers:' section provides concrete scenarios (literature review, hypothesis evaluation, contradiction mapping, interdisciplinary synthesis) that tell an agent when to use this tool and what kinds of questions it handles. It lacks explicit exclusions or named alternatives, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

retail_media_attribution_bridgeA
Read-onlyIdempotent
Inspect

Provides unified attribution insights for retail media and programmatic campaigns by analyzing MMM signals from FreeWheel Marketplace and Common Crawl. Designed for ad revenue operations teams to bridge cross-channel performance gaps. Accepts campaign IDs, date ranges, and channel filters as input. Returns structured attribution data with source provenance and confidence scores.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
endDateYesEnd date for attribution window (YYYY-MM-DD)
channelsNoChannels to include in analysis
startDateYesStart date for attribution window (YYYY-MM-DD)
campaignIdsYesList of campaign identifiers to analyze
confidenceThresholdNoMinimum confidence score for included signals

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
attributionNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds context about data sources (FreeWheel Marketplace, Common Crawl) and the nature of output ('source provenance and confidence scores'), which goes beyond the structured fields. No contradictions found.

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 well-organized sentences: the first states the core function and data sources, the second defines the audience and goal, and the third summarizes inputs and outputs. No fluff, front-loaded with the most critical 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?

With an output schema present, detailed annotations, and full parameter descriptions, the tool is well-specified. The description provides necessary context about the tool's purpose and data sources. It does not explain MMM signals or the relevance of FreeWheel/Common Crawl, but that is domain knowledge rather than a critical 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% with all six parameters described in detail. The description's mention of 'campaign IDs, date ranges, and channel filters' merely restates what the schema provides, adding no extra meaning. Baseline of 3 is 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 clearly states the tool's primary function: 'Provides unified attribution insights for retail media and programmatic campaigns by analyzing MMM signals from FreeWheel Marketplace and Common Crawl.' It names specific data sources and distinguishes itself from sibling tools like programmatic_attribution_calibrator by focusing on bridging cross-channel gaps.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says it's 'Designed for ad revenue operations teams to bridge cross-channel performance gaps,' giving clear context on when to use the tool. However, it does not explicitly mention alternatives or exclusions, so it earns a 4 rather than 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

retail_media_esg_complianceA
Read-onlyIdempotent
Inspect

Audits retail media networks for ESG compliance by analyzing ad placements, tracking cookies, and verifying ethical advertising standards. Designed for ad_revenue_ops teams to ensure GDPR and sustainability compliance across digital retail platforms. Accepts domain lists or network identifiers as input and returns structured compliance reports with warnings and source references. Requires async:true to avoid timeout errors.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
domainsNoList of retail media network domains to audit
checkESGNoEnable ESG advertising standards compliance check
checkGDPRNoEnable GDPR cookie tracking compliance check
networkIdsNoList of retail media network identifiers

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
summaryNo
warningsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds meaningful behavioral context by stating that async:true is required to avoid timeout errors and that the tool returns structured reports with warnings and source references. This goes beyond the annotations without contradicting them.

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 concise and well-structured: purpose, target audience, inputs, output, and async requirement are covered in three sentences without redundancy. Each sentence adds essential 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 moderate complexity, output schema, and annotations, the description is largely complete. It covers the tool's inputs, outputs, async requirement, and target use case. It could explicitly mention edge cases or exclusions, but that is not critical for a read-only audit tool with a rich output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds value by clarifying that the tool accepts either domain lists or network identifiers, and by explicitly recommending the async parameter. It does not detail checkESG and checkGDPR, but those are already well-described in 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?

The description clearly states the tool's purpose: auditing retail media networks for ESG compliance through ad placements, tracking cookies, and ethical advertising standards. It distinguishes itself from sibling ESG tools like esg_audit_multi by specifying the retail media network focus and the specific compliance targets (GDPR, sustainability).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: designed for ad_revenue_ops teams and digital retail platforms. It does not explicitly mention when not to use this tool or alternatives, but the target audience and use case are well defined, which is sufficient for a read-only audit tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

revops_architectC
Read-only
Inspect

Architecte RevOps — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Qonto — ARR €200M · 200 reps · forecast ±35% · fuite €4,2M/an identifiée · plan RevOps 12 semaines. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
keyMetricsYes
objectivesYes
revenueTeamYes
currentStackYes
horizonMonthsYes
currentPainPointsYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true and openWorldHint=true, so the read-only nature is covered. The description adds that it returns a structured, audited deliverable and that inputs are validated server-side, but doesn't detail deliverable format, pagination, or any side effects 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the core purpose. The reference case adds useful context but could be considered extraneous, and the 'Gapup agent-payable' phrase is somewhat opaque. Overall, each sentence contributes to positioning the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (8 parameters, nested objects, no output schema, low schema coverage), the description is incomplete. It doesn't explain what the deliverable contains, how to construct the input case, or how to interpret the output. The absence of an output schema makes the description insufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 13%, so the description must compensate but doesn't. It merely says 'send the documented case fields' and references example metrics (ARR, forecast accuracy, revenue leakage) that map loosely to schema properties, but it doesn't enumerate or explain the nested object structures or required fields.

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 clearly identifies the tool as a RevOps architect providing C-suite CRO expertise and returning a structured, audited deliverable. It distinguishes from sibling architects by naming RevOps and CRO focus, though the exact action (e.g., 'design a RevOps plan') is implied rather than explicitly stated.

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?

No explicit guidance on when to use this tool versus alternatives. The reference case hints at revenue leakage and forecast inaccuracy as triggers, but there is no direct 'use when' or comparison to other strategist/architect tools like abm_architect or comp_plan_architect.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rfp_tender_architectC
Read-only
Inspect

Architecte d'appels d'offres — Gapup agent-payable C-suite expertise (COO). Returns a structured, audited deliverable. Reference case: AO DINUM — Plateforme IA souveraine. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
rfpTypeYes
rfpScopeYes
budgetRangeYes
deadlineISOYes
clientCompanyYes
ourPositioningYes
compliancePointsNo
competitorsLikelyYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds that inputs are validated server-side and that the result is an 'audited deliverable', but it does not mention costs, rate limits, or processing delays beyond the async parameter.

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 brief and front-loaded with the tool's role and function. The mixed French/English phrasing is slightly informal but each segment contributes to the overall purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 9 parameters and no output schema, a complete description should detail inputs and the expected deliverable. This description only gives a high-level summary and a reference case, leaving significant gaps for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 11% (async). The description refers to 'documented case fields' without explaining any parameter, leaving the agent to rely on terse field names, enums, and length constraints. It does not compensate for the low schema coverage.

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 it is an 'Architecte d'appels d'offres' (tender architect) that returns a structured, audited deliverable, with a reference case. This gives a clear sense of the tool's function, but it does not explicitly describe the deliverable's content or differentiate from sibling tools like proposal_generator.

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?

No explicit instructions on when to use this tool versus alternatives. The reference case and 'C-suite expertise' imply context, but the description lacks 'use this when...' guidance or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rse_policy_builderB
Read-only
Inspect

Architecte de politique RSE — Gapup agent-payable C-suite expertise (SUSTAINABILITY). Returns a structured, audited deliverable. Reference case: TechCorp SAS — Politique RSE 2025-2028 (500 FTE, €60M CA, SaaS B2B France). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
valuesYes
companyYes
ambitionsYes
targetLabelsNo
currentInitiativesNo
targetStakeholdersYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations include readOnlyHint=true, which already signals a safe read operation. The description adds that inputs are validated server-side and that the output is an audited deliverable, providing useful behavioral context beyond the annotations. No contradictions are present.

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 relatively concise at three sentences and front-loads the core purpose ('Architecte de politique RSE'). The reference case is informative but includes some marketing fluff ('Gapup agent-payable C-suite expertise') that could be trimmed without losing value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex tool with 8 parameters, nested objects, and no output schema. The description only says 'Returns a structured, audited deliverable' without explaining what that deliverable contains, how to use the async option, or how to interpret the result. It also does not clarify the 'documented case fields' despite being the main invocation guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 13% (async parameter only), so the description must compensate, but it does not explain the parameters. The reference case hints at some company fields (500 FTE, €60M revenue, SaaS B2B France) but does not clarify values, ambitions, targetStakeholders, or optional fields. This is a significant gap for a tool with 8 parameters.

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 identifies the tool as an 'Architecte de politique RSE' (RSE policy architect) and states it returns a structured, audited deliverable, which clearly conveys that the tool builds corporate social responsibility policies. It is distinguished from many generic sustainability tools by focusing on policy creation, though it does not explicitly name sibling tools for differentiation.

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 provides context (C-suite expertise, sustainability domain) and an example case (TechCorp SAS) that implies when to use the tool, but it does not explicitly state when to choose this over other ESG tools like action_plan_esg or sustainability_report. There are no exclusions or alternative references, only a vague sense of high-level policy creation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sabbatical_policy_comparatorA
Read-onlyIdempotent
Inspect

Enables CHROs to benchmark their company's sabbatical policies against peer organizations using data from SHRM, Payscale, and Mercer. Inputs include company size, industry, and current policy details. Outputs structured comparison with cost impact analysis, eligibility criteria, and duration benchmarks. Ideal for strategic HR planning and policy optimization.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
industryYesIndustry classification code (NAICS)
peerGroupNoList of peer company names for direct comparison
companySizeYesNumber of employees in the company
currentPolicyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
benchmarkNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, idempotentHint, and openWorldHint, covering safety profile. The description adds valuable behavior context: it uses SHRM/Payscale/Mercer data, produces a structured comparison with cost impact analysis, eligibility criteria, and duration benchmarks. No contradictions and no hidden side effects disclosed beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core purpose, and every sentence adds value: the first explains what it does, the second explains outputs and ideal use case. No fluff.

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 output schema exists and annotations cover safety, the description sufficiently covers the tool's purpose, inputs, outputs, data sources, and use case. It does not describe the async option, but the schema handles that. Missing a mention of optional peerGroup is minor since schema documents it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 80%, and the schema itself thoroughly describes all parameters (companySize, industry, peerGroup, async, currentPolicy nested fields). The description only mentions 'company size, industry, and current policy details' at a high level, adding little beyond the schema. Baseline 3 is 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 states a specific action ('benchmark'), a clear resource ('sabbatical policies'), and data sources (SHRM, Payscale, Mercer). It is distinct from siblings like executive_comp_peer_benchmark, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly identifies the use case ('strategic HR planning and policy optimization') and target audience (CHROs). It does not explicitly mention when not to use it or compare to alternate tools, but the context is clear enough for an agent to select it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

safety_guardrail_breach_analyzerA
Read-onlyIdempotent
Inspect

Analyzes potential LLM guardrail breaches against IEEE 7000 ethical compliance standards. Designed for risk persona to evaluate safety violations in AI outputs. Accepts raw LLM responses or structured breach reports, returns compliance analysis with severity scoring and mitigation recommendations.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
contextNoContextual information about the prompt or conversation
llmOutputYesRaw text output from LLM to analyze for guardrail breaches
severityThresholdNoMinimum severity score to report (0-10 scale)
includeMitigationsNoWhether to include mitigation recommendations

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
breachesNo
warningsNo
complianceScoreNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, open-world, and idempotent behavior. The description adds value by disclosing that it accepts both raw responses and structured reports, and that it returns compliance analysis with severity scoring and mitigation recommendations. This exceeds the baseline but doesn't detail async behavior or potential side effects, though those are less critical given the read-only hint.

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, no redundant information, key details front-loaded. It states purpose, target audience, inputs, and outputs efficiently.

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 output schema, the description is quite complete. It covers purpose, audience, inputs, and outputs. However, it doesn't mention async behavior or the severity threshold parameter, and the 'structured breach reports' phrase could be clearer. Overall adequate for the tool's complexity.

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 the baseline is 3. The description mentions 'structured breach reports' which is not clearly mapped to a parameter (llmOutput is raw text), causing slight ambiguity, but otherwise it adds no extra semantics beyond the schema. It doesn't compensate beyond 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?

The description clearly states the tool's function: analyzing LLM guardrail breaches against IEEE 7000 standards. It specifies the target user (risk persona) and the input types (raw LLM responses or structured breach reports), distinguishing it from generic analysis tools and siblings like jailbreak_attempt_detector.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: it is designed for risk persona evaluating safety violations in AI outputs, and mentions the acceptable input formats. However, it does not explicitly state when to avoid this tool or name alternative tools, so it lacks exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

safety_violation_incident_loggerC
Read-onlyIdempotent
Inspect

Logs AI safety violations for compliance reporting, targeting risk management personas. Accepts incident details such as violation type, severity, description, and timestamp. Returns structured data with compliance categorization based on NIST AI RMF guidelines. Ideal for automated incident tracking and regulatory reporting workflows.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
metadataNo
severityYes
timestampYes
descriptionYes
violationTypeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
incidentIdNo
nistReferenceNo
complianceCategoryNo
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description says 'Logs AI safety violations', which implies a write operation that creates a record. This directly contradicts the annotation readOnlyHint=true, which claims the operation is read-only. Additionally, idempotentHint=true conflicts with the typical behavior of logging a new incident each time. The description offers no clarification of these inconsistencies, making this a serious annotation contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, with the first stating the main purpose and the third adding output and use context. However, the second sentence ('Accepts incident details such as violation type, severity, description, and timestamp') largely restates the schema fields and adds no value. It's not overly verbose but contains redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool description provides basic information about input and output but omits critical details like the side effects of logging (especially given the readOnlyHint contradiction), the meaning of NIST AI RMF categorization, and how it relates to sibling tools. While an output schema exists, it doesn't compensate for the misleading safety profile and lack of usage guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has six parameters but only 17% description coverage (only async has a description). The tool description merely lists 'violation type, severity, description, and timestamp' without adding formats, constraints, relationships, or meaning beyond their names. It doesn't explain the purpose of async or metadata, so it fails to compensate for the low schema coverage.

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 clearly states the tool 'Logs AI safety violations for compliance reporting', identifying the verb (logs) and resource (AI safety violations). It also mentions the return of structured data with NIST AI RMF categorization, which clarifies scope. However, it doesn't explicitly differentiate from closely related sibling tools like incident_response_evidence_collector or safety_guardrail_breach_analyzer, so it falls short of a 5.

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 says it's 'Ideal for automated incident tracking and regulatory reporting workflows', providing some context for when to use it. But it gives no exclusions, alternatives, or conditions for selection over sibling tools. The guidance is implied rather than explicit, so it doesn't earn more than a 3.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sales_enablement_architectB
Read-only
Inspect

Architecte Sales Enablement — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Spendesk — 45 reps · attainment 67% · ramp 5 mois → 3 mois · programme 8 modules · +€2,1M ARR. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
gapsYes
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
salesTeamYes
objectivesYes
currentEnablementYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so the safety profile is known. The description adds that inputs are validated server-side and the deliverable is 'audited,' which provides some behavioral context, but it omits details about the async parameter and potential error behavior.

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 roughly 60 words, concise, and the main action ('Returns a structured, audited deliverable') is front-loaded. The tagline and reference case add some extra detail but do not constitute excessive verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a complex nested schema and no output schema, yet the description does not explain what the deliverable contains or how to construct valid inputs beyond a vague 'documented case fields.' It also ignores the async option, leaving the description incomplete for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17%, and the description does not explain the nested input objects (company, salesTeam, currentEnablement) or their fields. The reference case gives a concrete example but does not map directly to the schema, leaving parameter semantics largely underspecified.

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 the tool 'Returns a structured, audited deliverable' for Sales Enablement architecture, with a clear domain (CRO expertise) and a reference case. It clearly identifies the tool's function but does not explicitly differentiate from sibling architect tools like revops_architect or recruiting_architect.

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 a use case for sales enablement improvement via the reference case and the phrase 'send the documented case fields,' but it does not provide explicit when-to-use or alternative guidance. The usage context is inferable but not clearly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sales_pipeline_forecastC
Read-only
Inspect

Prévision de pipeline commercial — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Doctolib Enterprise — pipeline Q2 2026 · 50 deals enterprise/mid-market · forecast confidence par deal + commit/best-case/worst-case. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
pipelineYes
historicalConversionByStageNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true and openWorldHint=true, which align with the description. The description adds that the tool returns an 'audited deliverable' and validates inputs server-side, which is useful context. However, it does not disclose behaviors like potential long-running execution (despite an async parameter in the schema) or any limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively short (3 sentences) but contains some filler like 'Gapup agent-payable C-suite expertise (CRO)' which adds little value. The first sentence largely duplicates the title, and the reference case, while informative, could be expressed more succinctly. Overall, acceptable but not tightly structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a complex schema (nested objects, 5 parameters) and no output schema, so the description should provide a thorough explanation of inputs and outputs. It gives a single reference case but does not describe the full deliverable structure, how to specify period, or the meaning of historical conversion data. This is insufficient for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only the async parameter is described), so the description must compensate. The reference case mentions '50 deals enterprise/mid-market' and 'forecast confidence par deal', giving some meaning to pipeline structure, but it does not explain key parameters like company, pipeline, historicalConversionByStage, or focus. The instruction to 'send the documented case fields' is vague without actual documentation.

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 clearly states it provides a sales pipeline forecast ('Prévision de pipeline commercial') and returns a structured, audited deliverable. The reference case adds specifics (per-deal confidence, commit/best-case/worst-case), making the purpose unambiguous. However, it does not explicitly differentiate from sibling tools, though the name strongly implies its function.

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?

There is no explicit guidance on when to use this tool versus alternatives. The mention of 'send the documented case fields' hints at invocation but does not clarify use cases, prerequisites, or exclusions. The reference case is an example, not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sanctions_screener_multiA
Read-only
Inspect

Screening Sanctions Multi-listes — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Answers: For , run full OFAC + EU + UK HMT + UN + SECO + Canada SEMA + PEP + adverse media screening with composite risk score and evidence trail. · Is <company/individual> on any major international sanctions list? · What is the composite AML risk score for across all major watchlists? · Screen this M&A target / supplier / LP against all major sanctions lists and give me a compliance recommendation. · Is a PEP or associated with a PEP? What Enhanced Due Diligence is required? Reference case: Veridian Trading Co. LLC (Cyprus) — 7 listes · PEP check · adverse media 2 ans · composite 52/100 · escalate-to-compliance → EDD requis. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
addressNo
aliasesNo
entity_nameYes
entity_typeYes
context_noteNo
date_of_birthNo
jurisdiction_focusYesall
country_of_registrationNo
adverse_media_lookback_daysYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the safety profile is known. The description adds that it returns a structured, audited deliverable and that inputs are validated server-side. It does not disclose rate limits or error behavior, but for a read-only tool with annotations, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is overlong and includes marketing fluff ('Gapup agent-payable C-suite expertise (RISK)') and a repetitive 'Answers:' list. The reference case is useful but could be condensed. It is not appropriately sized; every sentence does not earn its place.

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, so the description must explain return values. It mentions 'structured, audited deliverable' and composite risk score, and the reference case illustrates the output format. However, it omits async behavior (despite the async parameter) and fails to clarify the full set of parameters, leaving gaps for a complex tool with 10 parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is very low (10%), so the description must compensate. It partially does by referencing entity, jurisdiction lists, and adverse media, but it leaves most parameters (address, aliases, date_of_birth, country_of_registration, context_note) unexplained. The phrase 'send the documented case fields' is vague and shifts the burden to external 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?

The description clearly states a specific verb and resource: run full OFAC, EU, UK HMT, UN, SECO, Canada SEMA, PEP, and adverse media screening with a composite risk score. It distinguishes from siblings like kyc_screener by focusing on multi-list sanctions and PEP checks, and provides concrete example questions and a reference case.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description conveys clear context: use for sanctions/PEP/adverse media screening, M&A target/supplier/LP compliance checks, and compliance recommendations. It does not explicitly name alternatives or exclusions, but the examples effectively indicate when this tool should be invoked.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

save_playsC
Read-only
Inspect

Plans de sauvetage clients — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Kyriba — Plan sauvetage 30j · ARR €11.988 · Champion parti · Script 6 actions · 3 concessions. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
accountYes
companyYes
productYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds context beyond annotations by mentioning 'audited deliverable' and 'Inputs are validated server-side', which informs the agent about reliability and input handling. However, it fails to disclose async behavior (available in schema), the nature of the deliverable, or any potential rate limits, and the readOnlyHint annotation already covers the no-write aspect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact at four sentences and front-loads the purpose. The reference case provides concrete context but includes jargon ('Gapup agent-payable C-suite expertise (CRO)') that may confuse rather than clarify, slightly detracting from conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has nested objects, no output schema, and only 25% schema description coverage, the description should explain the input structure and expected output in more detail. It only says 'structured, audited deliverable' and references a case, leaving major gaps about the deliverable's format, field requirements, and async option.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 25% (only async has a description), and the description does not compensate. 'Send the documented case fields' is vague and does not explain the required nested fields (company, account, product) or their meaning, forcing the agent to rely on ambiguous schema constraints.

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 'Plans de sauvetage clients' and says it 'Returns a structured, audited deliverable', which clearly indicates it generates a customer rescue plan. However, it lacks an explicit verb like 'generates' and doesn't differentiate from overlapping sibling tools like 'churn_defender' or 'renewal_optimizer', so it's clear but not perfectly distinct.

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 description gives a reference case but no explicit guidance on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or scenarios where another tool would be more appropriate, leaving the agent to infer usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sec_filing_decoderB
Read-only
Inspect

Décodeur de filing SEC — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Answers: Read the 10-K of and give me the material red flags, KPI movements, and a board-ready executive summary. · What has materially changed in 's risk profile in its latest annual filing? Flag any going-concern or auditor-change signals. · Is there any M&A signal or strategic review hint in 's most recent SEC filings? What's the evidence? · Prepare a due-diligence SEC filing brief for : financial snapshot, red flags, governance changes, and recommended next actions. · What is the sentiment of 's latest 10-K compared to its most recent 10-Q — bullish, neutral, or bearish? Reference case: SHOP · 10-K FY2024 · 4 red flags (1 critical: merchant concentration) · Revenue +24.7% YoY · . Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
cikNo
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusYesall
tickerNo
filing_typesYes
lookback_monthsYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so no contradiction. The description adds context about returning 'a structured, audited deliverable' and that inputs are validated server-side, which goes beyond the annotations. It does not, however, disclose async behavior (despite the 'async' parameter) or other operational details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a long French paragraph with multiple example queries and a reference case. While the examples are useful, they are somewhat repetitive and the text could be more concise. The opening sentence clearly states the tool's purpose, but the middle section is a list of questions rather than structured guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/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 should explain what the tool returns. It says 'structured, audited deliverable' but never specifies the format, fields, or how results are presented. It also does not mention async behavior or error handling, leaving significant ambiguities for a tool with 6 parameters and no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17% (only 'async' has a description). The description mentions filing types (10-K, 10-Q) and lookback implicitly via 'latest annual filing' and 'most recent SEC filings', but it does not clarify the distinction between cik and ticker, the focus enum values, or the meaning of lookback_months. It partially compensates for the low schema coverage but leaves significant gaps.

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 clearly identifies the tool as a 'Décodeur de filing SEC' with CFO-level expertise, listing concrete outputs like red flags, KPI movements, and executive summaries. It distinguishes itself from many siblings by focusing on SEC filings and structured deliverables, 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 provides several example queries ('Read the 10-K of <ticker>...', 'What has materially changed...') that imply usage scenarios, but it never explicitly states when to use this tool vs. alternatives like earnings_reviewer or ma_deal_screener. No exclusions or competing tools are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sentiment_news_pulseA
Read-only
Inspect

Pulse Média & Sentiment — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Answers: What is the current PR / brand sentiment for over the last 7 days? Show top headlines, trend signals, and recommended actions. · Is there a crisis building for ? Detect early-warning signals in press coverage and flag emerging negative narratives. · Track launch media coverage for — what is the press sentiment and which topics dominate the conversation? · Compare media sentiment between and its competitors over the past week. · What should our communications director prioritize in the next 48h based on current press coverage of ? Reference case: Velora Payments — Pulse média 7j · sentiment neutre (score +5) · crise émergente détectée · . Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
entity_nameYes
entity_typeYescompany
sentiment_lensYesreputation
date_range_daysYes
language_filterYesen
include_competitorsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

While annotations already declare readOnlyHint=true and openWorldHint=true, the description adds useful context: it returns a 'structured, audited deliverable' and mentions server-side validation. It does not disclose rate limits, error behavior, or implications of the 'agent-payable' label, but the core safety profile is clear and consistent with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is verbose and mixes purpose, multiple example questions, a reference case in French, and an ambiguous instruction. While it front-loads the main function, the structure is disjointed and would benefit from clearer separation of use cases, parameter guidance, and examples. It is not overly long, but it could be more concise and organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, no output schema, low schema coverage), the description provides a rich set of use cases and a general sense of the deliverable, but it omits critical parameter semantics and potential edge cases. An agent would still need to infer/guess parameter meanings from partial examples. It is not complete enough for confident invocation without additional schema exploration.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With only 14% schema description coverage (only 'async' is described), the description had a responsibility to explain parameters like entity_type, sentiment_lens, date_range_days, and language_filter. It only hints at them through example questions (e.g., 'last 7 days' for date_range, 'competitors' for include_competitors) but does not clarify allowed values or semantics. The phrase 'send the documented case fields' is cryptic and unhelpful.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies a media/sentiment analysis tool with distinct capabilities: tracking 7-day PR/brand sentiment, detecting emerging crises, monitoring launch coverage, comparing competitors, and recommending executive actions. It uses active verbs ('returns', 'detects', 'tracks', 'compares') and concrete outputs, distinguishing it from generic media tools among siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers multiple concrete example questions that map to specific use cases (crisis detection, launch tracking, competitor comparison, comms prioritization), making it clear when to invoke the tool. However, it does not explicitly state when not to use it or compare it to alternatives like 'trend_watcher' or 'reputation_engine', stopping short of full usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

seo_cro_auditA
Read-only
Inspect

Full SEO + CRO audit of any public URL. Analyses technical SEO (HTTP status, HTTPS, title/meta/canonical/robots, H1-H2, JSON-LD structured data, sitemap, robots.txt, OG/Twitter cards), content SEO (word count, keyword density top-10, readability estimate, image alt coverage, internal/external links), performance signals (page size, estimated render time, inline scripts/styles, unoptimised images), and CRO (CTA detection, above-fold CTAs, forms, social proof, trust signals, pricing visibility). Optionally compares up to 5 competitor URLs. Returns 0-100 scores per dimension plus a prioritised (P0/P1/P2) recommendation list. ICP: marketing managers, SEO/CRO consultants, e-commerce ops, agency teams. Budget: 8s per URL. Cache TTL: 1h.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFully-qualified URL to audit (e.g. https://stripe.com/pricing)
modeNoAudit scope — defaults to 'full'
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
compare_competitorsNoOptional list of competitor URLs to compare (max 5)

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlYes
statusYes
sourcesYes
audit_modesYes
content_seoYes
cro_signalsYes
quality_scoreYes
technical_seoYes
overall_scoresYes
recommendationsYes
performance_signalsYes
competitor_comparisonNo
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 known. The description adds valuable behavioral context including performance budget (8s per URL), cache TTL (1h), and the nature of the output (0-100 scores plus P0/P1/P2 recommendations). This goes beyond what annotations provide.

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 a single dense paragraph that front-loads the primary purpose and uses parenthetical lists to organize the many analysis areas. While not ultra-concise, every sentence carries meaningful information (scope, dimensions, options, ICP, performance constraints). It is well-structured for the complexity it conveys.

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 complexity of the tool (four audit dimensions, optional competitor comparison, async mode, output schema), the description is remarkably complete. It explains the return format (scores and prioritized recommendations), performance limits, cache behavior, and target audience. It leaves little ambiguity about what the tool accomplishes.

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 (url, mode, async, compare_competitors) are documented in the schema. The description adds only marginal value by mentioning competitor comparison and listing analysis dimensions that loosely map to mode values, but it does not introduce new parameter-level detail 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?

The description clearly states the tool performs a 'Full SEO + CRO audit of any public URL' and enumerates the exact analysis areas (technical SEO, content SEO, performance signals, CRO). This specific verb+resource combination distinguishes it from sibling audit tools like privacy_compliance_audit or supplier_esg_audit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use this tool by specifying the ICP (marketing managers, SEO/CRO consultants, e-commerce ops, agency teams) and the scope of analysis. It does not explicitly state when not to use it or name alternative tools, but the narrow focus on SEO+CRO makes this less critical.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

seo_keyword_researchA
Read-only
Inspect

SEO keyword research from a seed keyword or topic. Uses Google Suggest (public, keyless) to discover related queries at 2 expansion levels, then clusters them by intent: informational / commercial / transactional / navigational — via heuristic pattern matching. Search volume is bucketed (very_high / high / medium / low / very_low) and clearly labelled as ESTIMATED — no fabricated precise numbers. Returns all keywords, intent clusters, quality scores (0-100), and top 10 opportunities. Supports country (gl) and language (hl) targeting. 100% keyless. Cache TTL 6h. ICP: SEO managers, content strategists, SaaS founders, agency teams.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
countryNoISO 3166-1 alpha-2 country code for Google Suggest (e.g. 'US', 'FR', 'DE'). Defaults to 'US'.
languageNoBCP-47 language code for suggestions (e.g. 'en', 'fr', 'de', 'es'). Defaults to 'en'.
seed_keywordYesThe seed keyword or topic to research (e.g. 'invoice software', 'project management tool')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
countryYes
clustersYes
languageYes
warningsYes
all_keywordsYes
seed_keywordYes
quality_scoreYes
total_keywordsYes
top_opportunitiesYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only and non-destructive, but the description adds substantial behavioral context: keyless access to Google Suggest, two expansion levels, heuristic intent clustering, volume bucketing with explicit 'ESTIMATED' labeling, cache TTL of 6 hours, and output details. This exceeds what annotations provide and gives the agent a strong understanding of side effects and caveats.

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 dense and well-structured: purpose, methodology, output, options, caching, and ICP in sequence. It is longer than minimal, but each sentence conveys useful information. Minor redundancy (keyless mentioned twice) prevents a perfect score.

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?

The description covers the tool's function, external data source, output fields, volume estimation behavior, geographic/language targeting, caching, and intended audience. Given the existence of an output schema and annotations, this is complete for a moderately complex tool. No critical gaps remain.

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%: every parameter (seed_keyword, country, language, async) is described in the input schema. The description adds minor context about country/language targeting and the seed keyword concept, but it does not need to compensate for missing schema info. Baseline 3 is 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 clearly states what the tool does: 'SEO keyword research from a seed keyword or topic.' It goes further to describe the method (Google Suggest), output (intent clusters, quality scores, opportunities), and distinct features (keyless, estimated volumes), which distinguishes it from siblings like seo_cro_audit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use the tool: given a seed keyword or topic, it returns research for SEO/content planning. It also names target users (SEO managers, content strategists, etc.), but it does not explicitly mention when not to use it or how it compares to alternative tools. That keeps it at 4 rather than 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sharia_compliance_screenerA
Read-only
Inspect

Sharia compliance screening engine for Islamic banks, Sukuk issuers, Gulf sovereign funds, halal investment managers and MENA family offices. Zero competing MCP on this vertical.

Standards supported: AAOIFI (default) | MSCI_Islamic | S&P_Sharia | DJIM

Four modes: • company — Full Sharia screen of a listed company: business activity (halal/haram/mixed) + AAOIFI financial ratios (debt/market-cap <30%, interest-assets <30%, non-compliant revenue <5%) • instrument — Sukuk / halal fund classification by ISIN or name. Maps to known Sharia boards. • sector_screen — Industry classification (halal/haram/mixed) with rationale + examples. Static AAOIFI-based map covering 40+ sectors. • financial_ratios — AAOIFI ratio computation on fetched or provided financials.

Prohibited activities screened: alcohol, gambling, pork, weapons, pornography, tobacco, conventional banking (riba), conventional insurance, adult entertainment, embryonic stem cells.

Output includes compliance_status (halal/haram/doubtful_mixed/purification_required), purification_pct when applicable, P0/P1/P2 signals, quality_score, and sources.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesScreening mode. company=full listed company screen, instrument=Sukuk/fund classification, sector_screen=industry halal/haram classification, financial_ratios=AAOIFI ratio check.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesEntity to screen. Company name, ticker or ISIN (e.g. "Aramco", "AAPL", "tobacco", "XS1234567890").
standardNoSharia standard to apply. Default "AAOIFI" (most conservative, widely accepted by Islamic banks).

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
companyNo
signalsYes
sourcesYes
instrumentNo
quality_scoreYes
sector_screenNo
standard_usedYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and destructiveHint=false, and the description adds substantial behavior details: the async mode with job_id polling, specific AAOIFI ratio thresholds (debt/market-cap <30%, etc.), output fields (compliance_status, purification_pct, P0/P1/P2 signals, quality_score, sources), and the list of prohibited activities. This explains beyond what annotations already cover and does not contradict them.

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 well-structured with clear sections: audience, standards, four modes with bullet points, prohibited activities, and output summary. It is dense but every sentence conveys useful information—no fluff. The use of headers and bullets makes it easy to scan while remaining relatively short for the amount of detail.

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 complex tool with four modes and four standards, the description covers all invocation paths, explains the default standard, contains the full list of prohibited activities, and outlines the expected output fields. The async behavior is fully disclosed. An output schema exists, so return values need no further explanation. There are no critical gaps.

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 input schema already provides 100% coverage with descriptions for all parameters, so the baseline is 3. The description adds richer meaning by explaining each mode's purpose in more detail, expanding on the default standard (AAOIFI) as 'most conservative, widely accepted,' and giving concrete examples of queries (e.g., 'Aramco', 'AAPL', 'tobacco'). This goes beyond the schema without redundancy.

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 opens by stating it is a 'Sharia compliance screening engine' for Islamic banks, Sukuk issuers, Gulf sovereign funds, and related entities, which is a specific verb+resource+scope. It lists four distinct modes and explicitly claims 'Zero competing MCP on this vertical,' clearly distinguishing it from any sibling tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use each mode (company, instrument, sector_screen, financial_ratios) and which standards are available. However, it does not explicitly name alternative tools or state when not to use this tool, relying instead on the 'Zero competing MCP' assertion. This meets the 'clear context, no exclusions' bar but stops short of the full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

social_engagement_velocity_trackerA
Read-onlyIdempotent
Inspect

Tracks hourly social engagement velocity (likes, shares, comments) across Twitter, LinkedIn, and Reddit for CMOs. Inputs include platform handles/subreddits and time range. Outputs engagement metrics, velocity trends, and platform-specific insights. Ideal for real-time marketing performance monitoring and competitive benchmarking. Keywords: social media analytics, engagement tracking, marketing KPIs, CMO dashboard.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
hoursNo
platformsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
trendsNo
sourcesNo
warningsNo
engagementNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true. The description adds useful context about what is tracked (likes, shares, comments) and what outputs are produced (engagement metrics, velocity trends, insights), going 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph with useful sentences covering purpose, inputs, outputs, and use cases. The final 'Keywords:' sentence is redundant and adds minimal value for an AI agent, which is a minor structural flaw.

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 an output schema present and rich annotations, the description is complete enough: it explains purpose, inputs, outputs, and use cases. It does not mention async behavior or hour constraints, but these are visible in the schema, so the description is sufficient.

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 only 33%, so the description compensates by mentioning 'platform handles/subreddits' (clarifying the platforms array) and 'time range' (mapping to hours). It does not detail the async parameter, but that is fully described in 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?

The description starts with 'Tracks hourly social engagement velocity...' which is a specific verb + resource + scope (across Twitter, LinkedIn, and Reddit). It also clearly states inputs and outputs, distinguishing it from unrelated 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear use-case context: 'Ideal for real-time marketing performance monitoring and competitive benchmarking.' However, it does not explicitly mention when not to use the tool or name alternative tools, so it lacks exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

social_influencer_fake_follower_detectorA
Read-onlyIdempotent
Inspect

Analyzes up to 10 social media influencers for fake followers by checking engagement velocity patterns (Trends24) and RSS feed anomalies. Returns authenticity scores, follower growth spikes, and suspicious activity flags. Optimized for CMOs evaluating influencer partnerships. Includes keywords: influencer marketing, fake follower detection, engagement analysis, social media audit.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
platformYesSocial media platform of the influencers
influencerHandlesYesArray of up to 10 social media handles (e.g., ['@influencer1', 'user2'])

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
resultsYes
sourcesYes
summaryNo
warningsYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is established. The description adds meaningful behavioral context by naming specific data sources (Trends24, RSS feed anomalies) and output types (authenticity scores, growth spikes, flags), which is useful beyond the structured fields. No contradictions with annotations are present.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The first three sentences are informative and front-loaded. However, the final sentence listing keywords ('influencer marketing, fake follower detection...') is unnecessary filler for an AI agent and does not earn its place. While the description is not bloated, this redundancy prevents a higher score.

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 a rich output schema and informative annotations, the description does not need to explain return values in detail. It covers the tool's purpose, method, target audience, and scale ('up to 10'). It could mention limitations or edge cases, but given the structured metadata, it is sufficiently complete for selection and invocation.

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 the parameters are already well-documented. The description reinforces the 10-influencer limit mentioned in the schema but does not add new semantic details about handle formatting, platform behavior, or async usage. This is acceptable but not additive beyond 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?

The description states a specific action ('Analyzes'), a precise resource ('up to 10 social media influencers for fake followers'), and the analytical method ('checking engagement velocity patterns and RSS feed anomalies'). It also lists concrete outputs ('authenticity scores, follower growth spikes, and suspicious activity flags'), making the tool's purpose unmistakable and distinguishing it from generic analytics tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a clear use case: 'Optimized for CMOs evaluating influencer partnerships.' This gives the agent a strong contextual signal for when to invoke the tool. However, it does not explicitly mention alternatives or exclusionary conditions, so it falls short of the highest tier.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sovereign_data_breach_impactA
Read-onlyIdempotent
Inspect

Estimates financial impact of a data breach across three jurisdictions (US, EU, UK) for CFO strategic planning. Inputs include breach size, industry sector, and affected jurisdictions. Outputs include direct costs, regulatory fines, reputational damage, and cyber insurance premium adjustments. Ideal for cross-border risk assessment, financial contingency planning, and board-level reporting. Keywords: data breach cost, regulatory fines, cyber insurance, financial risk, cross-jurisdiction impact.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
industryNoIndustry sector of the affected organization
records_lostYesNumber of records compromised in the breach
jurisdictionsYesJurisdictions where the breach has legal or financial impact
detection_time_daysNoTime in days to detect the breach

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
total_cost_usdNoEstimated total financial impact in USD
cost_per_record_usdNoCost per compromised record in USD
regulatory_fines_usdNo
cyber_insurance_impactNo
reputational_damage_usdNoEstimated reputational damage cost in USD
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the bar is lower. The description adds that the tool 'estimates' rather than retrieves actual data and lists output categories (direct costs, regulatory fines, etc.), which is useful context. However, it doesn't disclose limitations, data sources, or calculation methodology, so it remains a moderately transparent description.

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 three sentences plus a keyword list, front-loaded with the core purpose. Every sentence earns its place—purpose, inputs/outputs, and use cases—with no filler or redundancy.

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 output schema exists, return values need no explanation. The description covers purpose, inputs, outputs, and ideal use cases, which is sufficient for a read-only estimation tool. It lacks caveats or limitations, but the description is complete enough for an agent to decide when to invoke the tool.

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?

The input schema has 100% description coverage, so each parameter is already documented. The description mentions 'breach size, industry sector, and affected jurisdictions,' which maps to records_lost, industry, and jurisdictions, but adds no new meaning beyond what the schema provides. Baseline 3 is 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 clearly states the tool's function: 'Estimates financial impact of a data breach across three jurisdictions (US, EU, UK) for CFO strategic planning.' This specific verb+resource+scope distinguishes it from general data breach tools. It also enumerates inputs and outputs, making the purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context with 'Ideal for cross-border risk assessment, financial contingency planning, and board-level reporting.' This tells when to use it, but it does not mention alternatives or explicit exclusions, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sre_slo_breach_predictorA
Read-onlyIdempotent
Inspect

As a CTO, predict potential SLO breaches 24 hours in advance by analyzing public incident reports and MITRE ATT&CK techniques. Input your service's critical components and reliability thresholds to receive breach probability scores, top contributing TTPs, and recommended mitigations. Uses MITRE ATT&CK, GitHub Advisories, and Cloudflare Radar data. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
time_window_hoursNo
service_componentsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
incident_reportsNo
breach_probabilityNo
recommended_actionsNo
top_ttp_contributorsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so safety is covered. The description adds valuable behavioral context: it uses specific data sources (MITRE ATT&CK, GitHub Advisories, Cloudflare Radar), implies potential long execution (async timeout hint), and describes output contents. This goes beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, front-loaded with the core purpose and followed by input/output details and operational hints. No redundant or filler content; every sentence adds value.

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 tool's complexity and the presence of an output schema, the description covers the essential aspects: purpose, inputs, outputs, data sources, and async behavior. It could further clarify when to choose this over siblings, but overall it provides sufficient context for an agent to select and invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33% (only async has a description). The description compensates by explaining service_components as 'critical components and reliability thresholds', and async as a timeout avoidance mechanism. It also implies time_window_hours with '24 hours in advance', adding meaning beyond the raw 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?

The description clearly states a specific purpose: predict potential SLO breaches 24 hours in advance using public incident reports and MITRE ATT&CK techniques. It specifies inputs (service components, reliability thresholds) and outputs (breach probability scores, TTPs, mitigations), distinguishing it from sibling tools focused on other observability or vulnerability prediction tasks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage context: use when you need to predict SLO breaches for your service's critical components. It also gives operational guidance (pass async:true to avoid timeout). However, it does not explicitly mention when not to use or name alternative tools, though the scenario is well-defined.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

strategic_options_analyzerB
Read-only
Inspect

Analyseur d'options stratégiques — Gapup agent-payable C-suite expertise (CSO). Returns a structured, audited deliverable. Reference case: Aircall — 5 options stratégiques post-Série D (2023-2024). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
optionHypothesesYes
strategicContextYes
founderConstraintsYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already disclose readOnlyHint and openWorldHint. The description adds that the tool returns a structured, audited deliverable and that inputs are validated server-side, which is useful. However, it does not explain what 'audited' entails, potential processing time (beyond async), or any other behavioral traits.

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 tool's purpose. The phrase 'Gapup agent-payable C-suite expertise (CSO)' is somewhat vague and unnecessary, but overall the description is efficient and avoids redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the tool's high complexity (4 required nested objects, no output schema), the description provides minimal context. It does not outline the analysis workflow, the nature of the deliverable beyond 'structured, audited,' or any prerequisites. The reference case helps but is not sufficient for such a sophisticated tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20%, and the description does not explain any of the parameters. It merely says 'send the documented case fields,' which adds no semantic meaning beyond the schema's sparse property names. The nested objects (company, strategicContext, optionHypotheses, founderConstraints) remain superficially defined.

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 name and description clearly indicate the tool analyzes strategic options and returns a structured, audited deliverable, with a concrete reference case (Aircall post-Series D). However, it does not distinguish itself from sibling strategy tools like growth_path_architect or market_entry_strategist.

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 use for C-suite strategic decision-making ('C-suite expertise (CSO)') and provides an example, but gives no explicit guidance on when to choose this over alternatives or when not to use it. No exclusion criteria are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

supplier_esg_auditC
Read-only
Inspect

Audit ESG des fournisseurs — Gapup agent-payable C-suite expertise (SUSTAINABILITY). Returns a structured, audited deliverable. Reference case: TechCorp — Audit ESG fournisseurs 2025 (5 fournisseurs, €1.37M spend). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
suppliersYes
targetScoreNo
auditCriteriaYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds that inputs are validated server-side and that a structured audited deliverable is returned, but it does not disclose failure modes, output format details, or async behavior.

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 short and front-loaded, with the purpose appearing in the first phrase. The reference case and validation note add value, though the marketing phrase 'Gapup agent-payable C-suite expertise' is unnecessary noise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With six parameters including nested required objects, an async option, and no output schema, the description is too thin to guide an agent effectively. It provides a reference case but no detail on expected inputs or the deliverable's structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17%, and the description does not compensate for the undocumented parameters. It only says 'send the documented case fields,' leaving the required company, suppliers, and auditCriteria objects entirely unexplained.

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 clearly states the tool audits supplier ESG and returns a structured, audited deliverable, with a concrete reference case. It is specific about the resource (supplier ESG) but does not explicitly distinguish it from sibling tools like esg_audit_multi or action_plan_esg.

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?

There is no explicit when-to-use or when-not-to-use guidance, nor any mention of alternatives. The reference case and server-side validation note provide context but do not help an agent choose this tool over closely related siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

supply_chain_fx_exposure_dashboardA
Read-onlyIdempotent
Inspect

Provides real-time foreign exchange exposure dashboard for supply chain monitoring. Designed for COO persona to track currency risk across suppliers and regions. Inputs include supplier IDs, base currency, and target currencies. Outputs structured FX exposure data with risk indicators, exchange rates, and supplier impact analysis sourced from World Bank LPI and live FX rate APIs.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
supplierIdsNoList of supplier identifiers to analyze
baseCurrencyYesBase currency code (ISO 4217) for exposure calculation
riskThresholdNoPercentage threshold for high-risk exposure flagging
targetCurrenciesYesTarget currency codes (ISO 4217) to compare against base

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
statusYes
sourcesNo
warningsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds useful context about real-time behavior, data sources (World Bank LPI and live FX APIs), and output contents (risk indicators, exchange rates, supplier impact analysis), exceeding the baseline set by annotations without contradicting them.

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 concise with three sentences: purpose, persona/use case, and input/output summary. It is front-loaded with the primary function and contains no redundant 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 presence of an output schema, rich annotations, and 100% parameter coverage, the description provides sufficient context about the tool's purpose, data sources, and output format. It does not address potential edge cases or usage caveats, but these are adequately covered by structured fields.

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 the parameter semantics baseline is 3. The description merely repeats that inputs include supplier IDs, base currency, and target currencies without adding extra meaning or details beyond the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it provides a real-time FX exposure dashboard for supply chain monitoring, with a specific verb ('Provides') and resource ('dashboard'). It distinguishes itself from simpler FX rate tools by mentioning supply chain context and risk indicators, but does not explicitly name alternative tools.

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?

Usage context is implied through 'Designed for COO persona to track currency risk across suppliers and regions', but there is no explicit guidance on when to use this tool versus alternatives like fx_rate or working_capital_fx_hedge_optimizer. No exclusions or alternative references are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sustainability_reportB
Read-only
Inspect

Rapport de durabilité — Gapup agent-payable C-suite expertise (SUSTAINABILITY). Returns a structured, audited deliverable. Reference case: GreenLoop Solutions — rapport durabilité B-Corp 2025 (95 FTE, €18M CA). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
pillarsYes
stakeholdersYes
targetLabelsNo
existingLabelsNo
audienceProfileYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds behavioral context beyond the annotations: it discloses that inputs are 'validated server-side,' returns an 'audited deliverable,' and mentions the reference case as an example. This complements the readOnlyHint and openWorldHint annotations. There is no contradiction; the 'returns' language matches the read-only expectation. It could disclose more about response format or cost, but given the annotations, the added details are sufficient.

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 concise, with three sentences, and the key purpose is front-loaded. The reference case adds some specific context but is not excessive. It avoids unnecessary fluff, though the phrase 'Gapup agent-payable C-suite expertise' is a bit vague and could be clarified. Overall, it earns its place, but the reference case could be seen as optional.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is complex with 8 parameters, nested objects, and no output schema, yet the description provides little insight into what the report contains, how to structure the inputs, or what an 'audited deliverable' means in practice. It also omits any guidance on which fields are essential or how they influence the report. This is insufficient for a tool of this complexity, leaving the agent to rely on schema alone, which is sparse.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Parameter schema coverage is only 13%, and the description does not compensate. It vaguely refers to 'documented case fields' without explaining any of the eight parameters, their relationships, or how to construct the nested 'company' and 'pillars' objects. Since the schema descriptions are minimal, the description should have supplied more semantic guidance but does not, making parameter understanding difficult.

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 clearly states the tool produces a sustainability report ('Rapport de durabilité') and 'returns a structured, audited deliverable,' which identifies the verb (generate/return) and resource (sustainability report). However, it does not explicitly distinguish this from similar sibling tools like 'sustainability_reporting_pilot' or 'esg_audit_multi', so it lacks full sibling differentiation.

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 provides some usage context, such as 'agent-payable C-suite expertise' and a reference case, which implies a target audience and level of output. It also instructs to 'send the documented case fields,' but it does not explicitly state when to choose this tool over alternatives, nor does it mention any exclusions. The usage guidance is present but implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sustainability_reporting_pilotC
Read-only
Inspect

Pilote de reporting durabilité — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: AlphaTech Industries SAS — premier rapport CSRD wave 2 (exercice 2025). Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNo
companyYes
dataInputsYes
materialityYes
targetFrameworksYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already provide readOnlyHint=true and openWorldHint=true, so the read-only nature is covered. The description adds useful context: 'Inputs are validated server-side' and 'audited deliverable'. However, phrases like 'Gapup agent-payable C-suite expertise (RISK)' are unclear, and no additional side effects or behavioral traits are disclosed. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but wasteful: it repeats the tool name in the first phrase, includes a specific company reference case that is not essential, and contains opaque jargon ('Gapup agent-payable C-suite expertise'). The core function is not front-loaded, and every sentence does not earn its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high complexity (6 parameters, nested objects, no output schema), the description is incomplete. It does not explain what the structured deliverable contains, how outputs are formatted, or how the async/polling pattern works. The 'Reference case' is presented without instructions on how to adapt it, leaving the agent with insufficient information for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17% (only 'async' has a description). The description says 'send the documented case fields' but never explains what those fields are or their semantics. It adds no value beyond the schema and does not compensate for the low coverage, especially for the nested company, dataInputs, materiality, and targetFrameworks objects.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Pilote de reporting durabilité', which is essentially the tool name, and then says 'Returns a structured, audited deliverable' without a specific action verb like 'generate' or 'analyse'. It does not clearly distinguish itself from the sibling 'sustainability_report' tool, and the 'Reference case' mention adds marketing context rather than functional clarity.

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?

No guidance is provided on when to use this pilot versus the full 'sustainability_report' or other ESG/sustainability tools. The reference case hints at CSRD wave 2 but never states conditions, alternatives, or exclusions, leaving the agent to guess.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

syndicated_loan_covenant_breach_alertA
Read-onlyIdempotent
Inspect

Monitors syndicated loan covenants for potential breaches by analyzing Tradeweb market data. Designed for CFOs to proactively identify financial compliance risks in loan agreements. Accepts loan identifiers, covenant thresholds, and reporting period as inputs. Returns structured breach alerts with market context and severity indicators.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
loanIdYesUnique identifier for the syndicated loan
currencyNoISO currency code for financial values
reportingPeriodYesTime period for covenant compliance check
covenantThresholdsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
breachesNo
warningsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds behavioral context beyond annotations by noting the data source ('Tradeweb market data') and the return format ('structured breach alerts with market context and severity indicators'). It does not contradict the readOnly, openWorld, or idempotent hints, and it provides useful detail about what the output contains.

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 three sentences long, front-loaded with the primary purpose, and every sentence adds value. It efficiently conveys purpose, target user, inputs, and output without redundancy.

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 tool with moderate complexity and a rich output schema, the description covers the essential aspects: what it does, what it takes as input, and what it returns. It lacks an example or mention of async behavior, but those are already captured in the input schema and annotations, making the description sufficiently complete.

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 80% (4 of 5 params have descriptions), so the baseline is 3. The description lists the main inputs ('loan identifiers, covenant thresholds, and reporting period') but adds little beyond what the schema already provides. It does not clarify the structure of covenantThresholds or the async parameter, though the schema covers those.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Monitors syndicated loan covenants for potential breaches by analyzing Tradeweb market data.' It uses a specific verb ('monitors') and a specific resource ('syndicated loan covenants'), and it distinguishes itself from siblings like bond_covenant_monitor by focusing on syndicated loans and Tradeweb data.

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 provides a target audience and use case ('Designed for CFOs to proactively identify financial compliance risks in loan agreements'), which gives clear context. However, it does not explicitly state when to use this tool instead of alternatives, such as bond_covenant_monitor, nor does it mention exclusions or preconditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

syndicated_loan_pricing_benchmarkA
Read-onlyIdempotent
Inspect

Provides CFOs with peer benchmarking for syndicated loan pricing by comparing current loan terms against market data from Tradeweb and FRED. Inputs include loan amount, tenor, credit rating, and currency. Outputs structured pricing benchmarks with spread, yield, and fee comparisons. Ideal for quick validation of loan competitiveness or negotiation preparation.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
tenorYesLoan tenor (e.g., '5Y', '3Y')
regionNoRegion for benchmarking (e.g., 'US', 'EU')
currencyYesCurrency code (e.g., 'USD', 'EUR')
loanAmountYesLoan amount in millions
creditRatingYesBorrower credit rating (e.g., 'BBB', 'BB+')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
benchmarksNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds useful context about data sources (Tradeweb, FRED) and output contents (spread, yield, fee comparisons), which goes beyond the annotation signal. No contradictions or missing critical behavioral caveats are present.

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 compact: three sentences, with the first sentence front-loading the core purpose, the second describing inputs/outputs, and the third noting target use cases. Every sentence earns its place with no redundancy.

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 output schema, rich annotations, and complete schema descriptions, the description sufficiently covers purpose, inputs, and use cases. It omits optional parameters like region, but these are already documented in the schema and do not hinder selection or invocation.

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 the schema fully documents each parameter. The description mentions the required inputs (loan amount, tenor, credit rating, currency) but adds no additional meaning or constraints beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it 'Provides CFOs with peer benchmarking for syndicated loan pricing' and specifies the comparison against Tradeweb and FRED data. This distinguishes it from sibling tools like syndicated_loan_covenant_breach_alert or generic pricing strategists.

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 gives clear context for use: 'Ideal for quick validation of loan competitiveness or negotiation preparation.' However, it does not explicitly mention when not to use it or name alternative tools, so it stops short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

talent_contract_risk_mapperA
Read-onlyIdempotent
Inspect

For CHROs: analyzes employee contracts for non-compete, IP assignment, and confidentiality clauses, comparing against state labor laws and jurisdiction-specific precedents. Returns risk levels, conflicting statutes, and suggested revisions. Uses USPTO PatFT, CourtListener, and EUR-Lex for legal cross-referencing. Ideal for contract reviews, compliance audits, or policy updates.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
jurisdictionYesState or country jurisdiction (e.g., 'California', 'Germany')
contract_textYesFull text of the employee contract or clause section to analyze
employee_roleNoJob title or role classification (e.g., 'Software Engineer', 'Executive')
effective_dateNoContract effective date (YYYY-MM-DD)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
risk_summaryNo
suggested_revisionsNo
conflicting_statutesNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, but the description adds meaningful behavioral context: it uses external legal databases (USPTO PatFT, CourtListener, EUR-Lex) for cross-referencing and describes the return structure. This goes beyond the annotations and helps manage expectations about external dependencies and output format.

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 three concise sentences, front-loaded with the target audience ('For CHROs') and the core action. It avoids redundant wording and covers purpose, outputs, and use cases efficiently. Every sentence earns its place.

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?

The description covers the tool's purpose, intended use cases, output types, and external data sources. Given that an output schema exists, the description does not need to detail return values further. It is comprehensive enough for a complex tool with 5 parameters and 2 required fields, and the annotations handle safety and idempotency.

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?

The input schema already provides 100% description coverage for all parameters, including defaults and types. The tool description adds minimal parameter-specific guidance, only implicitly referencing contract_text and jurisdiction in the purpose. This aligns with the baseline 3 for high schema coverage, as the description does not add substantial new meaning 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?

The description uses a specific verb ('analyzes') and resource ('employee contracts'), explicitly identifies the three clause types (non-compete, IP assignment, confidentiality), and states the outputs (risk levels, conflicting statutes, suggested revisions). It clearly distinguishes itself from sibling tools like contract_risk_scanner by focusing on talent contracts and legal cross-referencing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use the tool: 'Ideal for contract reviews, compliance audits, or policy updates' and targets CHROs. However, it does not explicitly mention alternatives or state when not to use it, so it falls short of the top score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

talent_intelligenceA
Read-only
Inspect

HR tech intelligence for CHROs, recruiters, VC teams, comp & benefits leads and workforce planners. Four modes powered by ESCO, O*NET, BLS OES and crowd-sourced salary data:

• salary_benchmark — cash-only salary medians (p25/median/p75) for 54+ roles across US/EU/Asia. Covers tech, finance, compliance, healthcare, marketing, ops and C-suite. Data from BLS OES, Levels.fyi and StackOverflow Developer Survey 2024. • skills_taxonomy — maps a skill to its ESCO URI, O*NET codes, skill type (hard/soft/knowledge/cert), 8 related skills with similarity scores and typical roles. • job_market_trends — YoY growth %, open positions estimate, top employers and leading skills per job category × country. Static 2024 data with BLS baseline fallback. • adjacent_roles — up to 6 roles adjacent to a source role with ESCO taxonomy adjacency: similarity score, salary delta % and skills overlap %.

All salary data is cash-only (excludes equity/RSU/bonus). Cache TTL: 24h (stable labour market data). Optional env ONET_API_KEY for authenticated O*NET lookups (free registration at onetcenter.org).

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesAnalysis mode: salary_benchmark=compensation data, skills_taxonomy=ESCO/O*NET mapping, job_market_trends=market growth and demand, adjacent_roles=career path recommendations.
roleNoJob title (required for salary_benchmark, job_market_trends, adjacent_roles). Examples: "Senior Software Engineer", "Compliance Officer", "Data Scientist", "CFO".
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
skillNoSkill to classify (required for skills_taxonomy mode). Examples: "Python", "transformer architecture", "GDPR", "Kubernetes", "leadership".
countryNoISO 2-letter country code. Default: US. Examples: US, FR, DE, GB, SG.
seniorityNoSeniority level. Default: senior. Affects salary benchmark ranges.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
sourcesYes
quality_scoreYes
adjacent_rolesNo
skills_taxonomyNo
salary_benchmarkNo
job_market_trendsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses important behavioral details beyond the annotations: cash-only salary data, cache TTL of 24h, optional ONET_API_KEY, and static 2024 data with fallback. These add transparency about data freshness and configuration, though it does not cover every edge case.

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 well-structured with a clear intro and bullet points for each mode. Every sentence adds value, covering purpose, data sources, and constraints without unnecessary verbosity.

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 tool's complexity (four modes, multiple data sources), the description is remarkably complete. It covers data provenance, geographic scope, salary components, caching, and optional authentication, leaving few gaps for an agent to misinterpret.

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?

With 100% schema description coverage, the baseline is 3, but the description adds significant meaning by explaining each mode's output specifics (e.g., p25/median/p75, ESCO URI, similarity scores). This goes beyond the schema's brief mode definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states what the tool does: provides HR tech intelligence across four explicit modes (salary benchmark, skills taxonomy, job market trends, adjacent roles). Each mode is described with specific data sources and outputs, making it distinct from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context on intended users (CHROs, recruiters, VC teams) and enumerates the modes, which implicitly guides when to use it. However, it does not explicitly mention alternatives or exclusions, so it stops short of full guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

talent_litigation_exposureA
Read-onlyIdempotent
Inspect

Estimates litigation exposure risk for CHROs by analyzing past employee lawsuits, settlement amounts, and industry benchmarks. Inputs include company location, industry code, and employee count range. Returns exposure score, average settlement amounts, lawsuit frequency trends, and risk factors. Ideal for legal risk assessment, HR strategy planning, and board-level reporting. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
industry_codeYesNAICS industry code (e.g., '541511' for IT services)
employee_countNoCurrent number of employees
lookback_yearsNoNumber of years to analyze
company_locationYesState or region where company operates (e.g., 'CA', 'New York')

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
warningsYes
avg_settlementNoAverage settlement amount in USD
exposure_scoreYesNormalized risk score (0-100)
historical_trendNo
top_risk_factorsNo
lawsuit_frequencyNoLawsuits per 1000 employees per year
industry_benchmarkNoIndustry average exposure score
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only and idempotent behavior, so the bar is lower. The description adds valuable behavioral context by warning about potential timeouts ('Pass async:true to avoid timeout') and listing the kind of outputs returned (exposure score, settlement amounts, trends). This goes beyond structured annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is five sentences, each serving a purpose: purpose, inputs, outputs, use cases, and async note. It is front-loaded with the most important information and contains no filler or redundant phrasing.

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?

The description covers inputs, outputs, use cases, and async behavior, and an output schema exists to handle return-value details. Combined with annotations indicating read-only safety, this is a reasonably complete picture for an estimation tool. A minor gap is that it doesn't discuss data reliability or geographic scope limitations, but these are not critical given the output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/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 adds no meaningful new semantics and introduces an inaccuracy: it mentions 'employee count range' while the schema defines employee_count as a single number. It also omits lookback_years and async, though the schema covers them. Since it repeats schema info rather than enriching it, the value is below 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?

The description opens with a specific verb and resource: 'Estimates litigation exposure risk for CHROs by analyzing past employee lawsuits, settlement amounts, and industry benchmarks.' It clearly distinguishes itself from sibling tools like talent_contract_risk_mapper (contract-focused) and talent_legal_dashboard (broader dashboard) by focusing narrowly on litigation exposure.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear use cases: 'Ideal for legal risk assessment, HR strategy planning, and board-level reporting.' It does not mention exclusions or alternative sibling tools, but the context is specific enough for an agent to decide when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

talent_poaching_riskA
Read-onlyIdempotent
Inspect

Analyzes employee poaching risk for CHROs by evaluating LinkedIn profile activity (job searches, profile views) and comparing compensation against BLS benchmarks. Returns a ranked list of high-risk employees with risk scores and suggested retention actions. Ideal for proactive talent retention strategies. Keywords: employee retention, poaching risk, compensation benchmark, LinkedIn activity, CHRO analytics.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
locationNoGeographic location filter (e.g., 'San Francisco, CA')
departmentYesDepartment filter (e.g., 'Engineering', 'Sales')
min_tenure_monthsNoMinimum tenure in months to include in analysis
benchmark_job_titleNoSpecific job title for compensation benchmarking

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
risk_assessmentNo
department_avg_riskNo
benchmark_comparisonNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is known. The description adds valuable context about the data sources (LinkedIn, BLS benchmarks) and the kind of output (ranked list, risk scores, retention actions), exceeding what annotations alone provide.

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 the core action in the first sentence. It is reasonably concise, though the keyword list at the end is somewhat redundant and adds no value beyond the previous sentences. Overall, it is efficient without being overly verbose.

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 moderate complexity, an output schema exists, and the description covers the key aspects: what it analyzes, what it returns, and the intended use case. It does not need to explain return values in detail since the output schema handles that. The description is complete enough for an agent to select and invoke the tool.

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 parameters are documented in the schema. The description does not add meaning beyond the schema—it references LinkedIn activity and compensation benchmarking, but does not explain specific parameters like department or min_tenure_months. Baseline 3 is 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 clearly states the tool's function: analyzing employee poaching risk using LinkedIn activity and compensation benchmarks, and returning a ranked list with risk scores and retention actions. It uses specific verbs and resources, and the focus on poaching risk distinguishes it from other HR/talent tools like comp_benchmark_geo_delta or candidate_screening_ranking.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description identifies a clear use case ('Ideal for proactive talent retention strategies') that implies when to use it. However, it does not explicitly state when not to use it or name alternative tools, though the context is sufficient for an agent to make a reasonable choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tariff_arbitrage_finderB
Read-onlyIdempotent
Inspect

As a COO, identify tariff reclassification opportunities to reduce import costs. Analyzes product HS codes against WTO TFA and USA Trade Online data to find lower-duty classifications. Inputs: product description, current HS code, country of origin, and annual import volume. Outputs: potential duty savings, alternative HS codes, and compliance considerations.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
annualVolumeNo
currentHsCodeYes
countryOfOriginYes
currentDutyRateNo
productDescriptionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
opportunitiesNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds context by specifying data sources (WTO TFA and USA Trade Online) and listing outputs (duty savings, alternative HS codes, compliance considerations). However, it does not disclose potential limitations, data freshness, or async behavior, so it adds moderate value beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: it opens with the primary purpose, then explains the method, and finally lists inputs and outputs. Every sentence earns its place, and it is appropriately front-loaded with the main use case.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core purpose, method, inputs, and outputs, and the output schema likely handles return details. However, it omits the currentDutyRate parameter, which may be important for calculating savings, and does not address async behavior or distinguish from similar tools. Given the tool's moderate complexity, the description is adequate but has clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17% (only async has a description), placing the burden on the description. The description lists four of the six parameters (product description, HS code, country of origin, annual import volume) but omits currentDutyRate and async. It provides only basic labels without explaining meaning, format, or relationships, so it only partially compensates for the low schema coverage.

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 clearly states the tool's purpose: 'identify tariff reclassification opportunities to reduce import costs' and specifies the method (analyzing HS codes against WTO TFA and USA Trade Online data). This is a specific verb+resource. However, it does not explicitly differentiate from sibling tools like tariff_impact_simulator, so it lacks explicit sibling differentiation.

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 context ('As a COO' and reducing import costs) and lists inputs/outputs, but it does not provide explicit when-to-use/when-not-to-use guidance or name alternatives. The usage is inferred from the purpose statement rather than clearly spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tariff_impact_simulatorA
Read-onlyIdempotent
Inspect

As a COO, model how proposed tariff changes affect landed costs for imported goods. Inputs: HS code, current tariff rate, proposed tariff rate, product value, shipping cost, and country of origin. Outputs: detailed cost breakdown including new duties, taxes, and total landed cost impact. Sources include WTO TFA and US Census trade data.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
hsCodeYes
productValueYes
shippingCostNo
countryOfOriginYes
currentTariffRateYes
proposedTariffRateYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
costImpactNo
currentDutyNo
proposedDutyNo
dutyDifferenceNo
currentLandedCostNo
proposedLandedCostNo
costImpactPercentageNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description complements these by clarifying this is a simulation (no side effects), listing the detailed cost breakdown outputs, and naming WTO TFA and US Census trade data as sources, giving agents a stronger sense of expected behavior.

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 three sentences, front-loaded with the primary use case, then inputs, outputs, and sources. Every sentence adds useful information without redundancy or 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?

Given an output schema exists and annotations are present, the description covers the essential context: purpose, inputs, outputs, and data sources. It does not explain optionality or async behavior, but these are captured in the input schema, so the description is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is low (14%), but the description names all six domain parameters in plain language, distinguishing current vs proposed tariff rates and tying them to landed-cost calculation. It omits units/currency, but the schema's min/max constraints and property names provide enough inference.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('model how proposed tariff changes affect landed costs') with a defined resource (imported goods cost structure). It includes expected outputs and names input variables, making the tool's purpose distinct from sibling tools like tariff_arbitrage_finder.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description establishes a clear use context ('As a COO, model how proposed tariff changes affect landed costs') and implies a decision-support scenario. It does not explicitly mention when not to use it or name alternatives, but the context is specific enough to guide selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tax_compliance_multiA
Read-onlyIdempotent
Inspect

Multi-jurisdiction tax compliance data for international SaaS, cross-border marketplaces and expat services. Five modes: (1) vat_lookup — validate EU VAT numbers live via VIES SOAP (27 EU countries) or UK VRN via HMRC; (2) sales_tax — US state sales tax rates, nexus thresholds (post-Wayfair 2018), digital goods taxability for all 50 states + DC; (3) gst — APAC GST/SST/consumption-tax rates for IN, SG, AU, NZ, MY, JP, KR, TH, ID, PH, VN with reduced rates and registration thresholds; (4) oss_ioss_eligibility — EU One-Stop-Shop and Import-OSS eligibility analysis (EUR 10k OSS threshold, EUR 150 IOSS per-consignment); (5) transfer_pricing_benchmark — OECD/JTPF operating-margin benchmarks by industry and country (20+ sectors, country-specific adjustments). Returns P0/P1/P2 compliance signals: P0=invalid VAT used for zero-rating, P1=taxable digital goods detected/audit risk, P2=filing deadlines/nexus alerts. Keyless — no API key required. Optional env: HMRC_VAT_API_KEY for UK VAT live validation. Cache TTL 24h.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesTax mode to invoke.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesMode-specific query: vat_lookup -> VAT number with country prefix (e.g. 'FR40303265045'); sales_tax -> US state code or name (e.g. 'CA', 'California'); gst -> ISO country code (e.g. 'SG', 'IN', 'AU'); oss_ioss_eligibility -> annual EU B2C revenue in EUR or keyword (e.g. '5000', 'below'); transfer_pricing_benchmark -> industry name (e.g. 'manufacturing', 'saas', 'r&d').
countryNoISO 3166-1 alpha-2 country code. Required for gst when query is ambiguous. Used in transfer_pricing_benchmark for country-specific OECD adjustments.
transaction_typeNoTransaction type for signal generation. 'digital' triggers GST/sales-tax digital goods warnings.

Output Schema

ParametersJSON Schema
NameRequiredDescription
gstNo
modeYes
statusYes
signalsYes
sourcesYes
oss_iossNo
sales_taxNo
vat_lookupNo
quality_scoreYes
transfer_pricingNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, but the description adds substantial behavioral context: keyless access, optional HMRC API key, 24h cache TTL, and the P0/P1/P2 compliance signal semantics. This goes well beyond the annotations and gives a clear picture of side effects and dependencies.

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 long but densely packed with essential specifics (e.g., 27 EU countries, EUR 10k threshold, 20+ sectors). It is organized by numbered modes, making it scannable. While a bit heavy, every clause contributes value; no fluff.

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?

The tool is complex with 5 modes and 5 parameters. The description covers all modes, their regional scope, output signals (P0/P1/P2), authentication needs, and caching. With an output schema present, return format is not needed. Highly complete for the tool's complexity.

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 each parameter already has detailed mode-specific examples in the schema. The description reinforces mode context but does not add significant new meaning 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?

The description clearly states the tool's purpose: multi-jurisdiction tax compliance data. It lists five specific modes (VAT lookup, sales tax, GST, OSS/IOSS eligibility, transfer pricing benchmark) with concrete details, distinguishing it from generic tax tools. The verb+resource pattern is strong and the scope is explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use each mode (e.g., 'EU VAT numbers live via VIES SOAP', 'US state sales tax rates', 'APAC GST rates') and notes keyless operation. However, it does not explicitly mention alternatives or when not to use this tool, so it lacks explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tax_optimizationC
Read-only
Inspect

Optimisation fiscale — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Reference case: Pennylane — Fiscalité optimisée · CIR €1.2M · IP Box France 10% · Économie totale €2.4M/an. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
ipAssetsNo
activitiesYes
financialsYes
jurisdictionsYes
currentTaxOptimizationsNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety profile is covered. The description adds useful behavioral context: 'Inputs are validated server-side' and that the return is a 'structured, audited deliverable'. This is valuable beyond annotations, though it does not describe output structure or error behavior in detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description includes promotional filler such as the reference case (Pennylane) and 'Gapup agent-payable', which do not aid tool invocation. The useful content is limited to two sentences about the deliverable and server-side validation. This is under-specification rather than concise, with unnecessary material that dilutes the core message.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 7 parameters, nested objects, and no output schema, making it complex. The description fails to explain the structure of the 'structured, audited deliverable' or what specific tax optimization outputs will be provided. It also does not clarify expected input formats beyond 'documented case fields', leaving agents without enough context to correctly assemble the required fields.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 14% (only the async parameter has a description). The description merely says 'send the documented case fields' without listing or explaining any of the 7 parameters. The schema itself relies on field names like 'financials' and 'jurisdictions', but the description adds no semantic meaning for what these should contain or how they relate to the optimization.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool performs 'Optimisation fiscale' and returns a 'structured, audited deliverable', giving a general sense of purpose. However, it lacks a specific verb+resource construction (e.g., 'optimizes a company's tax structure') and does not clearly differentiate from siblings like tax_compliance_multi or ma_tax_efficiency_mapper.

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?

No explicit guidance on when to use this tool versus alternatives. The mention of 'C-suite expertise (CFO)' hints at an intended audience but does not provide conditional context or exclusion criteria. Sibling tools with related tax functions are not referenced.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

term_sheet_negotiationB
Read-only
Inspect

Négociation term sheet — Gapup agent-payable C-suite expertise (FUNDRAISING). Returns a structured, audited deliverable. Reference case: Agicap Série C €50M — 8 clauses analysées · 3 rouges · Score fondateur 62/100 → plan pour 81. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
roundYes
companyYes
termSheetClausesYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true; the description adds that it returns 'a structured, audited deliverable' and that inputs are 'validated server-side'. This adds some behavioral context (output nature, validation) but does not disclose details like processing time, rate limits, or what 'audited' entails. No contradiction with 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 short, with four sentences. The reference case is somewhat illustrative but includes marketing-like phrasing ('Gapup agent-payable C-suite expertise'). Overall, it is efficient and front-loaded with the core purpose, but slightly padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a complex nested schema (company, round, termSheetClauses array) and no output schema. The description gives a high-level deliverable description and a reference case, but does not explain how to structure the inputs or what constitutes a valid term sheet case, making it insufficient for correct invocation without additional assumptions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 25% (only async has a description). The description says 'send the documented case fields' but does not explain what company, round, or termSheetClauses should contain. The reference case mentions clauses and a score but does not map inputs to schema fields, so it adds minimal parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Négociation term sheet' (term sheet negotiation) in a FUNDRAISING context. It specifies a verb+resource and is distinguished from siblings by the reference case showing analysis of clauses, red flags, and a founder score. The scope is unambiguous.

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 use for fundraising term sheet negotiation through the FUNDRAISING tag and reference case, but it does not explicitly state when to use or when not to use this tool versus alternatives. No mention of alternative tools or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tool_recommendA
Read-only
Inspect

Cross-tool recommendation system: given a free-text intent, returns the most appropriate tools from the 170+ Gapup MCP catalogue, ranked by confidence, with pre-filled input suggestions and an optimal multi-tool chain when applicable. Use this first when you are unsure which tool to call — it navigates the full catalogue for you. Supports 15+ static pre-designed chains for frequent intents (M&A due diligence, sanctions screening, ESG 360, AI Act compliance, FTO patent clearance, crypto wallet tracking, etc.). Domains: compliance | finance | intel | legal | content | data | trade | infra. Pure compute — $0.01/call, no external fetch. Ideal as a first call in any multi-step agent workflow.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoOptional ISO 639-1 language hint (fr, en, de, zh, es …). Used for language-aware boosting.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
domainNoOptional domain hint to boost tools in this category.
intentYesFree-text description of what you want to accomplish. E.g. 'Run a full M&A due diligence on Acme Corp' or 'Je veux vérifier qu'un fournisseur n'est pas sous sanctions OFAC'. FR/EN/DE/ZH supported.
max_resultsNoMax number of recommendations returned (1-10). Default 5.
include_chainNoWhether to include a suggested_chain of tools in the optimal sequence. Default true. Chain is always included for well-known intents (M&A, compliance, ESG, etc.).

Output Schema

ParametersJSON Schema
NameRequiredDescription
intentYes
statusYes
sourcesNo
not_coveredNo
quality_scoreYes
recommendationsYes
suggested_chainNo
alternative_pathsNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint and openWorldHint annotations, the description adds behavioral specifics: cost ($0.01/call), no external fetch, pure compute, and the ability to return optimal chains. This gives the agent a clear safety profile and operational expectations.

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 packs multiple critical pieces of information (purpose, usage, domains, chains, cost, no-fetch) into six focused sentences. While 'use this first' and 'ideal as a first call' are slightly redundant, the overall structure is tight and front-loaded.

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 output schema exists and annotations provide safety, the description is comprehensive for a recommendation tool. It covers scope, use cases, domains, and operational caveats (cost, no fetch), making it sufficient for an agent to decide when and how to invoke it.

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?

Input schema covers all 6 parameters with detailed descriptions (100% coverage), so the description doesn't need to explain individual parameters. It does reinforce the intent parameter's role and mentions language/domain hints, but adds little 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?

The description clearly defines the tool as a cross-tool recommendation system that takes a free-text intent and returns ranked tools with pre-filled inputs and multi-tool chains. This distinguishes it from the 170+ sibling tools by positioning it as the meta-navigator.

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 'Use this first when you are unsure which tool to call' and 'Ideal as a first call in any multi-step agent workflow', providing clear when-to-use guidance. The mention of deterministic chains for common intents also signals when it adds value.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trade_finance_eligibilityA
Read-onlyIdempotent
Inspect

Evaluates trade finance eligibility for CFOs by analyzing counterparty risk and jurisdiction using World Bank and BIS data. Inputs include counterparty country code (ISO 3166-1 alpha-3) and industry sector. Returns risk scores, eligibility flags, and financing terms. Ideal for assessing letters of credit, export credit agency guarantees, and other trade finance instruments. Keywords: trade finance, counterparty risk, jurisdiction risk, letters of credit, ECA guarantees.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
industrySectorYes
annualTradeVolumeUSDNo
counterpartyCountryCodeYes
counterpartyCreditRatingNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
eligibilityNo
financingTermsNo
countryRiskScoreNo
maxFinancingAmountUSDNo
recommendedInstrumentsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the description does not need to repeat safety information. It adds useful context about data sources (World Bank, BIS) and output types (risk scores, eligibility flags, financing terms), going beyond the structured annotations without contradicting them.

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 concise and well-structured, with each sentence serving a purpose: purpose, inputs, outputs, and use cases. It is front-loaded with the main function and avoids redundancy or 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?

The description provides sufficient context for an agent to select and invoke the tool: it explains what it does, who it's for, the key inputs, outputs, and typical use cases. Given the presence of an output schema, return values do not need exhaustive detail. However, it omits guidance on optional parameters and async behavior, which are partially covered by the 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 low (20%). The description explains two required parameters (counterpartyCountryCode with ISO 3166-1 alpha-3 format, and industrySector) but omits the optional parameters (annualTradeVolumeUSD, counterpartyCreditRating, async). It partially compensates for the schema gap but not fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Evaluates trade finance eligibility for CFOs by analyzing counterparty risk and jurisdiction using World Bank and BIS data.' It uses a specific verb ('evaluates') and identifies the resource ('trade finance eligibility'), distinguishing it from siblings by focusing on eligibility assessment with counterparty and jurisdiction analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear use cases: 'Ideal for assessing letters of credit, export credit agency guarantees, and other trade finance instruments.' This gives context for when to use the tool, though it does not explicitly mention when not to use it or compare to alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transcribe_chapterize_mediaA
Read-onlyIdempotent
Inspect

Transcription and chapterization of long-form media (YouTube, podcasts, direct audio/video) for content marketing teams, podcast publishers, edu tech, journalists and accessibility/compliance.

Pipeline: • YouTube → timedtext captions (keyless) + oEmbed metadata + native timecode chapters from description • Podcast RSS → episode description + duration + timecodes if embedded in show notes • Direct media → partial (requires Whisper API via OPENAI_API_KEY + force_whisper:true) • Chapters: native YouTube timecodes preferred; heuristic TF-IDF segmentation as fallback • Summary: extractive TF-IDF top-sentences (no LLM required) • Language detection: character-set heuristic (CJK→zh, kana→ja, hangul→ko, accents→fr/de/es)

Output formats: json (full structured object) | text (plain transcript) | srt | vtt

SLA: ≤15s budget total. Cache: 24h TTL.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube URL, podcast RSS feed URL, or direct MP3/MP4 URL. Example: "https://www.youtube.com/watch?v=jNQXAC9IVRw"
langNoISO 639-1 language hint (e.g. "en", "fr", "de"). Default "auto".
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
chapters_maxNoMaximum number of chapters. Default 8.
output_formatNoTranscript format. Default "json".
include_summaryNoInclude extractive summary. Default true.

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlYes
statusYes
signalsYes
sourcesYes
summaryNo
chaptersYes
segmentsYes
key_topicsYes
transcriptYes
source_typeYes
lang_detectedYes
quality_scoreYes
duration_secondsYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes far beyond annotations by disclosing technical details: keyless YouTube captions, Whisper API dependency for direct media, TF-IDF fallback for chapters, summary extraction approach, language detection heuristics, SLA of 15s, and 24h cache TTL. No contradiction with the readOnlyHint/idempotentHint 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 relatively long but well-structured with bullet sections for pipeline, chapters, summary, language detection, and output formats. Each section adds useful operational context. Slightly verbose with the audience list, but appropriate for a complex media-processing tool.

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 tool handling multiple media source types with output formats and async support, the description covers input variations, pipeline behavior, fallbacks, performance limits, and caching. Since an output schema exists, the description does not need to detail return values, and it provides everything else an agent needs for correct invocation.

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% for all 6 parameters with clear descriptions, so baseline is 3. The description does not add meaning to the parameters; it even mentions a 'force_whisper:true' flag not present in the schema, which could confuse an agent. Minimal added value beyond 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?

The description opens with a specific verb and resource: 'Transcription and chapterization of long-form media.' It names concrete source types (YouTube, podcasts, direct audio/video) and target use cases (content marketing, podcast publishers, etc.), making the tool's purpose immediately clear and distinct from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the pipeline for each input type (YouTube, podcast RSS, direct media) and notes when direct media requires extra setup (Whisper API). It gives clear context on when to use the tool, though it does not explicitly name alternatives or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

treasury_optimizerC
Read-only
Inspect

Optimiseur de trésorerie — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Reference case: Alan — Trésorerie €380M post-Série F · Allocation optimale 4 instruments · Yield +145bp · +€5.5M/an. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
horizonNo
constraintsYes
cashPositionYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so the description does not need to restate that. It adds that inputs are validated server-side and that the deliverable is audited, which is useful but minimal. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively short but includes promotional content (reference case with metrics) that does not aid tool invocation. It front-loads the purpose but is not tightly structured for technical clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/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 should describe what the deliverable contains, but it remains vague ('structured, audited deliverable'). It also omits parameter explanations and detailed use-case context, making it incomplete for a complex tool with nested objects and five parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 20% (only async has a description). The tool description does not explain the meaning of company, cashPosition, constraints, or horizon. It only says 'send the documented case fields' without elaborating, leaving the agent to guess from schema names alone.

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 identifies the tool as a treasury optimizer and states it returns a structured, audited deliverable, with a reference case showing allocation optimization. This is clear enough, though it lacks a crisp verb+resource phrase and does not explicitly differentiate from sibling finance 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?

No explicit guidance on when to use this tool versus alternatives like working_capital or capital_strategy. The reference case and 'C-suite expertise (CFO)' hint at context, but there are no clear use-case boundaries or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trend_watcherA
Read-onlyIdempotent
Inspect

Monitor emerging trends, regulatory shifts and adoption signals for a given market sector. Returns 5-12 trend cards, each with a momentum score (rising/stable/declining), a 3-month and 12-month outlook, opportunity windows, and recommended actions. When to use this tool: the user asks what is heating up in a market, wants to time a product roadmap or content calendar, or needs an early read on a sector. Inputs: a sector to monitor and 3-8 keywords defining the watch perimeter. Delivered by Manue, the AI CMO of the Gapup portfolio.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
focusNoOptional context (geography, language target, comparator window, etc.)
sectorYesSector to monitor (e.g. 'B2B SaaS productivity', 'EU fintech', 'climate-tech hardware')
keywordsYes3-8 keywords describing the watch perimeter

Output Schema

ParametersJSON Schema
NameRequiredDescription
kpisNo3-5 headline KPI bubbles
trendsYes5-12 trend cards for the sector
recommendationsNoPrioritised strategic recommendations
executiveSummaryYesBoard-ready sector overview prose
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as read-only, idempotent, and non-destructive, so the safety profile is covered. The description adds meaningful behavioral context beyond annotations by specifying the return shape (5-12 trend cards), the momentum scoring categories, and the outlook/opportunity/action structure. It does not cover all runtime behavior (e.g., async latency), but that is already documented in the input schema.

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 well-structured: function first, then output details, usage guidance, inputs, and attribution. It is concise and front-loaded. The final sentence 'Delivered by Manue...' is arguably non-essential, but it does not detract significantly from clarity.

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 presence of an output schema, the description does not need to restate return values. It covers purpose, output characteristics, when to use, and inputs. It could mention data sources or limitations, but for an agent selecting and invoking the tool, the description plus schema and annotations provide sufficient context.

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 the input schema fully documents all four parameters. The description only restates 'a sector to monitor and 3-8 keywords defining the watch perimeter,' which adds the phrase 'watch perimeter' but does not provide new information beyond the schema's min/max constraints and field descriptions.

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 opens with a specific verb and resource: 'Monitor emerging trends, regulatory shifts and adoption signals for a given market sector.' It adds concrete output details (5-12 trend cards, momentum score, 3-month/12-month outlook) and use cases, clearly differentiating it from sibling tools like market_research_brief or competitor_intel.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use the tool: 'the user asks what is heating up in a market, wants to time a product roadmap or content calendar, or needs an early read on a sector.' It does not name alternative tools or exclusions, but provides clear contextual triggers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ugc_moderation_classifierA
Read-onlyIdempotent
Inspect

Multi-language UGC content moderation for marketplaces, social platforms and comment systems. Detects policy violations in text content across 9 policies and 12 languages without external API calls.

Policies checked: • hate — hate speech, slurs, dehumanization (50+ terms × 12 languages) • sexual — explicit sexual content, pornography references, nudity solicitation • violence — threats, weapon references, graphic violence • self_harm — suicidal ideation, self-injury, eating disorder promotion • harassment — doxxing, stalking, cyberbullying, blackmail • scam — phishing, investment fraud, romance scam, lottery fraud • spam — bots, keyword stuffing, excessive caps, emoji storms, suspicious URLs • copyright — piracy, leaked content, serial keys, streaming fraud • minor_safety — grooming signals, CSAM references, minor + adult content combos

Languages: en / fr / de / es / it / pt / nl / zh / ja / ko / ar / ru (auto-detected)

Output includes severity (low/medium/high/severe), confidence (0-100), matched patterns, excerpt, recommended action, age appropriateness (adult/teen/child), and signals.

No API key required. Stateless — no content is stored or logged.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoLanguage override. If omitted, language is auto-detected.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
contentYesText content to moderate (comment, review, post, chat message).
policiesNoPolicies to check. Default: all 9 policies.
content_typeNoType of content. Affects recommended_action heuristic. Default: comment.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
signalsYes
sourcesYes
violationsYes
lang_detectedYes
quality_scoreYes
age_appropriateYes
content_previewYes
policies_checkedYes
recommended_actionYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark it read-only and idempotent, but the description goes further by disclosing that no external API calls are made, no API key is required, and the tool is stateless with no content stored or logged. It also details the output fields (severity, confidence, matched patterns, excerpt, recommended action, age appropriateness, signals), exceeding annotation coverage.

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 a concise summary, then uses bullet lists for policies and languages, making it scannable and well-organized. It is longer than some tool descriptions, but the enumerated policy details and language list are directly useful for an agent deciding invocation and parameter values, so each line earns its place.

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 tool's complexity (9 policies, 12 languages, multiple optional parameters) and the presence of a rich output schema, the description fully covers use cases, policies, languages, behavioral guarantees (stateless, no API key), and output highlights. The agent has enough context to select the tool and configure relevant parameters correctly.

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 the schema already documents all five parameters with clear descriptions and enums. The description adds context on the overall policy and language sets, but does not add new semantics beyond what the schema provides for individual parameters. Baseline 3 is 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 a specific verb ('detects policy violations') and names the exact resource (text content for UGC moderation across marketplaces, social platforms, comment systems). It clearly distinguishes itself from sibling tools by enumerating the 9 policies and 12 languages, making its scope unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly states when to use it: for moderating user-generated content across marketplaces, social platforms, and comment systems. It does not explicitly name alternatives or exclusions, but the content scope and policy list provide clear context for when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

upsell_hunterC
Read-only
Inspect

Chasseur d'upsell — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub — Upsell 8 comptes · €127k potentiel · Top 3 : Alan+Qonto+Pennylane · Playbook 5 étapes. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
horizonNo
productYes
accountsYes
targetUpsellEurNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=true and openWorldHint=true, so the agent knows this is a safe read operation with variable output. The description adds that it returns a 'structured, audited deliverable' and that inputs are validated server-side, which is useful context beyond the annotations. However, it doesn't disclose other behavioral traits such as potential delays, output size, or any prerequisites beyond field validation, so it adds moderate but not rich context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence but includes some clutter like 'Gapup agent-payable C-suite expertise (CRO)' that may distract rather than inform. It front-loads the core purpose and includes a reference case, which is useful, but the phrasing is not maximally clean. It earns a middle score for being moderately concise but not fully streamlined.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (6 parameters, nested objects, no output schema), the description is incomplete. It says it returns a 'structured, audited deliverable' but does not detail the structure or fields of that deliverable. The reference case gives a glimpse, but it is not a formal description. Input semantics are also largely omitted. The agent would need additional information to invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17% (only 'async' has a description). The description mentions 'send the documented case fields' but does not explain any of the parameters (company, product, accounts, horizon, targetUpsellEur) or their semantics. This falls short, as the schema leaves most parameter meanings implicit and the description does not compensate for the low coverage.

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 clearly identifies the tool as an 'upsell hunter' providing C-suite expertise for CRO, and states it 'Returns a structured, audited deliverable.' The reference case (e.g., 'Upsell 8 comptes · €127k potentiel · Top 3 : Alan+Qonto+Pennylane · Playbook 5 étapes') provides a concrete example of the output, giving clear scope. However, it does not explicitly differentiate from sibling tools like cross_sell_reco or account_expansion_mapper, so it misses the top distinction.

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 description gives no explicit guidance on when to use this tool versus alternatives. It includes 'Inputs are validated server-side — send the documented case fields,' which is an input instruction rather than usage context. There are no exclusions or mentions of alternative tools for different scenarios, so it falls into 'no guidance' territory.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

usdc_x402_payments_intelA
Read-only
Inspect

Real-time analytics on x402 protocol USDC micropayments for MCP endpoints on Base network. Unique competitive advantage: aggregates internal production telemetry (our own traffic data) with on-chain USDC Transfer events and Bazaar marketplace listings — data no external competitor can access. Four modes: (1) facilitator_stats — Coinbase x402 facilitator settlement statistics (volume, count, top payees/payers). Uses Coinbase CDP API if COINBASE_X402_API_KEY is set; falls back to Base mainnet RPC scan of USDC transfers to known facilitator addresses. (2) endpoint_intel — Per-MCP-endpoint analytics: tx count, USDC volume, unique callers, success rate, catalog size. For gapup-mcp.io endpoints: reads internal JSONL telemetry (richest data source, unique). (3) agent_caller_profile — Anonymous profile of a calling agent wallet: tx count, USDC spent, top endpoints, inferred persona (depth-seeker / bulk-scanner / generalist / researcher / explorer). Wallet anonymised via SHA-256. (4) price_radar — USDC price distribution by tool category (data_lookup / synthesis / compliance / competitive) from Bazaar + internal catalog. Returns median, P25, P75. Network: Base mainnet. USDC contract: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913. Cache: 30 min LRU. Timeout per source: 8s. Optional env: COINBASE_X402_API_KEY (higher-fidelity facilitator stats).

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesAnalytics mode: facilitator_stats=network-wide settlements | endpoint_intel=per-URL analytics | agent_caller_profile=per-wallet analytics | price_radar=price distribution by category
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
categoryNoTool category for price_radar mode. Defaults to all.
period_daysNoLookback window in days (5-90, default 30)
endpoint_urlNoMCP endpoint URL for endpoint_intel mode (e.g. https://mcp.gapup.io/mcp)
wallet_addressNoEVM wallet address for agent_caller_profile mode (0x...)

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
sourcesYes
price_radarNo
quality_scoreYes
endpoint_intelNo
facilitator_statsNo
agent_caller_profileNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds substantial behavioral context: data source fallback (Coinbase CDP API vs Base RPC scan), use of internal JSONL telemetry for gapup-mcp.io, SHA-256 wallet anonymization, 30-minute LRU cache, 8-second timeout per source, and optional COINBASE_X402_API_KEY. This goes far beyond the annotations and helps the agent anticipate performance, data freshness, and privacy handling.

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 long but information-dense, using a numbered mode list and semicolon-separated details. It front-loads the core purpose, then flows into modes and technical specifics (network, contract, cache, timeout). While it could be more succinct, every sentence earns its place for this complex multi-mode tool, and the structure aids 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?

The description covers network (Base mainnet), USDC contract address, caching, timeout, data source details for each mode, and high-level outputs (e.g., median, P25, P75 for price_radar). Given the presence of an output schema, it is not necessary to document return structures exhaustively. This is a complete and self-sufficient description for a multi-mode analytics tool.

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?

Though the input schema already provides 100% parameter descriptions, the description adds meaningful context: it explains what each analytical mode returns, how data sources vary by mode, and the fallback behavior tied to the API key. For example, facilitator_stats description clarifies that network-wide settlement stats may originate from Coinbase CDP API or an RPC scan. This adds value beyond the schema's per-parameter summaries.

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 opens with a specific verb and resource: 'Real-time analytics on x402 protocol USDC micropayments for MCP endpoints on Base network.' It then enumerates four distinct modes (facilitator_stats, endpoint_intel, agent_caller_profile, price_radar), each with clear output focus. This clearly distinguishes it from siblings like x402_liquidity_monitor or x402_payment_flow_analyzer by positioning it as an intel/analytics tool with unique data aggregation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use each mode (e.g., endpoint_intel for per-URL analytics, agent_caller_profile for per-wallet analytics) and highlights unique capabilities like internal telemetry access. However, it does not explicitly mention alternatives or exclusion conditions relative to sibling tools (e.g., 'for fraud detection, use x402_payment_fraud_detector'), so it stops short of full usage differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vendor_esg_blacklist_monitorA
Read-onlyIdempotent
Inspect

As a COO, quickly check if a vendor is blacklisted for ESG non-compliance using CDP and GRI data. Input the vendor's legal name or identifier to receive their ESG risk score, blacklist status, and compliance violations. Returns structured data including CDP disclosure score, GRI alignment, and any regulatory flags. Ideal for vendor due diligence, risk assessment, and sustainability reporting. Keywords: ESG, vendor risk, compliance, CDP, GRI, sustainability, blacklist.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoReporting year (default: current year)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
vendorIdNoOptional identifier (e.g., LEI, DUNS)
vendorNameYesLegal name of the vendor to check

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
vendorIdNo
warningsYes
griAlignedNo
vendorNameYes
violationsNo
blacklistedYes
esgRiskScoreNo
cdpDisclosureScoreNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, openWorld, and idempotent. Description adds that it uses CDP/GRI data and returns specific structured output fields, providing additional context about data sources and result contents.

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?

Description is three sentences plus keyword list, front-loaded with 'quickly check if a vendor is blacklisted'. No wasted words, though keywords are slightly 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?

With output schema present and read-only annotations, the description sufficiently covers purpose, data sources, and use cases. No need to detail return values since output schema exists. Slight lack of error handling info, but acceptable.

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?

All parameters have schema descriptions (100% coverage). The description mentions vendor legal name or identifier but adds no new semantics beyond schema; it doesn't explain year or async behavior.

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?

Description clearly states it checks if a vendor is blacklisted for ESG non-compliance using CDP and GRI data, and specifies outputs like ESG risk score, blacklist status, and compliance violations. This is a specific verb+resource+scope that distinguishes from sibling vendor risk tools.

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?

States 'Ideal for vendor due diligence, risk assessment, and sustainability reporting', giving clear context for when to use. Does not explicitly name alternatives or exclusions, so not a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vendor_esg_diversity_scannerA
Read-onlyIdempotent
Inspect

For COOs: scans vendor ESG reports to identify suppliers lacking diversity disclosures in GRI or CDP filings. Input a supplier name or identifier to receive a structured assessment of gender, ethnicity, and board diversity metrics. Returns compliance gaps, missing data flags, and source references from CDP open data and GRI standards. Ideal for vendor risk assessment and ESG compliance tracking.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoReporting year to check (default: current year)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
supplierIdNoCDP or GRI identifier for the supplier (e.g., CDP company ID)
supplierNameYesExact or partial name of the supplier to scan

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
reportLinksNoURLs to relevant ESG reports
supplierNameYes
complianceScoreYesPercentage compliance with diversity disclosure standards
diversityDisclosuresYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds useful behavioral context: it scans reports, returns compliance gaps, missing data flags, and source references from CDP and GRI. No contradictions with annotations are present.

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 three sentences long and front-loaded with the target audience. Each sentence provides distinct value: purpose, input/assessment, and use case. While slightly verbose, it avoids redundancy and remains focused.

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 a tool with 4 parameters and an output schema, the description covers purpose, inputs, outputs, data sources, and ideal use cases. The output schema handles return structure details, so the description needn't repeat them. Minor omission: no mention of the async parameter or handling of optional identifiers, but overall it is adequately complete.

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 (year, async, supplierId, supplierName) are already documented. The description only loosely echoes 'supplier name or identifier', which does not add meaningful semantic detail beyond the schema. With high coverage, this baseline of 3 is 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 a specific verb ('scans') and resource ('vendor ESG reports') to clearly state the tool's function: identifying suppliers lacking diversity disclosures in GRI or CDP filings. This unique focus on diversity disclosures distinguishes it from sibling tools like supplier_esg_audit or vendor_esg_blacklist_monitor.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use the tool ('vendor risk assessment and ESG compliance tracking') and targets a specific audience ('For COOs'). However, it does not explicitly mention when not to use it or contrast with alternatives, stopping short of full exclusion guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vendor_managementD
Read-only
Inspect

Gestion des fournisseurs — Gapup agent-payable C-suite expertise (COO). Returns a structured, audited deliverable. Reference case: Qonto (12 fournisseurs · €2.4M/an) — €290k économies identifiées · 4 renegociations prioritaires. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
vendorsYes
objectivesYes
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and openWorldHint=true. The description adds 'Returns a structured, audited deliverable' and 'Inputs are validated server-side', but it does not explain the deliverable's structure, content, or how the async parameter works. Given no output schema, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description includes a promotional reference case ('Qonto (12 fournisseurs · €2.4M/an) — €290k économies identifiées') that provides no operational value for an AI agent. The core purpose is buried in marketing, and the useful information is minimal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This tool has a complex nested schema (company, vendors, objectives) and no output schema. The description does not explain what the tool does, what inputs are expected in detail, or what the returned deliverable looks like. It is inadequate for an agent to select and invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only the 'async' parameter has a schema description (25% coverage). The description refers to 'documented case fields' but does not elaborate on company, vendors, or objectives, nor their nested structures. This fails to compensate for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is essentially the title 'Gestion des fournisseurs' and marketing claims ('Gapup agent-payable C-suite expertise'). It does not state a specific action such as 'analyze' or 'optimize', and it does not differentiate from siblings like vendor_risk_assessor or procurement_spend_optim. The reference case hints at savings but the core function is left vague.

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?

No explicit guidance on when to use vs. alternatives. The only instruction is 'send the documented case fields', which is about invocation, not selection. There is no mention of scenarios, prerequisites, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vendor_risk_assessorC
Read-only
Inspect

Évaluateur de risque fournisseurs — Gapup agent-payable C-suite expertise (RISK). Returns a structured, audited deliverable. Reference case: Gapup Hub — 15 fournisseurs · €1.8M spend · 3 critiques · Heatmap + plan de remédiation. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
vendorsYes
riskFrameworkNo
assessmentPurposeNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds a couple of behavioral details such as server-side validation and the production of a structured deliverable, which goes slightly beyond the readOnlyHint annotation. It does not contradict annotations, but it does not disclose any additional side effects, rate limits, or authorization requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively short but contains promotional language ('Gapup agent-payable C-suite expertise (RISK)') and a reference case that is illustrative but not essential. The core functional content is compact, but the marketing fluff reduces efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex tool with nested objects, multiple enums, and no output schema, yet the description does not explain required vendor fields, risk frameworks, assessment purpose, or the deliverable's structure. The instruction to 'send the documented case fields' is too vague for an agent to know what to provide, making the description incomplete for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description does not explain any of the parameters at all, only referring vaguely to 'documented case fields.' With schema description coverage at only 20%, the description fails to clarify the meaning of company, vendors, riskFramework, assessmentPurpose, or the nested fields, leaving an agent without adequate information to construct a valid request.

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 clearly identifies the tool as a vendor risk assessor that returns a structured, audited deliverable, and provides a concrete reference case. However, it does not explicitly differentiate this tool from sibling risk-related tools such as cyber_risk_auditor or supplier_esg_audit.

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?

There is no guidance on when to use this tool versus alternatives, nor any reference to exclusions or specific use cases. The reference case implies a typical scenario but does not state the appropriate context or distinguish it from other risk assessment tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vertical_ai_agent_governanceA
Read-onlyIdempotent
Inspect

Generates a comprehensive vertical AI agent workforce integration plan for CHROs, including governance frameworks, human-AI collaboration metrics, and upskilling recommendations. Inputs: industry vertical, workforce size, and current AI adoption level. Outputs: role-specific AI integration roadmaps, skill gap analysis, and performance benchmarks. Uses O*NET skill taxonomies and Gartner AI adoption trends. For best results with large datasets, pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
industryYes
target_rolesNo
workforce_sizeYes
ai_adoption_levelNo
include_benchmarksNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
skill_gap_analysisNo
integration_roadmapNo
collaboration_metricsNo
governance_recommendationsNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the agent knows it's a safe, non-mutating operation. The description adds valuable behavioral context by noting the use of O*NET and Gartner data, and importantly advises 'pass async:true to avoid timeout' for large datasets—revealing a performance characteristic not covered by annotations. This exceeds the baseline expected when annotations are present.

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 remarkably concise, packing purpose, inputs, outputs, data sources, and a usage tip into two sentences. The Inputs/Outputs structure is easily scannable, and there is zero redundancy. Every sentence adds value, making it a model of efficiency.

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?

The description covers the core purpose, key inputs, outputs, and data sources, and an output schema exists to handle return value details. However, it fails to describe the optional target_roles and include_benchmarks parameters, which could lead to an agent not using them. Given the tool's moderate complexity and existing schema, this is a minor but real gap, so a 4 is appropriate.

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 low (17%), so the description must compensate. It does explain the meaning of three parameters (industry, workforce_size, ai_adoption_level) by calling them inputs, but it omits target_roles and include_benchmarks entirely, and only mentions async in the timeout advice. It adds partial semantic value but leaves significant gaps, especially for two optional parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Generates a comprehensive vertical AI agent workforce integration plan for CHROs.' It names the specific resource (vertical AI agent workforce integration plan), the audience (CHROs), and the key content areas (governance frameworks, collaboration metrics, upskilling). This specificity distinguishes it from the broad 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?

The description provides clear usage context: it is for CHROs planning AI agent integration, with specific input types (industry, workforce size, AI adoption level). However, it does not explicitly mention when not to use this tool or suggest any sibling alternatives. The context is strong enough for an agent to decide when to invoke it, but the lack of explicit exclusion/alternative guidance prevents a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vuln_exploitability_forecastA
Read-onlyIdempotent
Inspect

As a CTO, assess the exploitability risk of CVEs using EPSS scores and cloud asset exposure data. Input a CVE ID (e.g., CVE-2021-44228) to receive exploitability likelihood, affected cloud services, and threat intelligence context. Returns structured risk metrics for prioritization. Sources: CVE NVD, OpenCVE, GitHub Advisories. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
cveIdYes
cloudProviderNo
includeDetailsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
cveIdYes
statusYes
sourcesYes
warningsYes
epssScoreNo
lastUpdatedNo
cloudExposureNo
epssPercentileNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds valuable context by naming data sources (CVE NVD, OpenCVE, GitHub Advisories) and disclosing potential timeout behavior with an async option. This goes beyond the annotations to inform the agent about response latency and external dependencies.

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 three sentences long, each serving a purpose: stating the core function, specifying input/output, and providing sources and async guidance. It is front-loaded with the main action and contains no redundant or filler wording.

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?

With annotations and an output schema present, the description covers the core use case and adds source/async context. However, it omits explanations for cloudProvider and includeDetails, and lacks guidance on choosing this tool over related vulnerability tools, making it adequate but not fully complete for a 4-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 25% (only async has a description). The description explains the core cveId parameter with an example and mentions async to avoid timeouts, but it does not explain cloudProvider or includeDetails, leaving half of the parameters unspecified. This only partially compensates for the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('assess') with a specific resource ('exploitability risk of CVEs') and distinguishes itself by mentioning EPSS scores and cloud asset exposure data. It also identifies the input (CVE ID) and output (exploitability likelihood, affected cloud services, threat intelligence context), making the tool's purpose unmistakable and distinct from generic CVE lookup tools.

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 a use case for CTOs prioritizing vulnerabilities but does not explicitly state when to use this tool versus siblings like cve_security_lookup or vuln_patch_priority_engine. It includes an operational hint about passing async:true to avoid timeout, but offers no exclusions or alternative tool references.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vuln_patch_priority_engineA
Read-onlyIdempotent
Inspect

As a CTO, quickly prioritize unpatched CVEs by combining exploitability scores (EPSS) with cloud asset criticality. Input a list of CVE IDs and your AWS service types (e.g., EC2, RDS) to receive a ranked patching order with risk scores and estimated cloud impact. Uses public NVD, OpenCVE, and AWS pricing data. Ideal for vulnerability management and cloud security posture improvement.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
cveIdsYesList of CVE identifiers to analyze (e.g., ["CVE-2021-44228", "CVE-2023-3824"])
maxResultsNoMaximum number of prioritized CVEs to return (default: 10)
awsServicesNoAWS service types affected by these CVEs (e.g., ["EC2", "RDS", "Lambda"])

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
prioritizedCvesNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, covering safety and idempotency. The description adds useful context about how it works (combining EPSS with criticality) and data sources (NVD, OpenCVE, AWS pricing), which helps the agent understand the tool's behavior beyond the annotations. No contradictions detected.

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 three sentences: a role-based hook, a concise input/output statement, and a use-case sentence. Each sentence adds unique value, and there is no redundant or filler content. It is front-loaded with the core purpose and efficiently structured.

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 presence of an output schema and strong annotations, the description covers the essential operational aspects: purpose, inputs, outputs, and use case. It could be slightly more complete by mentioning when not to use it or comparing to alternatives, but overall it is sufficient for a tool of moderate complexity.

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?

The input schema already provides 100% coverage for all four parameters, including descriptions for cveIds, awsServices, maxResults, and async. The description mentions the inputs but does not add significant meaning beyond the schema. The role of awsServices in asset criticality is already implied by the schema description, so baseline 3 is 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 clearly states the tool's function: prioritizing unpatched CVEs by combining EPSS exploitability scores with cloud asset criticality. It specifies the input (CVE IDs and AWS service types) and output (ranked patching order with risk scores and cloud impact), and the unique combination of EPSS with asset criticality distinguishes it from sibling tools like cve_security_lookup or vuln_exploitability_forecast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context by stating it is 'Ideal for vulnerability management and cloud security posture improvement,' which indicates when to use it. However, it does not explicitly mention alternatives or exclusion criteria compared to other vulnerability tools, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

weather_climate_intelA
Read-only
Inspect

Physical climate intelligence for insurance underwriting, agritech, logistics, energy trading and ESG/climate risk disclosure. Three modes: (1) forecast — 14-day daily weather forecast with temperature, precipitation, wind and humidity; (2) historical — daily records and monthly aggregates for any date range since 1940, with anomaly detection (P90/P95 heat events, extreme precipitation days); (3) climate_risk — long-term physical risk scoring combining CMIP6 ensemble projections (2020-2050), altitude, FEMA flood zones (US) and historical baselines. Risk dimensions: flood, heat (days >35°C/year), drought (SPI), wildfire, sea-level. Overall score 0-100 (100 = severe). Location: city string or lat/lon coordinates. Sources: Open-Meteo (keyless, global, 1940→2050), Open-Elevation, FEMA NFHL (US), NOAA CDO (optional NOAA_API_KEY env var for US+global station data). SLA: ≤25s p95. Cache: 1h forecast / 24h historical / 7d climate_risk.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYes'forecast' (14 days), 'historical' (date range since 1940), 'climate_risk' (long-term physical risk score)
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
date_toNoISO date YYYY-MM-DD — end of date range (required for historical/climate_risk)
metricsNoWeather metrics to include. Default: all metrics.
locationYesGeographic location. Provide either {city, country?} or {lat, lon}.
date_fromNoISO date YYYY-MM-DD — start of date range (required for historical/climate_risk)

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
statusYes
sourcesYes
forecastNo
locationYes
historicalNo
climate_riskNo
quality_scoreYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Despite annotations already declaring readOnlyHint and destructiveHint false, the description goes far beyond them with rich behavioral details: data sources (Open-Meteo, Open-Elevation, FEMA, NOAA), SLA (≤25s p95), cache durations (1h/24h/7d), optional API key, and async behavior for slow requests. This provides exceptional transparency about how the tool operates.

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 a single, dense paragraph that front-loads the main purpose and then efficiently covers modes, risk dimensions, location inputs, data sources, SLA, and caching. Every sentence adds unique value, with no filler or repetition. The structure is logical, progressing from high-level overview to specifics.

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?

The description is exceptionally complete for a complex tool with three modes and nested parameters. It covers purpose, modes, risk dimensions, location formats, data sources, performance expectations, caching, and optional configuration. Given that an output schema exists, the description appropriately avoids repeating return-value details, yet still provides enough contextual depth for an agent to invoke the correct mode and parameters.

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 parameters. The description adds meaningful context above that, such as explaining that 'historical' mode includes anomaly detection and date ranges since 1940, and that 'climate_risk' aggregates CMIP6 projections and risk scoring dimensions (flood, heat, drought, etc.). This deepens the agent's understanding of the 'mode' parameter's semantics and the tool's domain expertise.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs and resources: 'Physical climate intelligence for insurance underwriting...' and enumerates three distinct modes (forecast, historical, climate_risk). It is highly specific and differentiates itself from a wide range of siblings by focusing on weather/climate data with detailed mode definitions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use the tool via explicit use cases ('insurance underwriting, agritech, logistics, energy trading') and explains the three modes, which helps the agent choose the appropriate configuration. However, it does not explicitly mention when not to use it or name alternative tools, so a perfect 5 is not warranted.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

web_answerAInspect

Get a direct, cited answer to a question, grounded in live web sources. Returns the answer text plus the sources it was built from. Use when you want a conclusion rather than a list of links.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesThe question to answer
includeTextNoInclude the full text of each cited source (default false)
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full transparency burden. It discloses that the tool works with 'live web sources' and returns 'the answer text plus the sources it was built from', implying a read operation. However, it does not mention potential latency, rate limits, or failure modes (e.g., if no answer is found). Since the operation is read-only and non-destructive, a score of 3 is appropriate – it provides some context but lacks depth.

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 just two sentences and gets straight to the point. The first sentence states the core function, the second explains when to use it. No wasted words, all content is useful and 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?

Given the tool's moderate complexity (3 parameters, no output schema), the description covers the essential context: what it does, what it returns, and when to use it. It does not explain the async behavior or error handling, but the schema already covers the async parameter. The return shape is described as 'answer text plus sources', which is sufficient. This is a solid description for the tool's simplicity, though a note about async or fallback behavior would push it to 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%, meaning all three parameters (query, async, includeText) are already documented in the input schema. The tool description does not add new parameter semantics beyond mentioning 'sources' which loosely relates to includeText but does not explicitly explain any parameter. Thus it meets the baseline of 3 but does not exceed it.

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 starts with 'Get a direct, cited answer to a question, grounded in live web sources' which clearly states the verb (get), the resource (question grounded in live web sources), and the outcome (answer with citations). It also distinguishes itself from sibling tools by explicitly contrasting with 'rather than a list of links', making the purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit guidance: 'Use when you want a conclusion rather than a list of links.' This tells the agent when to choose this tool over a search tool. However, it does not explicitly name alternative tools like web_search or mention scenarios where this tool should not be used, so it falls just short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

web_contentsAInspect

Extract the full text of specific URLs, with optional highlights and a summary. Use when you already know which pages you need, rather than searching for them.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlsYesThe URLs to extract
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
summaryNoAlso return a short summary of each page
highlightsNoAlso return the most relevant excerpts
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the behavioral transparency burden. It makes clear this is a read-only extraction ('Extract the full text'), but it does not mention potential slowness, the async mechanism (though schema covers this), or any other operational caveats. The description adds minimal behavioral context beyond the purpose.

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, front-loaded with the primary function and a clear usage condition. Every word serves a purpose, and it is easy to scan.

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 straightforward extraction tool with a well-specified schema and no output schema, the description is largely complete. It covers the core use case and distinguishes from search. However, it does not explicitly mention the availability of async mode or the possibility of large outputs, though those are in the 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 parameter descriptions cover 100% of the parameters, providing full detail on urls, async, summary, and highlights. The description adds little new meaning—only a high-level reference to 'optional highlights and a summary' which corroborates the schema. Baseline of 3 is appropriate given the complete schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Extract the full text of specific URLs' with optional highlights and summary. This is a specific verb and resource, and the closing phrase 'rather than searching for them' differentiates it from sibling search tools like web_search.

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?

Provides direct usage guidance: 'Use when you already know which pages you need, rather than searching for them.' This clearly indicates when to use and implicitly contrasts with search-based alternatives, but it does not explicitly name a sibling tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

webhooks_manageAInspect

Manage HTTP webhook callbacks for async tools (T5/T6 batch flagships). Instead of polling every 5s, register a callback URL — Gapup posts the job result to your endpoint the moment it completes. Supported events: job.completed | job.failed | monitoring.alert | quota.threshold. Modes: register (add endpoint), list (view active webhooks), revoke (soft-delete), test (fire a test payload to verify your receiver), history (last 20 fires). Security: every delivery is signed with HMAC-SHA256 on the body — verify the X-Gapup-Signature header against sha256(secret, body).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo(register) HTTPS/HTTP endpoint that will receive POST callbacks. Must return 2xx within 10s.
modeYesregister — add a webhook endpoint. list — view your active webhooks. revoke — soft-delete a webhook by webhook_id. test — fire a test payload to verify the receiver is alive. history — last 20 delivery attempts for a webhook.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
eventsNo(register, optional) Events to subscribe to. Defaults to all events if omitted.
secretNo(register, optional) A secret string used to sign deliveries with HMAC-SHA256. Store it safely — verify X-Gapup-Signature header on your receiver.
webhook_idNo(revoke / test / history) The webhook_id returned from register.
caller_hashNoOptional caller identity override. If omitted, uses the internal session hash.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the sparse annotations (readOnly=false, destructive=false), the description discloses important behaviors: soft-delete for revoke, test payload firing, history limited to 20 entries, HMAC-SHA256 signing, and the 10s response requirement. These are not evident from annotations or schema.

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 a single well-organized paragraph that front-loads the core purpose, then covers modes, events, and security in a compact, non-redundant manner. Every sentence adds essential information without padding.

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 tool's complexity (5 modes, event subscriptions, security), the description covers all key usage aspects including authentication, event types, and behavior. With a present output schema, return values are not required in the description, making it complete.

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 schema already provides full descriptions for all 7 parameters (100% coverage). The tool description adds value by clarifying the workflow (e.g., register returns webhook_id for later use, async mode returns job_id) and by explaining the security parameter's role, going slightly 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?

The description clearly states it manages HTTP webhook callbacks for async tools, and lists five distinct modes (register, list, revoke, test, history). This specific verb and resource scope distinguishes it from all sibling tools, which focus on other domains.

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 positions the tool as an alternative to polling ('Instead of polling every 5s'), and explains the purpose of each mode. It also specifies supported events and security requirements, giving clear context for when and how to use the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

web_search_multilangA
Read-only
Inspect

Multi-language, multi-source web search that goes beyond Anglo-centric results. Supports 15 languages (fr/de/es/it/pt/nl/ja/zh/ko/ar/ru/sv/pl/tr/en) with automatic detection. Aggregates results from Mojeek (independent search engine, multilang) and Wikipedia (native multilang API), with DDG and HN as English-language complements. Returns deduplicated results ranked by cross-engine consensus. Use when you need non-English search results, when DDG fails, or for geographically-biased queries. Phase 2 #7 of the geo/lang expansion plan. Note: Brave/Bing/Searx are blocked from DO IPs — configure AICI_RESEARCH_PROXY_URL for residential proxy.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNo2-letter language code. If omitted, auto-detected from query characters and lexical markers.
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
queryYesSearch query in any language
countryNoISO-3166-1 alpha-2 country code for geographic bias (e.g. FR, DE, JP, BR). Optional.
max_resultsNoMaximum number of results to return (default 10).

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryYes
statusYes
resultsYes
sourcesYes
by_engineYes
lang_usedYes
country_usedNo
quality_scoreYes
total_unique_resultsYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and destructiveHint, and the description adds valuable behavior beyond that: it aggregates from Mojeek, Wikipedia, DDG, and HN; returns deduplicated results ranked by cross-engine consensus; supports 15 languages with auto-detection; and reveals that Brave/Bing/Searx are blocked from DO IPs. This goes beyond what annotations provide, though it does not cover every possible behavior (e.g., error cases).

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 well-structured, starting with the main purpose, then moving to details, usage guidance, and a note. Each sentence adds value, though the inclusion of 'Phase 2 #7 of the geo/lang expansion plan' is extraneous internal metadata. The note about blocked engines and proxy configuration is useful but makes the description slightly longer than strictly necessary.

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 tool has 5 parameters, an output schema, and annotations, the description covers the essential context: purpose, sources, deduplication/ranking behavior, usage scenarios, and environmental limitations. It does not explain async behavior, but that is already detailed in the schema. For a search tool of this complexity, the description is sufficiently complete.

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?

The input schema already provides 100% description coverage for all 5 parameters, so the baseline is 3. The description adds some context (e.g., '15 languages with automatic detection' for lang, 'geographically-biased queries' for country), but these largely mirror what the schema already states. No significant semantic enhancement beyond schema coverage.

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 opens with 'Multi-language, multi-source web search that goes beyond Anglo-centric results,' which names the verb (search), resource (web), and specific scope (multi-language, non-Anglo-centric). It clearly distinguishes from sibling tools by emphasizing language coverage and geographic bias, and the usage sentence reinforces its unique role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use when you need non-English search results, when DDG fails, or for geographically-biased queries,' providing clear when-to-use guidance. It also includes a practical note about blocked search engines and proxy configuration. However, it does not name alternative tools or explicitly state when not to use it, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

win_loss_decoderC
Read-only
Inspect

Analyse Win/Loss deals — Gapup agent-payable C-suite expertise (CRO). Returns a structured, audited deliverable. Reference case: Gapup Hub — Win/Loss 32 deals Q1 2026 · Win rate 41% → 68% potentiel · Playbook 8 actions CRO. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
dealsYes
companyYes
productYes
topCompetitorsNo
primaryChallengeNo
salesCycleTargetDaysNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the tool is known to be a safe read operation. The description adds that inputs are 'validated server-side' and that the deliverable is 'audited,' which are useful. However, it also includes irrelevant promotional content and doesn't disclose pagination, rate limits, or any other behavioral constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, but the third sentence is a reference-case marketing paragraph that doesn't help with tool usage. The first two sentences are useful, but the overall structure mixes purpose with unrelated promotion, making it less concise than it should be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (nested objects, 7 parameters) and lack of an output schema, the description is insufficient. It doesn't explain the structure of the returned deliverable, the meaning of key fields like outcome, dealValueEur, or how the analysis works. The vague 'documented case fields' fails to compensate for the 14% schema coverage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 14% (only async has a description). The description does not explain any of the parameters or nested fields. 'Send the documented case fields' is vague and doesn't help an agent understand what data to provide for company, product, deals, or optional fields.

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: 'Analyse Win/Loss deals'. It adds 'Returns a structured, audited deliverable,' which clarifies the output. However, it doesn't explicitly distinguish from sibling tools like deal_coach or battle_cards_live, though the Win/Loss focus is relatively unique.

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 description provides no guidance on when to use this tool versus alternatives. The reference case and 'Gapup agent-payable C-suite expertise' are promotional rather than practical usage context. No mention of alternative tools or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workflow_orchestratorA
Read-only
Inspect

Meta-tool that CHAINS multiple MCP tools sequentially into a named workflow — delivering a composite output in a single call. 10 predefined workflows: compliance_full_audit (6 steps: KYC+sanctions+AI_gov+privacy+ESRS+CSRD), deal_due_diligence (7 steps: deep_dive+registry+court+patents+KYC+financials+M&A), market_entry_brief (6 steps: country_study+regulations+procurement+tax+AGOA+market_brief), competitor_intelligence_pack (5 steps: deep_dive+intel+patents+earnings+pitch_deck), esg_360 (5 steps: ESG_audit+carbon+CSRD+ESRS+supplier_esg), ip_freedom_to_operate (4 steps: patent_search+async_deep+IP_audit+competitive), climate_property_assessment (3 steps: climate_risk+real_estate+geo), pharma_target_screen (4 steps: trials+adverse_events+patents+meta_analysis), sanctions_360 (5 steps: KYC+Russian_sec+registry+crypto_wallet+court_filings), talent_market_brief (4 steps: salary+trends+adjacent_roles+skills_taxonomy). Returns steps_executed, consolidated P0/P1/P2 signals, overall_status, estimated_cost_usd, and raw outputs per step. Cache: 1h LRU per (workflow, target). Budget: 60s global timeout → partial if exceeded. Use when an agent needs a composite liverable without orchestrating tools manually.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
paramsNoOptional overrides passed to sub-tools. Keys depend on workflow (e.g., country, sector, role, drug, technology, wallet_address, acquirer).
targetYesThe entity to analyze. A company name for most workflows; location for climate_property_assessment; role+country for talent_market_brief.
workflowYesNamed workflow to execute. Each workflow chains 3-7 tools sequentially.
skip_failed_stepsNoDefault true: continue on step failure. Set false to abort on first error.

Output Schema

ParametersJSON Schema
NameRequiredDescription
targetYes
outputsYes
summaryYes
workflowYes
overall_statusYes
steps_executedYes
total_duration_msYes
estimated_cost_usdYes
consolidated_signalsYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses operational behaviors beyond the annotations: caching (1h LRU), global timeout (60s with partial results), and return structure (steps_executed, P0/P1/P2 signals, status, cost, raw outputs). This adds valuable context for an agent deciding whether to invoke the tool.

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 well-structured and detailed without redundancy. It opens with purpose, lists all workflows, then covers return values, cache, timeout, and usage. Every sentence contributes essential 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?

Given the tool's complexity (5 params, 10 workflows, output schema), the description is fully complete: purpose, workflow breakdown, return data, cache/timeout constraints, and usage guidance. No critical context 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%, but the description adds meaning beyond the schema: target is reinterpreted based on workflow (company, location, role+country), params are overrides, and async behavior is explained. Slightly above the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly defines the tool as a meta-tool that chains multiple MCP tools into named workflows, with a specific verb ('CHAINS') and resource. It lists 10 concrete workflows with their step counts, fully distinguishing it from the many individual 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 Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states when to use: 'Use when an agent needs a composite liverable without orchestrating tools manually.' This gives clear context and implies the alternative (manual orchestration). The workflow list also provides scenario-specific usage hints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

working_capitalC
Read-only
Inspect

Optimiseur du BFR — Gapup agent-payable C-suite expertise (CFO). Returns a structured, audited deliverable. Reference case: Agicap — BFR optimisation · DSO 52→38j · Cash libéré +€2.8M · 3 quick wins immédiats. Inputs are validated server-side — send the documented case fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
companyYes
industryNo
challengesYes
financialsYes
topCustomersNo
topSuppliersNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is known. The description adds that inputs are validated server-side and that the output is an audited deliverable, but it does not disclose behaviors like async support (despite the async parameter) or potential limitations. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately sized but includes marketing fluff ('Gapup agent-payable C-suite expertise (CFO)') and a reference case that does not aid an agent in tool selection or invocation. While not excessively long, it could be more focused and front-loaded with actionable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 7 parameters, nested objects, and no output schema, the description is incomplete. It lacks information about the deliverable's structure, how to handle edge cases, or how this tool relates to sibling tools. The readOnlyHint helps, but the overall picture is insufficient for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 14%, and the description does not compensate. It only says 'send the documented case fields' without elaborating on the meaning of company, financials, challenges, or other parameters. The agent is left without semantic guidance for constructing valid inputs.

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 clearly states it is an 'Optimiseur du BFR' (working capital optimizer) and that it returns a structured, audited deliverable. This gives a specific resource and action, though it does not explicitly distinguish itself from related sibling tools like working_capital_esg_impact_rater or working_capital_fx_hedge_optimizer.

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?

There is no explicit guidance on when to use this tool versus alternatives. It mentions 'send the documented case fields' but does not provide context on prerequisites, exclusions, or when a different tool would be more appropriate. This leaves the agent without clear selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

working_capital_esg_impact_raterA
Read-onlyIdempotent
Inspect

As a CFO, assess how ESG factors (Environmental, Social, Governance) influence working capital efficiency using IMF SDR and BIS data. Inputs include company sector, geographic exposure, and ESG risk scores. Outputs provide a quantitative impact rating on working capital metrics like days sales outstanding (DSO) and inventory turnover, alongside IMF SDR-aligned liquidity risk indicators.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
regionYesPrimary geographic exposure (e.g., 'EU', 'APAC')
sectorYesIndustry sector (e.g., 'manufacturing', 'energy')
currencyNoReporting currency (ISO 4217 code, e.g., 'USD', 'EUR')
esgRiskScoreYesAggregate ESG risk score (0-100)
workingCapitalRatioNoCurrent working capital ratio (current assets / current liabilities)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
impactRatingNoESG impact on working capital efficiency (-100 to +100)
esgFactorBreakdownNo
liquidityRiskIndicatorNoIMF SDR-aligned liquidity risk score (0-1)
workingCapitalAdjustmentNoProjected adjustment to working capital ratio (%)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the tool as read-only, idempotent, and open-world. The description adds valuable behavioral context by explaining what data sources are used (IMF SDR, BIS) and what the output includes (quantitative rating, liquidity risk indicators), which enriches understanding beyond the structured metadata.

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 three sentences, front-loaded with the core purpose, and contains no redundant information. Every sentence earns its place by covering purpose, inputs, and outputs succinctly.

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 that an output schema exists and annotations cover read-only/idempotent behavior, the description is fairly complete. It explains the tool's functionality, key inputs, and output nature. It does not mention potential limitations or interpretation nuance, but the output schema likely covers return values, so the description serves its complementary role well.

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 the schema already documents all parameters. The description only reiterates the key inputs (sector, geographic exposure, ESG risk scores) without adding new meaning or syntax details, placing it at the baseline of 3 for parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's specific purpose: assessing how ESG factors influence working capital efficiency, using IMF SDR and BIS data. It explicitly mentions the output (quantitative impact rating on DSO, inventory turnover) and distinguishes itself from sibling tools by focusing on this niche intersection of ESG and working capital.

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 context by addressing a CFO and describing the assessment scenario, but it does not explicitly state when to use this tool over alternatives or provide exclusions. It mentions data sources (IMF SDR, BIS) as a differentiator, but lacks direct guidance on tool selection relative to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

working_capital_fx_hedge_optimizerA
Read-onlyIdempotent
Inspect

For CFOs managing multinational working capital, this tool analyzes real-time ECB and FRED foreign exchange rates to recommend optimal hedging strategies. Input base currency, target currencies, and working capital amounts to receive forward contract suggestions, natural hedge opportunities, and cost-benefit analysis of various hedging instruments (forwards, options, swaps). Outputs include hedge ratios, estimated cost savings, and risk reduction metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
baseCurrencyYesISO 4217 code of the company's functional currency (e.g., 'USD', 'EUR')
riskAppetiteNoCompany's risk tolerance for currency fluctuationsbalanced
timeHorizonDaysNoPlanning horizon in days (default: 90)
targetCurrenciesYesISO 4217 codes of currencies to hedge against (e.g., ['EUR', 'GBP', 'JPY'])
workingCapitalAmountsYesWorking capital amounts in each target currency (e.g., { EUR: 5000000, GBP: 3000000 })

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesNo
warningsNo
recommendationsNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the agent knows this is a safe, non-mutating operation. The description adds the behavioral context of using real-time ECB and FRED rates and producing forward contract suggestions, which is useful beyond annotations. However, it does not disclose return format or potential delays, but output schema exists. This is consistent with a mid-range score.

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, front-loaded with the core purpose and then listing inputs and outputs. Every clause adds value: target audience, data sources, required inputs, and output types. No filler or redundant information, making it highly concise and well-structured.

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?

Despite having 6 parameters, nested objects, and an output schema, the description covers essential aspects: what it does, who it's for, inputs, and outputs. It does not explain optional parameters like riskAppetite or timeHorizonDays, but schema already documents them. The combination of description, annotations, and schema makes the tool contextually complete for an agent to invoke correctly.

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 parameters are documented in the schema. The description mentions the required inputs (base currency, target currencies, working capital amounts) but adds no additional syntax or format details beyond the schema. This aligns with the baseline of 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: analyzing real-time ECB and FRED foreign exchange rates to recommend optimal hedging strategies. It specifies the resource (working capital FX hedging) and the action (analyze, recommend), making it distinct from generic tools like fx_rate or treasury_optimizer.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: 'For CFOs managing multinational working capital', indicating when this tool is relevant. It does not explicitly mention alternatives or exclusions, but the target audience and use case are clearly implied. Sibling tools like treasury_optimizer or supply_chain_fx_exposure_dashboard could overlap, but the description's focus on hedging strategy suggests appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

x402_liquidity_monitorA
Read-onlyIdempotent
Inspect

Monitors real-time x402-USDC liquidity depth across 12 decentralized and centralized exchanges, providing slippage alerts and depth analysis for CFO liquidity risk assessment. Inputs include slippage thresholds and exchange selection; outputs liquidity depth, price impact estimates, and warning flags. Essential for optimizing trade execution and managing liquidity exposure. Keywords: liquidity monitoring, slippage analysis, DEX/CEX depth, x402-USDC pair, CFO financial tooling.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
exchangesNoList of exchanges to monitor (defaults to all 12 if empty)
depthLevelsNoLiquidity depth levels to analyze (percentage from mid-price)
slippageThresholdYesMaximum acceptable slippage percentage (0-100)

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
midPriceNoCurrent x402-USDC mid-price
warningsYes
priceImpactNo
liquidityDepthYes
slippageAlertsYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true. The description adds behavioral context such as real-time monitoring, coverage of 12 exchanges, and outputs including liquidity depth, price impact estimates, and warning flags. No contradiction with 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 concise with three sentences plus a keyword list. It is front-loaded with the core function. The 'Essential for' sentence and keyword list add some redundancy but are not overly verbose.

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 4 parameters, 12 exchanges, and an output schema, the description sufficiently covers inputs, outputs, and use case. It does not need to enumerate exchange names or return fields, as these are already in the 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 the schema fully documents each parameter. The description mentions slippage thresholds and exchange selection but does not explain depthLevels or async beyond what the schema provides. Baseline 3 is 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 clearly states the tool monitors real-time x402-USDC liquidity depth across 12 exchanges, providing slippage alerts and depth analysis. The verb 'monitors' is specific, the resource is well-defined, and it is distinct from sibling tools like x402_payment_flow_analyzer and x402_payment_fraud_detector.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: it is for CFO liquidity risk assessment and optimizing trade execution. It does not explicitly mention when not to use it or name alternatives, but the use case is well-implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

x402_payment_flow_analyzerA
Read-onlyIdempotent
Inspect

As a CTO, analyze USDC payment flows involving x402 addresses to assess counterparty risk, trace transaction paths, and evaluate regulatory exposure. Input a wallet address or transaction hash to receive risk scores, flow diagrams, and compliance flags from Chainalysis and TRM Labs public APIs. Ideal for due diligence, fraud detection, and compliance reporting. Pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
depthNoHops to trace in payment flow
txHashNoUSDC transaction hash to trace
addressYesEthereum wallet address to analyze
includeRiskScoreNoInclude counterparty risk scoring

Output Schema

ParametersJSON Schema
NameRequiredDescription
flowIdNoUnique identifier for this payment flow analysis
statusYes
sourcesNo
warningsNo
riskScoreNoCounterparty risk score (0-100)
complianceFlagsNo
exposureSummaryNo
transactionPathNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is already clear. The description adds behavioral context by mentioning it calls 'Chainalysis and TRM Labs public APIs' and can time out, hence the async guidance. This goes beyond the annotations without contradicting them.

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 four sentences long, each contributing value: purpose, inputs/outputs, use cases, and async tip. It is front-loaded with the core purpose and contains no filler or redundant phrasing. It strikes an efficient balance between completeness and brevity.

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 presence of a rich output schema, the description does not need to detail return values. It covers what the tool does, what inputs are accepted, what outputs to expect, ideal scenarios, and a crucial async usage note to avoid timeouts. This is complete for a tool with this complexity and annotations.

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 the baseline is 3. The description reiterates that a 'wallet address or transaction hash' is the input, which reinforces the address and txHash parameters, but it does not add any details beyond what the schema already provides. No parameter semantics are enhanced meaningfully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with specific verbs: 'analyze USDC payment flows involving x402 addresses', 'assess counterparty risk', 'trace transaction paths', and 'evaluate regulatory exposure'. It distinguishes itself from siblings like x402_payment_fraud_detector and x402_liquidity_monitor by focusing on risk assessment and compliance rather than fraud detection or liquidity, and explicitly names inputs and outputs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit use cases ('Ideal for due diligence, fraud detection, and compliance reporting') and instructs to 'Pass async:true to avoid timeout', which is actionable guidance. It does not explicitly name alternatives or exclusionary conditions, but the context is clear enough for an agent to decide when to invoke this tool vs. siblings like usdc_x402_payments_intel.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

x402_payment_fraud_detectorA
Read-onlyIdempotent
Inspect

Risk-focused tool that analyzes x402-USDC payment transactions for fraud patterns using on-chain forensics. Takes a transaction hash or wallet address as input and returns risk scores, suspicious indicators, and historical patterns. Designed for risk management teams to quickly assess payment legitimacy. Includes keywords: fraud detection, USDC risk, blockchain forensics, transaction monitoring. pass async:true to avoid timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
asyncNoIf true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts.
walletAddressNo
includeHistoryNo
amountThresholdNo
transactionHashYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
sourcesYes
warningsYes
riskScoreYes
isSuspiciousYes
sanctionsMatchNo
fraudIndicatorsNo
transactionHistoryNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnly, openWorld, and idempotent. The description adds useful context about async timeout avoidance and on-chain forensics. However, it misleadingly says 'takes a transaction hash or wallet address' while the schema requires transactionHash, which is a behavioral inconsistency not covered by 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 the core purpose in the first sentence. However, the 'Includes keywords' sentence is filler and does not add value for an AI agent, preventing a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The output schema covers return values, so that gap is acceptable. But the description leaves two parameters (includeHistory, amountThreshold) semantically undefined and the input requirement mismatch (hash vs wallet) could lead to incorrect invocation. Not complete enough for a tool with 5 parameters.

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 only 20% (only async has a description). The description explains async (pass true to avoid timeout) and mentions input types (transaction hash or wallet address), but it incorrectly implies walletAddress is sufficient. It omits includeHistory and amountThreshold entirely, failing to compensate fully for low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('analyzes') and resource ('x402-USDC payment transactions') with a clear goal ('fraud patterns'). It also distinguishes itself from generic sibling tools like 'fraud_detector' by focusing on x402-USDC and on-chain forensics.

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?

Provides clear context: 'Designed for risk management teams to quickly assess payment legitimacy.' This implies when to use the tool, though it does not explicitly name alternatives or exclusions. The async guidance is also a usage hint.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides 25 pay-per-call tools from agents.oromi.co.uk (business, property, verification, web, crypto) into MCP-capable models, with quote mode for browsing and paid mode using x402.
    63
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Exposes 25 paid API endpoints as MCP tools for AI agents, with payments in USDC on Base mainnet via the x402 protocol, enabling tasks like web search, company intelligence, and crypto research.
    25
    68
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    23 research tools for AI agents: web search, social media, academic papers, SEC filings, citation verification, reliability scoring. Pay-per-call from $0.01.

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.