mcp-knowledge
Server Details
100+ MCP tools for AI agents: content metadata, trade intelligence, business-expertise analysis.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- getgapup/gapup-mcp
- GitHub Stars
- 0
- Server Listing
- @gapup/mcp-knowledge
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
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.
Tool Definition Quality
Average 3.7/5 across 271 of 271 tools scored. Lowest: 2.1/5.
Many tools have overlapping purposes, especially in competitive intelligence, ESG, and risk assessment. For example, there are multiple tools for competitor analysis (competitive_deep_dive, competitor_intel, competitor_moves, etc.) with unclear boundaries. Agents would struggle to select the correct tool without deep understanding of subtle differences.
Tool names are a mix of English and French, and follow no consistent pattern. Some use snake_case (e.g., abm_architect, action_plan_esg), while others are verb-focused (e.g., content_catalog, fx_rate). The lack of a uniform naming convention makes it hard for agents to predict tool names.
With 271 tools, the server is excessively large. Even for a broad knowledge domain, this number of tools makes discovery and selection inefficient. Typical coherent servers have 3-15 tools; this has an order of magnitude more, indicating poor scoping.
The tool set covers many domains (compliance, finance, marketing, HR, etc.), but the coverage is uneven due to redundancy. Key areas have multiple overlapping tools, while some sub-domains may still have gaps. Overall, the surface is broad but not well-curated.
Available Tools
279 toolsabm_architectCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| product | Yes | ||
| salesTeam | No | ||
| icpCriteria | Yes | ||
| abmBudgetEur | No | ||
| targetAccounts | Yes | ||
| currentChannels | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, indicating no mutation and flexible input. The description adds that the tool returns an 'audited deliverable' and validates inputs server-side, which aligns with read-only behavior. However, it omits other behavioral details such as rate limits, response format, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise but mixes languages (French/English) and includes a lengthy reference case that, while helpful, adds clutter. The core message is front-loaded but could be more tightly structured without the example.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters, nested objects, and no output schema, the description is incomplete. It does not describe the deliverable structure, possible error conditions, or how to interpret results. The reference case provides partial context but leaves significant gaps for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 13%, with most parameters lacking a description. The description does not explain individual parameters beyond a minimal reference case. The sparse schema and lack of parameter guidance means an agent would struggle to understand field semantics or values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies that the tool is an ABM architect for C-suite (CMO) and returns a structured, audited deliverable. The reference case provides concrete context. However, jargon like 'Gapup agent-payable' obscures clarity, and the purpose is not sharply differentiated from sibling tools like abm_lookalike_account_finder.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, nor does it state prerequisites or when not to use it. The only instruction is to 'send the documented case fields', which is insufficient for an agent to decide between similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
abm_lookalike_account_finderARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_keywords | No | Specific technologies to match in lookalike accounts | |
| firmographic_filters | No | ||
| top_customer_domains | Yes | List of top 10 customer domains to use as seed accounts |
Output Schema
| Name | Required | Description |
|---|---|---|
| stats | No | |
| status | Yes | |
| sources | Yes | |
| warnings | Yes | |
| lookalike_accounts | Yes | |
| matched_technologies | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds valuable behavioral context by specifying the data sources (robots.txt, OpenGraph metadata) and output (ranked list with matching technologies and attributes), going beyond annotation information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences front-loaded with purpose, no wasted words. Efficiently conveys what the tool does, inputs, and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 explains the tool's function and inputs. It could mention async behavior or result polling, but that may be covered by other tools. Overall, it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is high (75%), and the description provides high-level context (e.g., 'targeted ABM campaigns') but does not add significant detail beyond what the schema already describes for each parameter. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: discovering 50 lookalike B2B accounts based on top 10 customer domains and firmographics. It uses specific verbs ('discover') and resources ('lookalike accounts'), and the unique focus on ABM differentiates it from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by describing inputs (customer domains, firmographic filters) but does not explicitly state when to use this tool instead of alternatives or when not to use it. No exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
account_expansion_mapperCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| accounts | Yes | ||
| ownership | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is clear. The description adds 'returns a structured, audited deliverable' but no additional behavioral details like auth needs or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but includes a reference case that may not be essential. It is front-loaded with the title but contains jargon that reduces clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 incomplete. It does not explain the deliverable's format, interpretation, or prerequisites, leaving significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20%. The description does not explain parameters beyond 'send the documented case fields,' 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a sense of account expansion mapping for B2B CRO but uses jargon ('Gapup agent-payable C-suite expertise') and a French title without a clear English verb. It doesn't differentiate from sibling tools like upsell_hunter or abm_architect.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. Only mentions server-side validation but lacks context for selection among similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
action_plan_esgBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| horizon | Yes | 36 mois | |
| ambitions | Yes | ||
| targetLabels | No | ||
| currentScores | No | ||
| availableResources | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and openWorldHint=true, indicating safe, read-only behavior with variable output. The description adds minimal behavioral context (returns a deliverable, inputs validated server-side) but does not disclose additional traits like rate limits or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, includes a concrete example, and no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 8 parameters, nested objects, and no output schema, the description is insufficient. It does not explain expected inputs or outputs beyond a reference case, leaving the agent uncertain about how to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explanation of parameters beyond the vague phrase 'documented case fields'. It fails to compensate for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates an ESG action plan ('Plan d'action ESG') and returns an audited deliverable, with a concrete reference case. However, it does not explicitly differentiate from sibling tools like 'sustainability_report' or '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.
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 'send the documented case fields' but does not specify prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
adversarial_input_stress_testerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| maxTests | No | Maximum number of adversarial tests to run | |
| modelOutput | Yes | The AI model's output or decision to be stress-tested | |
| adversarialDataset | No | Optional custom adversarial inputs to test | |
| sensitivityThreshold | No | Threshold for flagging high-risk adversarial examples |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| riskScore | No | Normalized risk score from adversarial testing |
| failureModes | No | |
| adversarialExamples | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal readOnly, openWorld, idempotent. Description adds async requirement and output types (status, warnings, references) but no further behavioral detail. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, then async requirement, then outputs. No redundancy, each sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema implied and good annotations, description covers main purpose, async nuance, and output types. Complex tool with 5 params, but coverage is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% parameters with descriptions, so baseline 3 is appropriate. Description does not add significant parameter-specific meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it evaluates AI model resilience against adversarial inputs following NIST AI RMF protocols. Identifies target persona (security/compliance) and outputs (risk scores, failure modes). Lacks explicit sibling differentiation but specific enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides one explicit guideline: requires async:true to avoid timeouts. No when-to-use vs. alternatives or exclusions. Adequate but minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
affiliate_fraud_clickstream_detectorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| threshold | No | Fraud probability threshold (0.1-0.99) | |
| date_range | Yes | ||
| affiliate_network | Yes | Name of the affiliate network to analyze (e.g., 'CJ Affiliate', 'Rakuten') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| suspicious_ips | No | |
| fraud_probability | No | Overall fraud probability score (0-1) |
| patterns_detected | No | |
| total_clicks_analyzed | No |
Tool Definition Quality
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 specifying output structure and data source, but does not expand on behavioral nuances like async polling or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, using four well-structured sentences covering purpose, audience, inputs, outputs, and keywords. No fluff—every sentence is meaningful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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) and annotations, the description provides a complete high-level overview. It lacks details about the async parameter and polling behavior, but the context signals indicate this is adequate 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, so the schema already documents required parameters. The description only repeats the required inputs without adding details about optional parameters like 'async' or 'threshold', offering minimal extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes affiliate clickstream data from Common Crawl to detect fraud patterns, specifying both inputs and outputs. It distinguishes from siblings by mentioning its specific fraud detection focus 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies the target audience (CMOs) and purpose (validate traffic quality, prevent budget waste), implying when to use. However, it does not contrast with alternatives like the generic 'fraud_detector' sibling, lacking explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
africa_trade_barrier_breakerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_code | No | 6-digit Harmonized System product code | |
| origin_country | Yes | ISO 3-letter country code for export origin | |
| destination_country | Yes | ISO 3-letter country code for import destination | |
| include_regulatory_details | No | Whether to include detailed regulatory text in output |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| warnings | Yes | |
| barrier_summary | Yes | |
| trade_flow_impact | No | |
| regulatory_details | No | |
| mitigation_strategies | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint, indicating safe, deterministic behavior. The description adds value by specifying data sources and the async parameter to avoid timeouts. No contradictions with annotations; however, it does not discuss error handling or data freshness limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at 4 sentences, front-loaded with the primary purpose. Each sentence introduces distinct information: user role and data sources, inputs, outputs, and a practical tip. No superfluous content; ideal for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema exists) and the safety annotations, the description covers key aspects: purpose, inputs, outputs, and async usage. It enables an agent to decide to call the tool for NTB analysis. Minor omission: no mention of typical runtime or prerequisites, but not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the tool description adds limited new meaning. It reiterates the role of origin/destination countries and HS codes, and emphasizes the async parameter's use. This provides marginal value beyond the schema, which already includes formats and constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 non-tariff trade barriers across African corridors using WITS and UNCTAD STAT data. It specifies inputs (origin/destination countries, HS codes) and outputs (risk assessment, mitigation strategies). This distinguishes it from sibling tools like tariff_arbitrage_finder or trade_finance_eligibility, though explicit sibling contrast is missing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies the target user (COO) and provides a practical async usage tip. However, it does not explicitly state when to avoid this tool or compare it to similar siblings (e.g., tariff_impact_simulator). More definitive guidance on tool selection would improve clarity.
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_raterARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Assessment year (2018-2023) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| countryCode | No | ISO 2-letter country code (e.g., 'ZA' for South Africa) | |
| institutionName | Yes | Full name of the trade finance provider (e.g., 'Standard Bank Group') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| warnings | Yes | |
| esgRating | Yes | |
| socialScore | No | |
| tradeVolume | No | Annual trade finance volume (USD) |
| carbonIntensity | No | CO2 emissions per million USD financed (tons) |
| governanceScore | No | |
| environmentalScore | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description aligns with annotations (readOnlyHint, idempotentHint). Adds context about data sources and timeout handling via async parameter, which aids agent understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a short instruction. Front-loaded with purpose and data sources. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main use case, data sources, async option. Output schema exists. Could mention optional parameter effects but sufficient for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds value by explaining async in context of timeout and providing example values for institutionName and countryCode.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool evaluates ESG compliance of African trade finance providers using specific data sources (World Bank WITS, CDP). Distinguishes from siblings by specifying African trade finance focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states ideal usage for due diligence on trade partners or portfolio risk assessment. Mentions async option to avoid timeout. Does not explicitly 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.
africa_trade_preference_arbitrageARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Reference year for trade data | |
| async | No | If true, returns a job_id 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_code | Yes | 6-10 digit Harmonized System product code | |
| exporting_country | Yes | ISO 2-letter country code of African exporter | |
| importing_country | No | ISO 2-letter country code of target market (US/EU) | |
| preference_scheme | No | Trade preference scheme to analyze |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| duty_savings_pct | No | Estimated duty savings percentage under preference scheme |
| trade_volume_usd | No | Annual trade volume in USD for given HS code |
| market_access_score | No | Composite score of market access advantage (0-100) |
| compliance_requirements | No | List of compliance requirements for preference eligibility |
| preference_utilization_rate | No | Percentage of eligible exports utilizing preference |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by revealing the async requirement and timeout risk, which are important behavioral traits. It also mentions data sources (WITS, OECD). Annotations already declare readOnly/openWorld/idempotent, so the burden is lower. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with a clear purpose statement followed by technical notes. It is front-loaded and every sentence contributes. Slightly verbose in listing data sources but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 exists), the description covers purpose, data sources, output type, and a critical async requirement. It could mention country eligibility or limitations, but is largely complete for the agent to understand usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already describes all parameters. The description adds only a usage hint about async, which is not a parameter semantic. It does not provide additional meaning beyond what the schema offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes AGOA/EBA trade preference arbitrage opportunities, specifies target audience (COOs), data sources (WITS, OECD), and output (structured analysis). It is a specific verb+resource with scope, and distinguishes from siblings by focusing on arbitrage opportunities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a technical requirement (async:true to avoid timeout) but does not explain when to use this tool versus sibling tools like agoa_eba_intelligence or africa_trade_preference_optimizer. No guidance on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
africa_trade_preference_optimizerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| hsCode | Yes | 6-10 digit Harmonized System code (e.g., '010121' for live horses) | |
| quantity | No | Estimated annual export quantity in units | |
| valueUsd | No | Estimated annual export value in USD | |
| originCountry | Yes | ISO 3166-1 alpha-3 country code of export origin (e.g., 'KEN' for Kenya) | |
| destinationCountry | Yes | ISO 3166-1 alpha-3 country code of import destination (e.g., 'USA' for United States) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| dutySavings | No | Estimated annual duty savings in USD under optimal preference program |
| optimalRoute | No | |
| alternativeRoutes | No | |
| complianceWarnings | No | Potential compliance risks or documentation requirements |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context beyond annotations by specifying data sources (UN Comtrade, WCO, African Union rules) and output types (duty savings estimates, optimal trade routes, recommendations). It does not contradict the readOnlyHint, openWorldHint, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (about 80 words) and front-loaded with the main verb. It includes keywords and ideal use cases but is a single paragraph; a more structured format could improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, data sources, and output types. With a full output schema and good annotations, the description is adequate. No major gaps are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with good schema descriptions. The description adds context that the tool expects originCountry, destinationCountry, and hsCode but does not significantly enhance understanding 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: analyze AGOA/EBA duty savings opportunities with HS code-level optimization. It distinguishes itself from siblings like africa_trade_barrier_breaker and agoa_eba_intelligence by focusing on duty savings and trade route optimization.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage scenarios (export market evaluation, supply chain optimization) but does not explicitly state when not to use it or compare directly with sibling tools. No exclusion criteria or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agoa_eba_intelligenceARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Mode 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) | |
| async | No | If true, returns a job_id 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_code | No | Code 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_iso | No | Code 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. | |
| destination | No | Marché de destination pour trade_opportunity : 'US', 'EU', ou 'both' (défaut). Ignoré pour les autres modes. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations by detailing data sources (AGOA.info, EU EBA, etc.) and the scope of countries (39 AGOA, 47 LDCs). It aligns with readOnlyHint=true, indicating no destructive actions. However, it does not mention the async behavior or that results might be delayed for some modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the tool's main purpose, and every sentence contributes essential information. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 countries, two programs), the description covers the main functionality, data sources, and regional scope. It lacks details on output format or error handling, but is still fairly complete for a query tool with good annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description provides a cohesive narrative tying the modes to the tool's functions. However, the schema already includes detailed parameter descriptions and examples (e.g., HS codes), so the description adds limited new semantic value beyond restating the modes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: checking eligibility of African countries and products for preferential tariff programs (AGOA, EBA/GSP), identifying export opportunities, and providing compliance rules. It uses specific verbs and resources, and differentiates from sibling tools by covering both US and EU programs and including compliance details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage scenarios by listing the four modes, but it does not explicitly state when to use this tool versus alternatives like africa_trade_preference_arbitrage. It lacks when-not-to-use guidance and comparisons with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ai_act_incident_responseARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| incident_type | Yes | ||
| ai_system_type | No | ||
| incident_description | No | ||
| affected_stakeholders | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| next_steps | No | |
| playbook_steps | No | |
| compliance_checklist | No | |
| regulator_notification | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint, openWorldHint, and idempotentHint. The description adds value by noting the async requirement and describing outputs (structured playbook steps, notification drafts, compliance checklists), which supplements 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with an additional keyword tag. It is front-loaded with the main purpose and efficient, containing no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and an output schema (not shown), the description adequately covers purpose, usage context, and key requirements. However, it could better complement the schema by explaining all parameters and their roles.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%, so the description should compensate. It mentions 'incident severity, AI system type, and affected stakeholders' as inputs, but omits incident_type and incident_description. This adds partial context but is incomplete for the 6 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 for risk management teams. Verb ('Generates') and resource ('playbooks') are specific, and the scope is well-defined, distinguishing it from siblings like 'ai_act_sandbox_regulatory_sandbox' and 'ai_act_training_data_audit'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies that the tool is 'Essential for high-risk AI system breaches requiring formal EU notification' and includes a critical usage note about passing 'async:true' to avoid timeouts. While it doesn't explicitly mention when not to use or list alternatives, the context is strong enough for correct invocation.
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_sandboxARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| sector | No | Primary sector of application | |
| riskLevel | Yes | Self-assessed risk level of the AI system | |
| intendedUse | Yes | Primary and secondary use cases of the AI system | |
| documentation | No | List of provided documentation types (e.g., 'technical', 'ethical', 'data') | |
| systemDescription | Yes | Detailed description of the AI system including purpose, architecture, and data sources |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| assessment | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds behavioral context about returning structured feedback with citations and recommendations, which goes 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of five sentences, front-loading the purpose and then listing inputs and outputs. It is concise and well-structured, though could be slightly tighter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and an output schema, the description covers the main purpose and outputs adequately. It does not explain the async parameter or output schema details, but the schema and annotations fill those gaps. Complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds no additional meaning beyond the schema. The description mentions accepting system descriptions and use cases, but this is already clear from the schema. Baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool simulates EU AI Act regulatory sandbox submissions, specifies it is legal-focused, and distinguishes it from sibling tools like ai_act_incident_response and ai_act_training_data_audit by focusing on sandbox simulation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for sandbox submissions, but does not explicitly state when not to use it or mention alternatives. However, the context is clear and the purpose is well-defined, earning a 4.
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_auditARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_id | Yes | Hugging Face dataset identifier or direct URL to dataset | |
| risk_threshold | No | ||
| include_bias_metrics | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| bias_metrics | No | |
| compliance_score | No | |
| dataset_metadata | No | |
| regulatory_warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, openWorldHint, and idempotentHint. The description adds behavioral context by mentioning the async option to avoid timeout, implying the tool can be slow. It does not contradict annotations and provides useful operational guidance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one paragraph, concisely covering purpose, inputs, outputs, use case, and async note. It is front-loaded with the main action and uses minimal words effectively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 parameters, async support, output schema), the description covers all essential aspects: what it does, inputs, outputs, ideal use case, and async behavior. The output schema likely provides return values, so description is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50%. The description names dataset_id and risk_threshold, and mentions async in the last sentence, but omits include_bias_metrics. It adds meaning by explaining dataset_id as 'Hugging Face ID or URL' and risk_threshold as optional, but the coverage gap prevents a higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool audits AI training datasets for EU AI Act compliance with bias detection and regulatory risk assessment. It specifies inputs and outputs, and the 'Ideal for pre-deployment risk evaluation' distinguishes it from siblings like ai_act_incident_response. The verb 'audit' and resource 'training data' are clear and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Ideal for pre-deployment risk evaluation' and advises passing async:true to avoid timeout, giving context on when to use. It does not explicitly state when not to use or list alternatives, but the sibling set implies this is for proactive audit, not incidents.
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_asyncARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| company_size | No | Taille entreprise : startup (≤50), smb (51-250), mid (251-1000), large (1001-5000), enterprise (>5000) | |
| data_sources | No | Sources de données utilisées par le système IA | |
| affected_persons | No | Catégories de personnes affectées par les décisions du système (ex: candidats, employés, clients) | |
| geographic_scope | No | Zones géographiques de déploiement (ex: 'EU', 'France', 'Global') | |
| intended_purpose | Yes | Finalité prévue du système IA : à quoi sert-il concrètement | |
| deployment_context | No | Contexte de déploiement : interne (usage employés), public, B2B, B2C | |
| ai_system_description | Yes | Description détaillée du système IA : ce qu'il fait, comment il fonctionne, quelles décisions il prend |
Output Schema
| Name | Required | Description |
|---|---|---|
| job_id | Yes | Identifiant unique du job — passer à ai_governance_full_report_result |
| status | Yes | |
| eta_seconds | Yes | Durée estimée avant disponibilité du résultat |
| submitted_at | Yes | Timestamp ISO-8601 de soumission |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behaviors: returns job_id in <300ms, caches 7 days, async with polling or webhook, includes disclaimer. However, annotations state readOnlyHint=true while description implies a write operation (creating a job), creating a minor inconsistency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured and concise: front-loaded purpose, enumerated outputs, timing, cache, and alternative. Every sentence adds value, no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Fully explains tool's purpose, output, async nature, caching, and integration options. Given complexity (7 params, output schema exists), description covers all necessary context for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with param descriptions. Description does not add significant detail beyond schema, but the baseline of 3 applies as schema handles param semantics adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool audits EU AI Act, classifies risk tiers, and produces 7 specific outputs. It distinguishes itself from siblings like ai_governance_full_report_result and ai_governance_pilot by being an async submit that returns a job_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises when to use (for full EU AI Act compliance) and provides alternatives: polling with ai_governance_full_report_result or using webhooks via webhooks_manage. Mentions faster+lighter webhook approach.
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_resultARead-onlyIdempotentInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by ai_governance_full_report_async (prefix: aigfr_) |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, which are consistent. The description adds behavioral details: returns status=pending while running, status=completion with full report, status=failed on error, status=not_found for unknown/expired job_id, TTL 24h. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with high information density. Front-loaded with purpose. Every part adds value: purpose, status outcomes, timing hint, and parameter context. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an async polling tool, the description covers all necessary aspects: what the tool does, when to call, possible return statuses, error conditions, TTL, and outputs (report contents). Even though an output schema exists, the description enumerates key fields. Highly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single required parameter job_id described as 'The job_id returned by ai_governance_full_report_async (prefix: aigfr_)'. The description doesn't add new parameter semantics beyond the schema, but given high coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states its purpose: 'Poll the result of an ai_governance_full_report_async job.' It distinguishes itself from siblings by being the polling counterpart to the async variant. The verb 'poll' and the specific resource are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to call this after the eta_seconds hint from ai_governance_full_report_async (~90s). Describes the various status returns (pending, completed, failed, not_found) and the TTL. This provides clear when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ai_governance_pilotCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| aiUseCases | Yes | ||
| targetFrameworks | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds context about returning a structured, audited deliverable and gives a reference case, which is helpful but does not detail side effects, authorization needs, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief (two sentences) but contains a typo ('Gapup') and uses technical jargon without clarification. While concise, it sacrifices clarity and could be better structured with a clear action verb and resource scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of AI governance with nested input objects and no output schema, the description falls short. It does not specify what the deliverable contains, how to interpret the output, or how this pilot differs from the full report sibling. The reference case helps but is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (20% - only 'async' has a description). The description does not explain the purpose or format of the key nested parameters like 'company', 'aiUseCases', or 'targetFrameworks', leaving the agent to infer from the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs 'Pilotage de gouvernance IA' and returns a structured audited deliverable, with a concrete reference case. However, it could better distinguish from the sibling 'ai_governance_full_report_async' which likely performs a similar but more comprehensive function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions inputs are validated server-side but provides no guidance on when to use this tool versus alternatives like the full governance report or other governance-focused tools in the sibling list. There is no when-to-use or when-not-to-use advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
anti_demissions_hrCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| signals | Yes | ||
| employees | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions server-side input validation and a reference case, adding slight behavioral context. Annotations already provide readOnlyHint=true, so the description's added value is limited and 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise but uses jargon ('Gapup agent-payable C-suite expertise (COO)') that may confuse the agent. It is front-loaded but could be more straightforward.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nested parameters and lack of an output schema, the description is incomplete. It does not explain what constitutes an 'at-risk' signal or describe the deliverable's format, leaving the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (20%), and the description does not elaborate on any parameters beyond saying 'send the documented case fields.' This fails to compensate for the schema's lack of clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 detecting at-risk employees, as shown by the Buffer Inc reference. While the purpose is clear, it does not distinguish itself from sibling tools like 'churn_defender' or 'talent_poaching_risk'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. No explicit when-to-use or when-not-to-use conditions are provided, leaving the agent without decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
arbitration_awards_lookupARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | party_lookup: search by party name or keyword. institution_index: browse awards by institution + stats. clause_check: audit an arbitration clause for issues. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | For 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_to | No | ISO date filter to (YYYY-MM-DD). Applied to award_date. | |
| date_from | No | ISO date filter from (YYYY-MM-DD). Applied to award_date. | |
| institution | No | Filter by institution. Default 'all'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| query | Yes | |
| awards | No | |
| status | Yes | |
| sources | Yes | |
| clause_check | No | |
| quality_score | Yes | |
| institution_stats | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, openWorldHint, idempotentHint, destructiveHint. The description adds value by stating cache duration (24h), no API key required, and the fact that most awards are confidential (public only). This goes beyond annotations to set proper expectations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with sections for overview, modes, notes, and cache. It is front-loaded with the core purpose. While slightly long, each sentence adds value (no fluff). It earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of three modes, the presence of an output schema (so return format not needed), and the annotations covering safety/idempotency, the description is complete. It covers limitations (confidential awards), cache behavior, modes, and parameters. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all parameters have descriptions). The description enriches parameter understanding by providing examples for `query` (e.g., 'Yukos', 'Russia') and clarifying the purpose of each mode. It also briefly explains the `async` parameter. This adds meaning beyond the schema definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides commercial arbitration intelligence with three distinct modes (party_lookup, institution_index, clause_check). It specifies the resource (arbitration awards) and the action (lookup/search/audit). It distinguishes from sibling tools by being a specialized arbitration tool, with no direct alternative among the listed siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly describes each mode's use case (e.g., 'party_lookup — find awards by party name', 'clause_check — audit an arbitration clause for missing elements'). It also notes the limitation to public awards, providing context for when the tool is appropriate. While it doesn't explicitly state when not to use it, the guidance is clear and sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
attack_surface_monitorBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| domain | Yes | ||
| exclusions | No | ||
| scope_cidrs | No | ||
| include_email_surface | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds value by stating it returns a 'structured, audited deliverable' and that inputs are validated server-side. This context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose, mixing general purpose with multiple example questions. It lacks clear structure or prioritization of key information. Though front-loaded with the title, the text is a dense block that could be more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, low schema coverage, and no output schema, the description should be more complete. It covers the 'what' but omits details on parameters, return format, and limitations. 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.
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. It mentions domain and include_email_surface implicitly via examples, but does not explain focus, exclusions, scope_cidrs, or async. No parameter details or usage hints are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as an attack surface monitor that returns a structured, audited deliverable. Example questions illustrate its functionality well. However, it does not explicitly differentiate it from sibling tools like cyber_risk_auditor or cve_security_lookup, which may overlap in purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides example queries that imply usage for domain attack surface assessment, email phishing risk, M&A due diligence, etc. However, it lacks explicit guidance on when to use this tool versus alternatives, and does not 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.
audit_pre_flightCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| audit | Yes | ||
| company | Yes | ||
| systems | Yes | ||
| financials | Yes | ||
| knownIssues | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, indicating safe, read-only behavior. The description adds that inputs are validated server-side and returns a deliverable, which is consistent but does not significantly expand on behavioral traits beyond what annotations and schema (async handling) provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (3 sentences) but includes a specific reference case that may be irrelevant for general usage. It lacks structured formatting (e.g., bullet points) and contains jargon (French terms, 'Gapup agent-payable'), which reduces clarity. Not overly long, but not highly concise or well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool’s complexity (nested parameters, no output schema, low schema coverage), the description is insufficient. It does not specify the return format, readiness scoring, or how to interpret findings. Users cannot determine what the deliverable contains or how to handle results, leaving significant gaps for effective usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (17%), with only the 'async' parameter described. The tool description does not explain any parameters, merely stating to send 'documented case fields.' This leaves most parameters (nested objects like company, audit, financials) without semantic clarification, failing 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool performs a pre-audit (Pré-audit comptable) and returns a structured deliverable, but the phrasing mixes French and jargon without explicitly stating the output format (e.g., readiness score, findings). The reference case provides an example but lacks generalization, making it moderately clear but not fully transparent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. There is no mention of appropriate use cases, prerequisites, or exclusions. The sibling list contains many tools but no differentiation is made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
banking_fee_negotiatorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | No | Industry classification (e.g., 'manufacturing', 'retail') | |
| bank_country | Yes | ISO 2-letter country code of the bank | |
| credit_line_fee | No | Current annual credit line fee percentage | |
| wire_transfer_fee | No | Current domestic wire transfer fee in USD | |
| international_wire_fee | No | Current international wire transfer fee in USD | |
| account_maintenance_fee | Yes | Current monthly account maintenance fee in USD |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| negotiation_levers | No | |
| credit_line_benchmark | No | Industry benchmark for credit line fees percentage |
| wire_transfer_benchmark | No | Regional benchmark for domestic wire transfer fees in USD |
| international_wire_benchmark | No | Regional benchmark for international wire transfer fees in USD |
| account_maintenance_benchmark | No | Regional benchmark for account maintenance fees in USD |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and idempotentHint. The description adds context about data sources (World Bank, ECB SDW) and output (levers, benchmarks), enriching behavioral understanding 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: first explains purpose and input, second describes output and ideal use, third provides keywords. Front-loaded and concise with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, the description sufficiently covers purpose, input, and output nature (benchmark comparisons and levers). It does not need to detail return values but could mention the output schema existence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The description merely lists fee types already covered in the schema, adding no new meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it analyzes bank fee structures and provides negotiation recommendations using benchmarks. It is specific and distinct from sibling tools like treasury_optimizer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says to input current fees and bank details for negotiation recommendations, and mentions it's ideal for optimizing treasury operations, but does not explicitly state when not to use it or provide alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
battle_cards_liveCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| ourOffer | Yes | ||
| competitor | Yes | ||
| dealContext | Yes | ||
| knownWeaknesses | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint=true and openWorldHint=true. The description adds server-side input validation and mentions an audited deliverable, providing slight incremental context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but mixes languages and is not front-loaded with the core action. It includes a reference case that is not essential for understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given nested parameters, low schema coverage, and no output schema, the description lacks details on return format and parameter constraints. The tool's complexity is not addressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 parameters. It vaguely says 'send the documented case fields' but does not map to the parameter names or nested structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description indicates the tool returns a structured deliverable for competitive battle cards, but the verb+resource is unclear due to jargon ('Fiche de combat live') and mixing French/English. It doesn't distinctly separate from sibling 'battle_plan'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'battle_plan' or 'competitive_deep_dive'. The reference case is an example, not a usage rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
battle_planBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| quarter | Yes | ||
| teamSize | Yes | ||
| arrTarget | Yes | ||
| budgetEur | Yes | ||
| arrCurrent | Yes | ||
| companyName | Yes | ||
| topChannels | Yes | ||
| icpDescription | Yes | ||
| currentBlockers | Yes | ||
| primaryObjective | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and openWorldHint=true, so the tool is likely a read-only computation. The description adds that inputs are validated server-side and returns a deliverable, but does not detail authentication, rate limits, or whether the deliverable is cached. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but includes a verbose reference case that may not be necessary for general use. It front-loads the purpose, but the case adds clutter without enhancing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 no details on the deliverable's structure, the description is incomplete. The reference case provides a concrete example but does not generalize well. Annotations only partially compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 elaborate on the 11 parameters or their expected formats, leaving agents to infer from the reference case. 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.
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 a marketing battle plan, citing a specific reference case. While the verb is implied ('creates' or 'generates'), it lacks explicit differentiation from sibling 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions that inputs must be validated server-side and to send the documented case fields, implying a structured input scenario. However, it does not specify when to use this tool versus alternatives, nor does it provide context for exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bias_amplification_trackerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| modelId | No | HuggingFace model identifier (e.g., 'facebook/opt-1.3b') | |
| outputSamples | No | Array of LLM output strings to analyze for bias amplification | |
| demographicGroups | No | Specific demographic groups to monitor (e.g., ['gender', 'race']) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| biasMetrics | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the description's job is lighter. It adds context about HuggingFace leaderboard and fairness metrics but does not disclose additional behaviors beyond those annotations, such as rate limits or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two concise sentences, front-loading the core function and audience without unnecessary words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, no required parameters, and moderate complexity, the description covers the key aspects: data source (HuggingFace), audience, inputs, and outputs. It could mention default behavior when no parameters are provided or data freshness, but overall it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with all 4 parameters described. The description reinforces the purpose (model identifiers, output samples) but does not add significant semantic depth beyond the schema's existing parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool tracks bias amplification in LLM outputs using HuggingFace's model leaderboard, specifying the resource (LLM outputs) and verb (tracks, analyzes). It distinguishes from siblings like hallucination_confidence_meter by focusing on fairness metrics and demographic bias.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it is designed for risk assessment personas to detect bias amplification, implying usage context. However, it does not explicitly state when to use this tool versus alternatives or when not to use it, lacking exclusions or direct alternative references.
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_checkerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| couponType | No | Type of bond coupon | |
| covenantText | Yes | Full text of the bond covenant to analyze | |
| issuerSector | No | Industry sector of the bond issuer (e.g., energy, finance) | |
| jurisdiction | No | Legal jurisdiction governing the bond (e.g., EU, US) | |
| maturityDate | No | Maturity date of the bond |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| riskAreas | No | |
| complianceScore | No | |
| recommendations | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint as true. The description is consistent and adds context about the analytical nature and output format ('structured compliance insights with source references'). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (4 sentences), front-loaded with the main purpose, and efficiently communicates key tasks and value. Every sentence adds value; no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 but indicated), the description adequately covers the return format. It specifies the type of analysis and regulatory benchmarks. For a tool with 6 parameters, the description is reasonably complete, though it could mention the specific parameters or sectors more explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already well-documented. The description generically mentions 'bond covenant details' without adding meaningful detail beyond what the schema provides. It does not clarify parameter usage beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: assessing bond covenant ESG compliance against BIS and ECB standards. It uses specific verbs and resources ('analyzes covenant text', 'identifies ESG-related risks') and distinguishes itself from siblings like bond_covenant_monitor by its regulatory focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: 'pre-issuance due diligence or ongoing monitoring'. It implicitly advises when to use (for ESG compliance) but does not explicitly mention when not to use or list alternative tools. A slight gap in exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bond_covenant_monitorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| ticker | Yes | Company ticker symbol (e.g., 'AAPL') | |
| covenantThresholds | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| warnings | Yes | |
| debtToEquity | No | |
| leverageRatio | No | |
| lastFilingDate | No | |
| complianceStatus | Yes | |
| interestCoverage | No | |
| nextFilingDeadline | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, open-world, and idempotent behavior. The description adds transparency by noting it uses real-time data and returns compliance status, metrics, and SEC filing references. No contradictions or missing behavioral warnings.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences plus keywords, which is slightly verbose. It front-loads the CFO role and key action, but includes some redundant or keyword-style content that could be trimmed. Adequate but not highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists (implied by context signals), the description adequately covers inputs (ticker, thresholds) and outputs (compliance status, metrics, SEC refs). It also provides use case context. A slightly more complete description of behavioral nuances would improve it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67%, including descriptions for 'async' and 'ticker'. The description adds value by clarifying 'optional covenant thresholds' for 'maxDebtToEquity' and 'minInterestCoverage', which are not fully explained in the schema. This helps agents understand parameter purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool monitors bond covenant compliance by analyzing specific ratios (debt-to-equity, debt-to-EBITDA, interest coverage) and outputs compliance status, metrics, and SEC references. This distinguishes it from siblings like 'bond_covenant_esg_compliance_checker' and '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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it's 'ideal for proactive debt management and regulatory compliance tracking,' implying usage context. However, it does not explicitly state when to use this tool over siblings or when not to use it, leaving the agent without clear decision guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bp_narratifCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| raise | Yes | ||
| company | Yes | ||
| keyMetrics | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and openWorldHint. The description adds that it returns a structured, audited deliverable and that inputs are validated server-side, which provides some additional context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences and a reference case. Every sentence adds information, though the reference case could be considered secondary. Front-loaded with the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (nested objects, no output schema, 4 parameters), the description is too minimal. It lacks details on return format, execution time, and how to use the async parameter. Despite a large sibling list, it offers no help in tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 no parameter-specific meaning. It does not explain the required fields (company, raise, keyMetrics) beyond the schema constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool produces a narrative business plan with CFO-level expertise, naming the verb 'Returns' and referencing a specific case (Stripe Series A 2012). However, it does not differentiate from sibling tools like ftg_business_plan or 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.
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 only says to 'send the documented case fields' but does not specify when not to use it or point to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
brand_builderCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| brand | Yes | ||
| target | Yes | ||
| founder | Yes | ||
| existingAssets | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by stating it returns a structured, audited deliverable and that inputs are validated server-side. Annotations already declare readOnlyHint=true and openWorldHint=true, so the behavioral profile is partially covered. However, it does not mention async behavior or response format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief (3 sentences) but lacks structure. The first sentence conveys the purpose, but the second sentence (case reference) is less actionable. Could be more front-loaded with core behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters with nested objects, no output schema), the description is insufficient. It does not explain the deliverable structure, processing time, or error handling. The async parameter is mentioned in schema but not in description, which is a gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not explain the purpose or constraints of the required objects (brand, founder, target). Users get no guidance on how to structure these inputs beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a brand architect tool that returns a structured, audited deliverable. It references a case (Pennylane) to illustrate its purpose. While not extremely detailed, it distinguishes itself from siblings by focusing on brand architecture for startups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides some guidance: 'send the documented case fields' and mentions server-side validation. However, it does not explicitly state when to use this tool versus alternatives like positioning_strategist or content_audience_profile. No exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
budget_variance_aiBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| entity | Yes | ||
| budgetContext | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and openWorldHint=true, which are consistent with a read-only analysis tool. The description adds that it returns a 'structured, audited deliverable' and validates inputs server-side, but does not mention async behavior (despite an async parameter in the schema) or other operational details like 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that includes a list of example questions. It front-loads the core purpose, but the inclusion of multiple examples makes it longer than necessary. It is adequately structured but could be more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has nested objects and 4 parameters, but the description does not explain the return format beyond 'structured, audited deliverable', nor does it clarify the async functionality or the required fields. Given the absence of an output schema, the description should provide more detail about what the agent can expect as a result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentions placeholders like <company> and <period> in example questions, which hint at entity fields, but it does not formally explain the structure or required fields of entity and budgetContext. This leaves the agent with insufficient guidance for constructing valid inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs 'Analyse d'écart budgétaire' (budget variance analysis) and provides specific example questions that illustrate its purpose. However, it does not explicitly differentiate itself from sibling tools like margin_doctor_finance or financial_model_3statement, which may have overlapping capabilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides several example queries that imply when to use the tool (e.g., explaining drivers, revising forecasts, producing board memos). However, it offers no explicit guidance on when not to use it or which alternative tools might be better suited for other scenarios.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | Latitude (WGS84) | |
| lng | Yes | Longitude (WGS84) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| radiusM | No | Search radius in metres (default 150, max 500) | |
| minAreaM2 | No | Only return roofs/parkings at least this large, in m² |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | No | |
| roofs | No | |
| summary | No | |
| parkings | No | |
| solarInstalled | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses key behavioral traits: 'Deterministic database lookup — no LLM, no generation, sub-second.' This reassures the agent about predictability and speed. It does not explicitly state read-only behavior, but 'database lookup' implies it. Additional details like coverage counts further clarify the nature of the operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary verb and resource. It packs essential info (data types, coverage, performance) without unnecessary words. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multi-country, multiple data types, legal references), the description is complete enough to set expectations. It covers scope, coverage, and performance. It does not detail edge cases or coverage limitations, but an output schema exists, and the schema itself documents async behavior, so the description is sufficient for initial selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% param coverage, so the description need not repeat parameter details. It does add context that the location parameters relate to buildings and parking, and mentions units (m²) which align with minAreaM2. However, this does not go beyond what the schema already communicates, so it earns the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 solar installations). It also differentiates from siblings by specifying the geographic coverage and deterministic nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when needing building-related data for a European location. It provides context about the database coverage and speed ('sub-second'), which helps the agent judge suitability. However, it does not explicitly mention alternatives or exclusion conditions, 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.
candidate_screening_rankingARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| candidates | Yes | Array of candidate objects. Maximum 50. | |
| role_country | No | Optional ISO 2-letter country code for regional context (informational). | |
| job_description | Yes | Full text or summary of the job description and role requirements. | |
| criteria_weights | No | Optional weighting per criterion. Default: skills=0.4, experience=0.2, education=0.1, progression=0.15, culture=0.15. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| nice_to_have | Yes | |
| quality_score | Yes | |
| required_skills | Yes | |
| candidates_ranked | Yes | |
| diversity_signals | No | |
| shortlist_recommended | Yes | |
| job_description_summary | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, indicating safe read operation. Description adds valuable behavioral context: local processing, no external API calls, instant response, privacy-preserving. Also details output structure and ethical warning about diversity signals. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is comprehensive yet concise, front-loaded with the main purpose and target audience. Every sentence adds value: listing criteria, output fields, diversity warning, and processing characteristics. No redundant or wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the tool (5 parameters, nested objects, output schema exists), the description is fully complete. It explains input requirements (job description, candidates), output structure (overall score, matched/missing skills, red/green flags, interview questions, fit_summary), and important ethical caveats (diversity signal proxy warnings). The existence of output schema helps but description adds necessary context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters, providing baseline of 3. Description adds significant meaning beyond schema by explaining the five weighted criteria (skills_match, experience_match, etc.) and their definitions, which are not detailed in the schema. Also describes per-candidate output fields like red_flags, green_flags, and fit_summary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it is an AI-powered candidate screening and ranking tool for recruiters, hiring managers, ATS providers, and recruitment AI agents. Specifies exactly what it does: ingests job description and resumes, returns ranked shortlist with score breakdowns across five criteria. Differentiates from siblings by targeting recruitment use case, though not explicitly naming alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage through description of functionality and emphasis on local processing, instant response, and privacy-preservation, suggesting it's suitable for sensitive data scenarios. However, no explicit guidance on when to use versus alternatives, nor when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capacity_planningBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| benchmarks | No | ||
| financials | Yes | ||
| constraints | No | ||
| currentTeam | Yes | ||
| hiringBudgetEur | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the description adds moderate value by noting inputs are validated and output is a deliverable. However, it does not elaborate on validation behavior or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief (3 sentences) and includes a reference case. It is front-loaded with the tool's purpose. However, it could be more structured with explicit sections.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, nested objects, no output schema), the description is insufficient. It does not explain return values, async behavior, or how to interpret the deliverable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 14%, and the description fails to explain any parameters beyond vague references to 'case fields'. The async parameter is not mentioned. 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs capacity planning for HR/CHRO, returning a structured audited deliverable. The reference case provides concrete context. Among many sibling tools, this stands out as a specific planning tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use or alternatives. The description only mentions inputs are validated server-side, but fails to instruct the agent on when to invoke this tool versus other planning tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_strategyCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| growthPlan | Yes | ||
| financialPosition | Yes | ||
| founderConstraints | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, and the description adds that inputs are validated server-side and that the deliverable is 'audited'. It does not mention the async parameter or timing behavior. The description adds moderate context beyond the annotations but does not fully disclose 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.
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. However, the mix of French and English and the vague reference to 'documented case fields' could be more efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 top-level parameters, deep nesting, no output schema, many siblings), the description is insufficient. It omits details about the deliverable format, how to use the async parameter, and how this tool differs from similar finance strategy tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is very low (20%), with only the async parameter having a description. The overall description says 'send the documented case fields' but does not explain the extensive nested objects or required constraints, leaving parameters mostly unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a financing strategy ('Stratégie de financement') and states it returns a structured, audited deliverable, with a reference case for context. However, the verb is implicit ('returns') and the exact output (e.g., a report, recommendations) is ambiguous, making it less precise than ideal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 its many siblings (e.g., cap_table_strategist, term_sheet_negotiation, funding_hunter). The description mentions 'C-suite expertise' but does not clarify when an agent should select this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cap_table_strategistCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| plannedRounds | Yes | ||
| currentCapTable | Yes | ||
| founderObjectives | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true, so the description's mention of returning a structured deliverable adds moderate value. However, it does not disclose other behavioral aspects like authentication needs, rate limits, or what happens with complex inputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise with four sentences, including a reference case that adds context without excessive verbosity. It is front-loaded with the main purpose but could be slightly shorter without the case study.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 insufficient. It does not explain the deliverable's structure, how to interpret results, or provide usage examples beyond the reference case. Critical details for effective use are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is very low (17%), and the description adds no individual parameter explanations beyond 'send the documented case fields.' It fails to compensate for the lack of schema documentation, leaving parameters like 'focus' and nested objects underspecified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a cap table strategist for C-suite fundraising expertise. It mentions returning a structured, audited deliverable and provides a reference case. However, it does not explicitly distinguish it from sibling tools like 'capital_strategy', and the French language may limit accessibility for some agents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for fundraising cap table strategies and mentions server-side input validation, but it lacks explicit guidance on when to use versus alternatives or when not to use it. No exclusions or alternative tool references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
carbon_footprint_calculatorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| perimeter | Yes | ||
| scope1Sources | No | ||
| scope2Sources | Yes | ||
| reductionTargets | No | ||
| scope3Activities | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| kpis | No | 3-5 headline ESG KPI bubbles |
| hotspots | Yes | Top emission sources ranked by contribution |
| breakdown | Yes | Emissions breakdown by scope |
| csrdReadiness | Yes | CSRD/ESRS reporting readiness assessment |
| sbtiTrajectory | No | SBTi-aligned annual reduction trajectory |
| reductionLevers | Yes | 5-8 actionable reduction levers with financial analysis |
| executiveSummary | Yes | Board-ready GHG assessment prose |
| scope3Categories | No | GHG Protocol 15 Scope-3 categories detail |
| totalEmissionsTco2eq | Yes | Total GHG footprint in tCO2eq (Scope 1+2+3 combined, ±20% tier-2 accuracy) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, destructiveHint=false. The description adds behavioral details: output includes emissions breakdown, hotspot identification, reduction levers, SBTi trajectory, Scope-3 categories, and CSRD readiness. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (a few sentences) with front-loaded core purpose. Every sentence adds value: purpose, scope, outputs, use cases, inputs, and persona. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given complexity (3 scopes, many outputs, many input parameters) and existence of output schema, the description covers outputs well but inputs vaguely. With low schema coverage, it's incomplete regarding parameter details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 13%, meaning most parameters lack descriptions. The description only vaguely mentions 'company profile and its activity data' without detailing individual parameters. With such low coverage, the description should compensate but fails to do so.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'calculate' and the resource 'greenhouse-gas footprint' with specifics: GHG Protocol, Scopes 1-3, unit tCO2eq, tier-2 accuracy ±20%. It distinguishes from siblings like carbon_roadmap by focusing on comprehensive assessment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use scenarios: CSRD compliance pre-audit, green-finance access, supplier ESG scorecards. Does not explicitly state when not to use or mention alternative tools, but the scenarios are clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
carbon_roadmapCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| perimeter | Yes | ||
| scope1Sources | No | ||
| scope2Sources | Yes | ||
| reductionTargets | No | ||
| scope3Activities | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true (no state change) and openWorldHint=true (uses external data). The description adds that it returns a 'structured, audited deliverable,' which gives some idea of output nature 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (3 sentences) and front-loaded with the purpose. However, it includes branding language ('Gapup agent-payable C-suite expertise') that adds little value, reducing conciseness slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 parameters, nested objects, no output schema), the description is insufficient. It does not explain return value format, how to interpret the deliverable, or usage of most parameters. Significant gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 13%, yet the description adds no parameter-level details. Only the 'async' parameter has a meaningful description in the schema; other parameters lack explanation. The description does not compensate for this gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 a 'Roadmap carbone,' clearly indicating it generates a carbon roadmap. However, it does not differentiate from similar tools like carbon_footprint_calculator, 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives or when not to use it. Only mentions server-side validation and sending documented case fields, which is more about input preparation than usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
champion_mappingBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| deal | Yes | ||
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| knownContacts | Yes | ||
| sellerContext | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations (readOnlyHint: true, openWorldHint: true) already indicate no mutations and flexible inputs. The description adds 'inputs are validated server-side' and confirms a deliverable is returned, but does not detail any potential side effects, authorization requirements, or return format beyond 'structured, audited deliverable.'
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two substantive sentences and a reference case, which is concise. However, the specific example may not be universally helpful and could be shortened. The purpose is front-loaded effectively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 parameters including complex nested objects and no output schema. The description does not clarify the return structure (e.g., champion name, plan timeline), how to handle the `async` parameter, or what constitutes a successful result. The vagueness of 'structured, audited deliverable' leaves significant gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 25%, the description should clarify parameter usage but only says 'send the documented case fields' and mentions validation. It does not explain the `async` parameter (which has a schema description) or the nested fields in `deal`, `knownContacts`, and `sellerContext`. The reference case is illustrative but does not map to parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: mapping champions for CRO-level deals, returning a structured deliverable. It includes a specific reference case (Spendesk × Decathlon) which adds concreteness and helps distinguish from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for upmarket CRO deals with the phrase 'Gapup agent-payable C-suite expertise (CRO)', but it does not explicitly state when to use this tool versus alternative sales tools like competitive_deep_dive or deal_coach. The context of champion mapping is implicit rather than prescriptive.
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_classifierARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_url | Yes | ||
| incident_id | No | ||
| snyk_org_id | No | ||
| time_range_days | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| root_causes | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the annotations by specifying that the tool uses GitHub PR and Snyk data to produce confidence scores. However, it does not disclose potential limitations like model update frequency (given openWorldHint), authentication requirements, or performance characteristics. The annotations already indicate the tool is read-only, idempotent, and open-world, so the bar is lower, but the description could still elaborate on these aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at four sentences, with the main purpose front-loaded. It efficiently covers the tool's function, data sources, inputs, outputs, and ideal use case without unnecessary detail. Minor improvement could be to structure information more obviously (e.g., separate inputs and outputs), but it is already well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema exists), the description is fairly complete: it covers the use case, data sources, input examples, and output structure. It does not explain parameter interactions (e.g., whether incident_id and pr_url are mutually exclusive) or the async behavior in this specific context, but these are minor gaps. The output schema handles return values, so the description does not need to detail them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions inputs (GitHub PR URL or incident ID) but does not explain all parameters. For example, time_range_days, snyk_org_id, and async are not described in the description, even though the schema has low coverage (20%). The description compensates partially by indicating the use of Snyk data (linking to snyk_org_id) but leaves gaps. Baseline is 3 for low coverage, and the description only elevates slightly by clarifying purpose of pr_url and incident_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool classifies root causes of change failures for CTO-level incident analysis, specifying inputs (GitHub PR metadata, Snyk vulnerability data) and outputs (structured categories with confidence scores). However, it does not explicitly distinguish itself from sibling tools that may also analyze change failures, such as dependency_vulnerability_scan or code_review_depth_optimizer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides usage context ('Ideal for post-mortem analysis and change risk assessment') but does not specify when not to use the tool or suggest alternatives among sibling tools. There is no guidance on conditions like insufficient data or specific incident scenarios where other tools would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
china_ecommerce_intelARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analysis mode. product_search=find products, seller_profile=supplier dossier, price_history=price trend, brand_monitoring=counterfeit detection, market_intel=category overview. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Keyword, product name, product_id, seller_id (platform:id), brand name, or category. Accepts Chinese characters (ZH) or English. | |
| region | No | Market region. CN-domestic=full platform coverage, cross-border=AliExpress+1688 focus. Default: CN-domestic. | |
| platform | No | Target platform. Default: all. Note: taobao/tmall/jd/pinduoduo require CN proxy. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| signals | Yes | |
| sources | Yes | |
| products | No | |
| market_intel | No | |
| platform_used | Yes | |
| price_history | No | |
| quality_score | Yes | |
| seller_profile | No | |
| brand_monitoring | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true (safe read operations). The description adds valuable context beyond annotations: data freshness (live data), proxy requirements for certain platforms, input format specifics, and fallback behavior. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with an introductory paragraph, bullet points for each mode, a data quality note, and input format examples. It is front-loaded but slightly verbose; one sentence could be trimmed without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, multiple platforms, proxy dependency, input formats), the description covers all essential aspects. It explains outputs per mode, data sources, and fallback scenarios. An output schema exists but is not shown; the description compensates by detailing return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the description still adds significant meaning: it explains what queries can be (keyword, product ID, seller ID, etc.), provides examples for seller_profile and price_history inputs, and elaborates on region and platform choices. This goes beyond the schema's enums and descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides 'Chinese e-commerce intelligence' for specific audiences and lists five distinct modes (product_search, seller_profile, etc.) with explicit purposes. This distinguishes it from sibling tools, all of which are non-China-e-commerce focused.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies target users (ZH diaspora, import-export teams, etc.) and explains when to use each mode. It also highlights data quality requirements (CN proxy needed for full data). However, it does not explicitly contrast with alternatives or state 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.
china_market_dataARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analysis mode. company=full profile, market_quote=price data, sector_overview=top 5 by sector, regulatory_filing=recent filings. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Ticker (6-digit A-share, 4-digit HK, Yahoo format), company name (ZH or EN), or sector keyword. | |
| exchange | No | Exchange filter. Default: all. Affects sector_overview ticker selection. | |
| period_days | No | Lookback period in days for regulatory filings. Default: 30. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| query | Yes | |
| status | Yes | |
| company | No | |
| sources | Yes | |
| market_quote | No | |
| quality_score | Yes | |
| sector_overview | No | |
| regulatory_filings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnly and not destructive, and the description adds valuable behavioral context: it discloses data sources (Yahoo Finance, Eastmoney, HKEX), notes that some sources require a proxy (AICI_RESEARCH_PROXY_URL), and implies potential latency for proxy-dependent modes. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with bullet points and clear sections, front-loading the main purpose. It is slightly verbose but each section contributes meaningful detail, balancing completeness with readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 modes, 5 parameters, multiple data sources, proxy requirement, async option), the description is thorough. It covers all input formats, mode details, data source caveats, and references related tools (job_result). The presence of an output schema further reduces the need to describe return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all 5 parameters with descriptions (100% coverage), so the description adds limited semantic value. It provides examples (e.g., '600519' for Moutai) but does not significantly enhance understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as providing Chinese capital market intelligence, listing four specific modes (company, market_quote, sector_overview, regulatory_filing) and covering A-Shares, H-Shares, and ADRs. It distinguishes itself from sibling tools like china_ecommerce_intel and india_market_data by its focused domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description details the four modes and accepted input formats, providing clear context for when to use each mode. However, it does not explicitly state when not to use the tool or compare it with alternatives within the sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
churn_defenderCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| accounts | Yes | ||
| csrContext | No | ||
| analysisWindowDays | Yes |
Tool Definition Quality
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 the tool returns a deliverable and validates inputs server-side, which is consistent but does not reveal additional behaviors (e.g., expected processing time, output structure). No contradiction found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (three sentences) but includes a tangential reference case. It front-loads the purpose but could be more efficient by removing the example and focusing on functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (many nested parameters, no output schema), the description is insufficient. It omits details about the deliverable's format, how results are used, and any post-processing steps, leaving significant gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 20% schema description coverage, the description should compensate but does not explain any parameters. It only says 'send the documented case fields', leaving the meaning of complex nested objects (company, accounts) undcribed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is an anti-churn tool that returns a structured audited deliverable, but lacks a specific verb (e.g., 'analyze' or 'generate') and does not clearly distinguish from siblings like 'champion_mapping' or 'renewal_optimizer'. The reference case provides context but the purpose remains somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 server-side validation and 'send the documented case fields' implies a usage requirement but does not specify scenarios or exclude inappropriate uses.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
climate_scenario_rcpARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| metrics | No | Métriques à inclure. Défaut : toutes. | |
| location | Yes | Localisation : {city, country?} ou {lat, lon} | |
| scenario | Yes | Scénario IPCC. 'all' génère une comparaison multi-scénarios. | |
| horizon_year | Yes | Année horizon de la projection (2030–2100) | |
| compare_baseline | No | Comparer vs baseline 1990-2010 (défaut true) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| location | Yes | |
| scenario | Yes | |
| projections | Yes | |
| horizon_year | Yes | |
| quality_score | Yes | |
| baseline_period | No | |
| ipcc_likelihood_label | Yes | |
| business_impact_signals | Yes | |
| multi_scenario_comparison | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, so the description adds value by detailing caching (7-day), SLA (≤20s), data sources (Open-Meteo CMIP6, IPCC AR6 Atlas, NOAA SLR), and output nature (multi-scenario comparison, probabilities, business impact signals). This contextualizes behavior 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but well-structured, front-loading the core purpose then logically presenting scenarios, horizons, metrics, outputs, sources, and use cases. Every sentence adds value, though it could be slightly more concise by removing repetitive elements like 'SLA ≤20s' integration into the caching statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 location object, multiple scenario families and metrics), the description covers purpose, scenarios, metrics, outputs, use cases, caching, SLA, and sources. Since an output schema exists, the description does not need to detail return values, yet it still describes output types (multi-scenario comparison, probabilities, business impact signals) for context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers all 6 parameters with descriptions (100% coverage). The description adds meaning by elaborating on metrics (e.g., 'temperature (delta vs baseline 1990-2010, days >35°C, hot nights)') and explaining the 'all' scenario option. This extra context helps agents understand the parameter options beyond the schema's enum labels.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides long-term climate projections by IPCC scenario for any location. It lists specific scenarios (RCP_4_5, RCP_8_5, SSP1_2_6, etc.), metrics (temperature, precipitation, sea level, etc.), and output types (multi-scenario comparison, IPCC probability, business impact signals). This specificity distinguishes it from siblings like weather_climate_intel, which likely covers short-term weather.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists explicit use cases such as TCFD/CSRD physical risk, long-term asset due diligence, catastrophe insurance, and infrastructure planning. It does not explicitly state when to avoid this tool or mention alternative tools, but the use-case list provides clear context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
clinical_evidence_brieferCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| topic | Yes | ||
| max_studies | Yes | ||
| intervention | No | ||
| evidence_focus | Yes | all | |
| target_disease | No | ||
| date_range_years | Yes | ||
| intervention_type | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds 'Returns a structured, audited deliverable' and mentions server-side validation, but does not disclose additional behavioral traits like data sources (PubMed, ClinicalTrials, OpenFDA from example) or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a long, unstructured paragraph mixing purpose, examples, and a reference case. It lacks clear front-loading of essential information and would benefit from bullet points or separate sections for purpose and examples.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters and no output schema, the description should detail the return format and parameter mapping. It only vaguely states 'structured, audited deliverable' and gives example queries. Missing information on pagination, error handling, or how parameters like 'intervention' and 'target_disease' map to use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 13%, and the description does not explain individual parameters beyond the example queries. For instance, 'topic' is used in examples but not defined. The description adds marginal value but 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool provides clinical evidence briefs with GRADE ratings, including example queries for efficacy, safety, comparative effectiveness, and evidence gaps. However, it does not explicitly differentiate from siblings like 'sci_literature_search' or 'clinical_pharma_intel', though the GRADE focus is distinctive.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides example queries but no explicit guidance on when to use this tool versus alternatives. There is no mention of when not to use it or comparative advantages. The phrase 'Inputs are validated server-side' hints at usage constraints but is insufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
clinical_pharma_intelARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Analysis mode. Default "trials". trials=clinical trials, pipeline=sponsor overview, approvals=FDA approvals, recalls=enforcement, adverse_events=FAERS | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| phase | No | Filter trials by phase (1/2/3/4/NA). Only applies to modes trials and pipeline. | |
| query | Yes | Drug name, indication, sponsor or molecule (e.g. "atezolizumab", "metastatic NSCLC", "Roche", "semaglutide") | |
| country | No | ISO 2-letter country code to filter trial sites (e.g. US, FR, DE). | |
| max_results | No | Maximum number of results to return. Default 20. | |
| status_filter | No | Filter trials by status. Only applies to modes trials and pipeline. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| query | Yes | |
| status | Yes | |
| trials | No | |
| recalls | No | |
| signals | Yes | |
| sources | Yes | |
| pipeline | No | |
| approvals | No | |
| quality_score | Yes | |
| adverse_events | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: signal detection (P0/P1/P2), data sources (ClinicalTrials.gov, EU CTR, OpenFDA, FAERS), optional API key quota increase, SLA ≤16s p95, and cache durations. No contradiction with annotations (readOnlyHint, destructiveHint, openWorldHint).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with bullet points and section headings, front-loading the purpose. However, it is fairly long (multiple sections). Every sentence is informative, but it could be slightly more concise without losing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 7 params, output schema exists), the description is highly complete. It covers mode details, signal detection algorithm, data sources, performance constraints, and caching policy. Output schema exists, so return values are sufficiently documented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with detailed descriptions for all 7 parameters. The description enriches parameter semantics by explaining mode-specific behavior (e.g., pipeline includes trial count by phase, signal detection thresholds). It adds value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Clinical and pharmaceutical intelligence for biotech analysts...' and lists five specific modes (trials, pipeline, approvals, recalls, adverse_events) with detailed explanations. It distinguishes itself from sibling tools by focusing on pharma intelligence with live data aggregation and signal detection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use the tool by detailing each mode's purpose and the signal detection logic. It does not explicitly exclude cases or mention alternatives among siblings, but the mode descriptions implicitly guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_cost_ri_optimizerBRead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| term | No | ||
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| region | Yes | ||
| utilization | No | ||
| cloud_provider | Yes | ||
| instance_family | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| ri_cost | No | |
| sources | No | |
| warnings | No | |
| on_demand_cost | No | |
| break_even_months | No | |
| regional_demand_score | No | |
| cost_savings_percentage | No | |
| recommended_ri_quantity | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint. The description adds that it uses external pricing data and RIPE trends, and mentions output fields. However, it doesn't disclose response time, data freshness, or async behavior beyond the generic 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with 4 sentences and a keyword list. It front-loads purpose but includes superfluous keywords. Could be more efficient without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and an output schema (not shown), the description covers purpose, key inputs, outputs, and use case. Lacks details on regional scope, data sources currency, or error handling, but is largely adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (17%). The description lists four of six parameters (cloud_provider, instance_family, region, term), adding context. But it doesn't explain valid values for instance_family or region format, and omits utilization and async. Partially compensates for schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it analyzes AWS/Azure pricing with RIPE trends to generate Reserved Instance purchase recommendations. It specifies inputs and outputs, making the tool's purpose distinct from siblings, though it doesn't explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Ideal for reducing cloud spend', implying when to use, but provides no guidance on when not to use or alternatives. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
code_review_depth_optimizerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| teamSize | No | Number of active developers in the team | |
| repository | Yes | GitHub repository identifier in format owner/repo | |
| riskTolerance | No | Organization's risk tolerance level | |
| timeRangeDays | Yes | Number of days of historical data to analyze |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| recommendation | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint. Description adds value by specifying it analyzes external data (DORA, GitHub) and outputs a recommendation, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action and resource, no fluff. Efficiently conveys purpose, input, and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers key inputs (repository, time range) and output (structured recommendation). Optional parameters are in schema. Could mention async behavior but it's in schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description adds no additional parameter details beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it analyzes DORA metrics and GitHub PR data to recommend an optimal code review depth, distinguishing it from siblings like dora_metrics_deep_dive which likely focus on metrics alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description provides context for when to use (CTO analyzing team metrics) and what to input, but does not explicitly state when not to use or mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
comp_benchmark_geo_deltaARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| jobRole | Yes | Standardized job role (e.g., 'Software Engineer III') | |
| currency | No | ISO 4217 currency code (e.g., 'USD') | |
| baseSalary | No | Current base salary in local currency | |
| hqLocation | Yes | HQ location (ISO 3166-2 code or city, country) | |
| localLocation | Yes | Local work location (ISO 3166-2 code or city, country) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| taxImpact | No | Estimated tax differential percentage |
| adjustedSalary | No | Salary adjusted for cost-of-living and taxes |
| benchmarkDelta | No | Percentage difference between local and HQ benchmark |
| confidenceScore | No | 0-1 confidence in data quality |
| costOfLivingMultiplier | No | Local cost-of-living index relative to HQ |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds behavioral context (adjustments for cost-of-living and tax, outputs like delta, multiplier, tax impact) 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two succinct sentences plus keyword list. Front-loaded with core purpose, no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present, description adequately covers purpose and outputs. However, lacks details on data sources or interpretation of outputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameter descriptions. The tool description lists inputs but adds no additional meaning beyond the schema, meeting the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool compares local compensation benchmarks against HQ standards with cost-of-living and tax adjustments. However, it does not differentiate from sibling tools like 'executive_comp_peer_benchmark' or 'global_salary_inflation_adjuster', which could cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 implies use for geographic compensation analysis but provides no exclusions or references to other tools, despite a large sibling list with many HR-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
competitive_deep_diveARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| depth | No | Research depth: 'easy' = Wikipedia + DDG (fast, ~15s); 'medium' = + Yahoo Finance + EDGAR + Wayback (default, ~45s); 'hard' = + HackerNews + domain surfaces + competitor deep dive (~120s) | |
| company | Yes | Name or domain of the target company (e.g. 'Salesforce', 'notion.so', 'HubSpot CRM') | |
| competitors | No | Optional list of competitor names or domains to include in the comparison matrix (max 5) |
Output Schema
| Name | Required | Description |
|---|---|---|
| kpis | Yes | Key Performance Indicators sourced from public data |
| company | Yes | |
| quality | Yes | |
| signals | Yes | Competitive intelligence signals, severity-ranked P0 (critical) to P2 (informational) |
| sources | Yes | |
| comparison | Yes | Feature/dimension comparison between target and each competitor |
| depth_used | Yes | |
| positioning | Yes | Positioning analysis derived from public data |
| generated_at | Yes | |
| pricing_radar | Yes | Pricing tiers extracted from public sources |
| domain_resolved | Yes | |
| wayback_timeline | Yes | Historical snapshots of the company website from Wayback Machine |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, establishing safety. The description adds significant behavioral context: it explains the multi-source aggregation, keyless access, structured output with all fields sourced (no hallucinations), SLA (p50 ~25s), and quality expectations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with front-loaded purpose and pair tool. It is detailed but every sentence adds value; no redundancy. However, it is relatively long; minor gains could be made by condensing some technical details, but overall it's efficient for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multi-source, async variants, output schema exists), the description covers all essential aspects: purpose, alternatives, parameters, output structure, SLA, quality constraints. It does not duplicate the output schema but references its existence, which is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds value by elaborating on each parameter: clarifying that `company` is required, explaining the depth enum with details on sources and speed, and noting that `competitors` is optional with max 5. This exceeds mere schema repetition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function ('gold-standard competitive deep dive') and distinguishes it from the sibling `competitor_intel` by noting it provides structured multi-source data without LLM narrative. It specifies the verb (dive) and resource (competitive data), leaving no ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly pairs with `competitor_intel` for LLM-narrated briefings, provides async alternatives (`competitive_deep_dive_async` + `competitive_deep_dive_result`), and gives clear guidance on when to use sync vs async ('Use sync for batch agents... Use async for conversational agents'). SLA and quality scores are also provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
competitive_deep_dive_asyncARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Research depth: 'easy'≈15s, 'medium'≈30s (default), 'hard'≈60s | |
| company | Yes | Name or domain of the target company (e.g. 'Salesforce', 'notion.so') | |
| competitors | No | Optional list of competitor names or domains to include in the comparison matrix (max 5) |
Output Schema
| Name | Required | Description |
|---|---|---|
| job_id | Yes | Unique job identifier — pass to competitive_deep_dive_result |
| status | Yes | Always 'queued' on submission |
| eta_seconds | Yes | Estimated seconds until result is ready |
| submitted_at | Yes | ISO-8601 submission timestamp |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral details beyond annotations: immediate return, background processing with p50/p95 times, support for polling and webhooks, and depth-specific timings. There is no contradiction with annotations (readOnlyHint=true is appropriate for an async submission tool).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph but efficiently conveys the key points: async behavior, timing, alternatives, and input structure. It is front-loaded with the most critical information. Minor improvement could be bullet points, but it is clear and not overly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (async with background processing, polling, webhooks) and the presence of an output schema (not shown but referenced), the description fully covers usage, timing, alternatives, and input parameters. No gaps are apparent for an agent to correctly invoke and handle the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The description adds practical context (e.g., depth timing 'easy'≈15s) and notes that inputs are the same as competitive_deep_dive, which is helpful for transfer of knowledge. However, the schema itself already describes the parameters well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is an async variant of competitive_deep_dive, returns a job_id immediately, and runs research in the background. It distinguishes itself from the synchronous sibling tool (competitive_deep_dive) by highlighting the async behavior and response time trade-off.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly specifies when to use this tool: when the agent cannot wait >15s for a response. It also provides alternatives: polling with competitive_deep_dive_result or registering a webhook via webhooks_manage, giving clear guidance on usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
competitive_deep_dive_resultARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by competitive_deep_dive_async |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds value by detailing the TTL (24h), the specific statuses, and the relationship to the async job. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences that convey all necessary information without any unnecessary words. The structure is front-loaded with the core purpose and status list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With annotations covering safety and idempotency, and an output schema present (context signal), the description only needs to explain the polling behavior and statuses. It does so completely and concisely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for job_id, which is self-explanatory. The description adds minor context by mentioning it comes from competitive_deep_dive_async, but the schema already describes it. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool polls the result of an async job (competitive_deep_dive_async) and lists the exact statuses (pending, completed, failed, not_found). This distinguishes it from sibling tools like competitive_deep_dive_async (initiation) and competitive_deep_dive (synchronous).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to call this after competitive_deep_dive_async, referencing the eta_seconds hint. Also describes the meaning of each status and the TTL (24h), guiding the agent on when to retry or consider the job expired.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
competitor_intelARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | Optional — what the buyer wants to track first (e.g. pricing moves, hiring patterns) | |
| competitors | Yes | 1-10 competitors to analyze | |
| selfCompany | Yes | Your company info |
Output Schema
| Name | Required | Description |
|---|---|---|
| kpis | No | 3-5 headline KPI bubbles |
| sources | No | Cited sources |
| pricingRadar | No | Pricing comparison across competitors |
| competitorMoves | Yes | Recent moves per competitor with severity rating |
| presenterScript | Yes | 8-12 slide board presenter script |
| recommendations | Yes | 3-6 actionable strategic recommendations |
| executiveSummary | Yes | Board-ready prose summary (120-400 chars) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds behavioral context by noting it is LLM-narrated and for human consumption, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph, front-loaded with the tool's purpose. It is concise but slightly dense, covering many output details in one block.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 objects, output schema exists), the description covers intended use, inputs, and output format adequately. The output schema provides return value details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 restates high-level inputs but adds no new parameter-level details beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides a 'competitive-intelligence BRIEFING' for human consumption, listing specific output components (moves, severity, recommendations, script). It distinguishes from sibling `competitive_deep_dive` which provides raw structured data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use when the buyer wants a narrative briefing or a deck' and mentions pairing with `competitive_deep_dive`. It does not specify exclusions but provides clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
competitor_movesBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| competitors | Yes | ||
| selfCompany | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and openWorldHint, and the description adds context about returning a 'structured, audited deliverable' and server-side input validation. However, the description does not mention the async behavior (the async parameter is described only in the schema) nor outline potential rate limits or data freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but includes extraneous elements like a French title and a reference case that adds little clarity. The bullet points and dashes create some structure, but the overall flow is disjointed. It could be more streamlined and front-loaded with essential details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (nested objects, async option, no output schema), the description is incomplete. It does not specify the delivery format beyond 'structured, audited deliverable', nor does it explain the async polling mechanism. The presence of the 'async' parameter is not mentioned in the description, leaving a gap in understanding how the tool behaves.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 main description fails to explain any of the four parameters: 'focus', 'competitors', and 'selfCompany' have no description in either the schema or the tool description. This leaves the agent without critical context on what values are expected or how to structure the input.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is for analyzing recent competitor moves (releases, pricing, hires, funding) and identifying urgent signals with actionable recommendations. It includes a reference case (Notion vs ClickUp, Asana, Coda) but does not explicitly differentiate from similar sibling tools like 'competitive_deep_dive' 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by framing the questions the tool answers ('What have my named competitors done recently?' and 'Which signals are urgent?'). No explicit guidance is given on when to use this tool versus alternatives, nor when not to use it. The reference case provides context but not a clear directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
competitor_pricing_radarBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| competitors | Yes | ||
| selfCompany | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the description's mention of a 'structured, audited deliverable' adds some value. However, it includes vague jargon ('Gapup agent-payable C-suite expertise (CMO)') that does not clarify behavior. No mention of authentication, rate limits, or what happens on failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the purpose, but includes unnecessary jargon ('Gapup agent-payable C-suite expertise (CMO)') and a mix of English and French ('Radar pricing concurrents'). The reference case adds value, but the overall length could be reduced without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (4 parameters, nested objects, no output schema), the description provides insufficient guidance on input structure and expected output. It mentions a reference case but does not define the 'documented case fields' or explain how to format the competitors array. The agent may struggle to use this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (25%): only the 'async' parameter has a description. The description adds little beyond the schema: 'Inputs are validated server-side' is generic. It does not explain the 'focus' parameter or the required structure of 'competitors' and 'selfCompany' objects, leaving the agent to rely solely on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool compares competitors' pricing plans and monthly prices, answering specific questions about undercutting and feature comparison. It gives a concrete reference case (Notion vs ClickUp, Asana, Coda). However, it does not explicitly differentiate from siblings like competitor_pricing_scrape or competitor_intel, relying on the 'pricing' focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for pricing comparison but does not explicitly state when to use this tool versus alternatives. It mentions that inputs are validated server-side and provides a reference case, but lacks exclusion criteria or context for 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.
competitor_pricing_scrapeARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Competitor URL or domain (e.g. 'https://notion.so/pricing', 'notion.so', 'https://www.example.com'). For best results, provide the direct pricing page URL. | |
| async | No | If true, returns a job_id 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
| Name | Required | Description |
|---|---|---|
| tiers | Yes | |
| domain | Yes | |
| status | Yes | |
| warnings | Yes | |
| url_fetched | Yes | |
| has_free_tier | Yes | |
| pricing_found | Yes | |
| quality_score | Yes | |
| raw_price_signals | Yes | |
| has_enterprise_tier | Yes | |
| plan_names_detected | Yes | |
| billing_model_signals | Yes | |
| estimated_price_range | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains the proxy-aware fetching, fallback behavior ('tries /pricing, /plans, homepage fallback'), failure handling (clear degraded result with warnings), caching (TTL 6h), and async support. This adds significant behavioral context beyond the annotations (readOnlyHint, openWorldHint). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is fairly concise but contains several details (e.g., ICP list, tech specifics) that could be slightly trimmed. It is front-loaded with the purpose and structured well, but not maximally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (web scraping with fallback, failure handling, caching), the description covers all essential aspects: method, output, failure behavior, ICP, and technical parameters like proxy and cache. The existence of an output schema compensates for not detailing return format, so it's complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are described in the schema, and the description adds extra guidance: for 'url' it recommends providing the direct pricing page, and for 'async' it explains the job result polling mechanism. This enriches the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool scrapes and parses competitor pricing pages from a URL, with specific extracted data. It does not explicitly differentiate from sibling tools like 'competitor_pricing_radar', so it loses one point for lack of distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies the ICP (founders, product managers, etc.) and advises providing the direct pricing URL. It does not specify when to avoid using this tool or mention alternatives, so it's clear but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
competitor_profilesCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| competitors | Yes | ||
| selfCompany | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the description's claim that inputs are validated and it returns a deliverable adds marginal context but does not contradict. Additional behavioral details like cost, latency, or authentication requirements are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is somewhat verbose with mixed language (French/English) and includes jargon like 'Gapup agent-payable C-suite expertise (CMO)'. While it provides a reference case, it could be more succinct and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 4 parameters, no output schema), the description lacks details about the return format, field constraints, and how to structure the input. The reference case helps but is insufficient for complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 or format of selfCompany, competitors, or focus, leaving the agent without guidance on how to populate these required fields properly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it returns a structured, audited deliverable about competitor strengths, weaknesses, and positioning, with a SWOT-like profile. However, it does not differentiate from sibling tools like competitor_intel or competitor_moves, which could also provide competitive analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 instead of similar competitor-focused tools. The description mentions 'SWOT-style profile' and 'audited deliverable' but does not contrast with alternatives or provide use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
competitor_recommendationsBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| competitors | Yes | ||
| selfCompany | Yes |
Tool Definition Quality
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 mentions server-side validation, providing some additional context about behavior. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is five sentences with mixed French and English. It is relatively concise but includes redundant phrasing (e.g., 'Gapup agent-payable C-suite expertise (CMO)') that may confuse. The structure front-loads purpose effectively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 parameters, no output schema), the description covers purpose, key questions, and a reference case but lacks details on the 'focus' parameter, expected output format, and how the deliverable is structured. For a tool with many siblings, more specificity would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25% (only async parameter described). The description does not elaborate on the other parameters (focus, competitors, selfCompany) beyond their names. 'focus' is particularly vague, and no guidance on formatting or constraints is given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides competitive recommendations and a structured response plan for 7/30/90/180 days, distinguishing it from sibling tools like competitor_intel or competitor_profiles that focus on information gathering. The verb 'recommendations' and resource 'competitive actions' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for strategic planning ('what strategic actions should I take?') but does not explicitly contrast with alternatives or specify when not to use it. No exclusion criteria or alternative tool references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
comp_plan_architectCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| targets | Yes | ||
| geography | No | ||
| salesTeam | Yes | ||
| currentChallenges | Yes | ||
| preferredStructure | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true (safe read) and openWorldHint=true (uses real-world data). The description adds that inputs are validated server-side and returns a 'structured, audited deliverable'. This provides some behavioral context beyond annotations, but does not disclose specifics like what gets destroyed 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short and front-loaded with the purpose. It includes a reference case for context. However, the mix of French and English and the lack of structured formatting (e.g., bullet points) slightly reduce clarity. Overall, it is concise and each sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, nested objects, no output schema), the description is incomplete. It does not describe the return format or what the 'structured, audited deliverable' contains. The reference case provides some context but is not sufficient to fully understand the tool's capabilities and output. The lack of output schema exacerbates the gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is very low (14%)—only the 'async' parameter has a description. The main parameters (company, salesTeam, targets, currentChallenges) lack descriptions. The description says 'send the documented case fields' but does not add meaning to individual parameters. The agent must rely on schema names, which are somewhat self-explanatory but insufficient for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Architecture plan de commissionnement' (compensation plan architecture) and mentions it returns a structured, audited deliverable. The reference case provides context. However, it doesn't explicitly differentiate from sibling tools like comp_benchmark_geo_delta, leaving some ambiguity. Overall, purpose is clear but not maximally specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. No when-to-use, when-not-to-use, or prerequisite conditions are stated. The sibling list includes many competitive analysis tools, but no differentiation is offered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_audience_profileARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_id | Yes | Entity id from content_catalog | |
| entity_type | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| entity_id | Yes | |
| provenance | Yes | Entity-level trust & freshness summary. |
| entity_type | Yes | |
| audience_facets | Yes | Map facet → array of { label, confidence, corroboration, source_count, sources } |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and openWorldHint. The description adds behavioral context: 'The response also carries an entity-level provenance block (average confidence, data freshness)'. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, front-loaded with purpose, then usage, then input requirements. No redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present and annotations covering safety, the description provides sufficient context for a read-only tool. It explains the output structure and provenance block.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67%. Description mentions 'entity_id and its type' but does not explain the 'async' parameter. It adds some meaning by naming the inputs but lacks full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns 'audience targeting profile' as 'enrichment tags reframed as audience facets with confidence, corroboration and full provenance'. This is a specific verb+resource combination that distinguishes it from sibling tools like content_catalog or content_enrichment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'an ad-tech or marketing agent needs a machine-readable, verifiable audience descriptor'. Also specifies required inputs (entity_id and type). Lacks explicit when-not-to-use or alternative tools, 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.
content_catalogARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Optional case-insensitive substring filter on franchise name | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum number of franchises to return (default 20) | |
| domain | Yes | Content domain to browse |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| domain | Yes | |
| franchises | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and openWorldHint. The description adds that it returns franchises with works but does not detail other behavioral aspects like pagination or performance. Given annotations, the bar is lower and the description provides some context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with every sentence adding value. It front-loads the core action, then provides usage guidance, input summary, and chaining information. No extraneous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 and annotations, the description is complete. It covers what the tool does, when to use it, inputs, and how to chain it with content_enrichment. No obvious gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentions 'optional case-insensitive name filter' which is already in the schema. No additional meaning is added beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool browses a content catalog of video games, films, TV series, and music, returning franchises with their works including title and release year. It distinguishes itself from siblings by indicating it is a preliminary step before enrichment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly lists when to use the tool: for structured metadata, resolving titles, or browsing before enrichment. It also references content_enrichment for fine-grained tag profiles, providing an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_compareARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_a | Yes | Id of the first entity from content_catalog (e.g. 'game-dark-souls', 'music-daft-punk'). | |
| entity_b | Yes | Id of the second entity from content_catalog (e.g. 'game-elden-ring', 'music-justice'). | |
| entity_type | No | Whether both ids are franchises or works (applies to both). Defaults to 'franchise'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| entity_a | Yes | |
| entity_b | Yes | |
| similarity | Yes | Jaccard index = |shared| / |union|, rounded to 2 decimal places. 0 = no overlap, 1 = identical profiles. |
| a_tag_count | Yes | |
| b_tag_count | Yes | |
| entity_type | Yes | |
| shared_tags | Yes | Tags present in both entities (up to 40). |
| unique_to_a | Yes | Tags present only in entity_a (up to 40). |
| unique_to_b | Yes | Tags present only in entity_b (up to 40). |
| shared_count | Yes | |
| shared_by_facet | Yes | Count of shared tags per facet (e.g. { genre: 3, theme: 5 }). Shows which dimensions drive the similarity. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint and openWorldHint, but the description adds behavioral context: returns Jaccard similarity, shared tags, unique tags, facet breakdown. It also mentions the async parameter which provides flexibility. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with main purpose and structured with a clear 'When to use' section. It includes examples that aid understanding, though it is slightly verbose. Efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists (not shown but noted), the description adequately covers the tool's operation, return values, and common use cases. It is complete 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description rephrases parameter explanations (e.g., entity_a/b as IDs from content_catalog) but adds minimal new meaning 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool compares tag profiles of two content entities and lists the outputs. It specifies domains (franchises or works) and examples, but does not explicitly differentiate from sibling tools like content_similar, though the purpose is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit 'When to use this tool:' section with concrete examples (e.g., comparing Dark Souls and Elden Ring). It covers use cases like positioning overlap and cross-sell, but lacks explicit when-not-to-use instructions or alternative tool mentions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_discoveryARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Tag label to match precisely (e.g. 'thriller', 'co-op'). Mutually exclusive with `query`. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum franchises to return (default 25) | |
| query | No | Free-text intent for semantic search (e.g. 'melancholic synth-pop about heartbreak'). Mutually exclusive with `tag`. | |
| domain | Yes | Content domain to search within |
Output Schema
| Name | Required | Description |
|---|---|---|
| tag | No | |
| count | Yes | |
| query | No | |
| domain | Yes | |
| method | Yes | |
| franchises | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, openWorldHint), the description details that results include confidence/similarity scores and freshness, and explains the behavioral difference between tag and query modes. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is clear and well-structured, but slightly verbose with multiple examples. Could be tightened slightly, but still effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 sufficiently covers inputs, outputs (scores, freshness), and usage context. It is 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds significant context by explaining the purpose and mutual exclusivity of 'tag' and 'query', and the role of 'domain'. It goes beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it discovers content franchises within a domain, specifies two modes (tag vs query), and gives concrete examples. It distinguishes itself from siblings by emphasizing discovery via taxonomy or semantic search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'When to use: an agent wants a domain-scoped shortlist by tag or by intent.' It explains the two modes and implies mutual exclusivity, providing clear guidance for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_engineCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| brand | Yes | ||
| months | Yes | ||
| cluster | Yes | ||
| maxArticlesPerMonth | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating no side effects. The description adds server-side validation but doesn't disclose other behavioral traits (e.g., response format, latency). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (two sentences and a fragment), but it's not well-structured. It front-loads a French phrase and a case reference, which may confuse agents. Brevity is positive, but key information is missing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (nested objects, five parameters, no output schema, many siblings), the description is insufficient. It doesn't explain input constraints, return value, or how to use the tool effectively. The agent cannot invoke it correctly without additional knowledge.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20% (async parameter only). The description's advice to 'send the documented case fields' is unhelpful—the nested objects (brand, cluster) and other parameters have no documentation. The description fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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' and references a case (Notion content engine), but the purpose is vague—it lacks a specific verb+resource. It doesn't distinguish from sibling tools like content_catalog or content_ranking, which also produce deliverables.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 but doesn't specify scenarios or exclusions. With many content siblings, an agent has no basis to select this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_enrichmentARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_id | Yes | Entity id from content_catalog (e.g. 'music-daft-punk', 'film-the-dark-knight-collection:the-dark-knight') | |
| entity_type | No | Whether the id is a franchise or a work (default franchise) |
Output Schema
| Name | Required | Description |
|---|---|---|
| tags | Yes | |
| entity_id | Yes | |
| tag_count | Yes | |
| provenance | Yes | Entity-level trust & freshness summary. |
| entity_type | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint and openWorldHint, which the description does not contradict. The description adds valuable behavioral details: tag structure, provenance, and entity-level provenance block. It explains what each tag includes, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently conveys purpose, output structure, and usage context. It is front-loaded with the core function. Slight density, but no unnecessary content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (assumed from context), the description covers all essential aspects: inputs, output structure (tag profile with per-tag and entity-level details), and use case. It is complete for an agent to understand tool functionality.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already describes parameters. The description mentions the two inputs (entity_id, entity_type) and their origin (content_catalog) but does not add significant meaning beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns an 'enriched tag profile' of a content entity, listing what each tag carries (facet, confidence, corroboration, provenance) and entity-level provenance. It distinguishes from sibling content tools by focusing on enrichment with provenance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 and needs fine-grained characterisation. Provides context (from content_catalog) and use cases (matching, recommendation, etc.). Does not name specific alternatives among siblings, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_evergreen_score_analyzerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Content URL to analyze | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| toDate | No | End date for historical analysis (YYYY-MM-DD) | |
| fromDate | No | Start date for historical analysis (YYYY-MM-DD) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| lastSeen | No | |
| warnings | Yes | |
| firstSeen | No | |
| trafficTrend | Yes | |
| backlinkCount | No | |
| evergreenScore | Yes | |
| backlinkDomains | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, openWorldHint=true. The description adds behavioral context by specifying that it uses Wayback Machine and Common Crawl public APIs, and that it returns a score and analysis. No contradictions, and the extra 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at four sentences, with no wasted words. The primary action and key details are front-loaded. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, the description adequately covers purpose, inputs, outputs, data sources, and use cases. It is sufficiently complete for an agent to understand and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage, so the baseline is 3. The description only summarizes parameters ('takes a content URL and optional time range') without adding new details or constraints beyond what the schema provides. No extra semantics are given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it evaluates content evergreen potential using historical traffic and backlink authority. It specifies the target user (CMOs) and the outputs (evergreen score, trends, backlink profile). However, it does not explicitly differentiate from sibling tools that may analyze content, such as 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.
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 content strategy planning, SEO optimization, and identifying high-value evergreen assets.' This gives agents a good sense of appropriate use cases, but it does not list exclusionary criteria or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_provenanceARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_id | Yes | Entity id from content_catalog (e.g. 'video-game-elden-ring') | |
| entity_type | No | Whether the id is a franchise or a work (default: franchise) |
Output Schema
| Name | Required | Description |
|---|---|---|
| lineage | Yes | Full tag lineage from v_data_lineage — one entry per tag. |
| entity_id | Yes | |
| entity_type | Yes | |
| freshness_summary | Yes | Entity-level freshness & trust summary from v_entity_freshness. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds details on return structure (tags, scores, freshness) but no additional behavioral traits. Adequate 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus input list. Every sentence adds value: output description, usage guidance, inputs. No fluff, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, usage, and output. Missing mention of async parameter behavior. With output schema present, return value explanation is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description merely restates entity_id and entity_type without adding new detail beyond schema. Does not mention async parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool audits full data provenance of a content entity, listing specific outputs (enrichment tags with details, freshness summary). It distinguishes from siblings like content_enrichment by focusing on auditing rather than creating.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells users to use before citing or relying on enriched data in high-stakes contexts. Does not mention exclusions or alternatives, but usage context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_rankingARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| genre | No | Optional genre filter, e.g. 'RPG', 'FPS', 'thriller' | |
| limit | No | Number of ranked results (default 20) | |
| domain | Yes | Content domain to rank within | |
| year_to | No | Optional latest release year | |
| criterion | No | critic_score (0-100, default) · popularity · price · value (critic score per unit price) | |
| direction | No | desc = best/highest first (default); asc = cheapest/lowest/least first. Defaults to asc for price. | |
| year_from | No | Optional earliest release year | |
| available_only | No | If true, restrict to entities currently available to buy/play (default false) |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| genre | No | |
| domain | Yes | |
| ranking | Yes | |
| year_to | No | |
| criterion | Yes | |
| direction | No | |
| year_from | No | |
| available_only | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with annotations (readOnlyHint=true, openWorldHint=true) by describing the tool as returning results without side effects. It discloses that every result carries its score, price, and source, and mentions async behavior for slow queries, adding context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is slightly long but front-loaded with purpose and examples. Every sentence adds value, but some repetition with schema could be trimmed. Overall it's well-structured and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (9 parameters, 1 required), the description is complete. It explains criteria, filtering by genre and year, direction, and availability. The output schema exists (though not shown), so return values are covered. No gaps are apparent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and parameters are well-described in the schema. The description adds value by explaining the meaning of 'direction' (asc = cheapest/lowest first) and 'available_only' (entities currently buyable), but schema already covers enums and types adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool returns top-ranked content entities in a category by a chosen criterion, with specific examples like 'best video games' and 'top RPGs'. It distinguishes itself from sibling tools by focusing on ranking and decision queries, which is unique among the listed siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use this tool: 'an agent must produce a ranked shortlist to support a recommendation, a purchase or a 'what is the best X' decision.' It also explains the criteria and options like direction and availability, providing clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_similarARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | ||
| entity_id | Yes | Entity id from content_catalog | |
| entity_type | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| method | Yes | How similarity was computed. |
| similar | Yes | |
| entity_id | Yes | |
| source_provenance | Yes | Provenance of the source entity used to compute similarity. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and open-world. The description adds valuable behavioral details: the dual approach (semantic vector similarity vs. tag overlap), result contents (similarity score, freshness/confidence), and the fallback logic. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the main action, then explains methodology and usage in a few efficient sentences. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 detail return values. It covers the algorithm, use case, and result fields (similarity score, freshness). It is complete for the complexity level and sibling differentiation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50% (async and entity_id described). The description mentions entity_id and entity_type but does not explain limit or the enum values for entity_type. It adds some meaning beyond the schema but leaves significant gaps for limit and async behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it finds content entities similar to a given one, specifies the use of semantic vector similarity for embedded franchises and tag overlap for works, and distinguishes itself from other content tools by focusing on similarity and recommendations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'When to use this tool: an agent wants recommendations or lookalikes for a franchise or work,' providing clear usage guidance. It does not explicitly give alternatives or when not to use, but the context is sufficient for agent decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
content_taxonomyARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| domain | Yes | Content domain |
Output Schema
| Name | Required | Description |
|---|---|---|
| domain | Yes | |
| taxonomy | Yes | Map facet → array of tag labels |
| tag_count | Yes | |
| facet_count | Yes |
Tool Definition Quality
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 the tool returns tags 'grouped by facet', which provides structural context but no additional behavioral traits like rate limits or auth needs. Given annotation coverage, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two succinct sentences: first defines output, second defines usage. No wasted words. Information is front-loaded with the primary purpose immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (not shown but noted), the description provides enough context: it returns tags grouped by facet and requires a domain. It doesn't explain invalid inputs but the enum handles that. For a simple read-only taxonomy tool, this is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters (async, domain) described. The description only mentions 'Input: a domain', adding no extra meaning beyond the schema. It doesn't explain the async parameter, but the schema covers it. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it returns the enrichment taxonomy grouped by facets for a content domain. It distinguishes itself from the many sibling tools by specifying its unique output (tag groups like genre, theme). The verb 'return' is specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'an agent needs the controlled vocabulary to filter, classify or query content.' While it doesn't mention when not to use or alternatives, the guidance is clear and directly addresses the agent's decision.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
contract_risk_scannerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| contractText | Yes | ||
| contractContext | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true (safe read) and openWorldHint=true. The description adds that inputs are validated server-side, which is useful but does not significantly expand behavioral transparency beyond annotations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but includes jargon ('Gapup agent-payable C-suite expertise (RISK)') that may confuse. It front-loads the purpose but is not optimally concise or clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (nested parameters, no output schema) and low schema coverage, the description is incomplete. It does not specify the deliverable's structure, required context beyond the reference case, or limitations of the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (25%: only async has a description). The description merely says 'send the documented case fields' without explaining the parameters. It fails to compensate for the schema's lack of parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it scans contracts for risks and returns a structured deliverable. The name and reference case (Salesforce MSA) make the purpose understandable, though it lacks explicit differentiation from similar sibling tools like legal_clause_extractor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 implied use context (MSA review), but no when-not-to-use or alternative recommendations are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
corporate_registry_lookupARead-onlyIdempotentInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| country | No | ISO 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. | |
| identifier | No | Optional registry identifier for a fast direct lookup: SIREN (FR, 9 digits), Companies House number (GB, 8 chars), KvK number (NL, 8 digits), etc. | |
| company_name | Yes | Company name or trading name to look up (e.g. 'Sanofi', 'Tesco PLC', 'Notion Labs Inc') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| registry | Yes | |
| directors | Yes | |
| freshness | Yes | ISO timestamp |
| identifier | Yes | |
| legal_form | No | |
| legal_name | No | |
| company_name | Yes | |
| jurisdiction | Yes | |
| shareholders | Yes | |
| quality_score | Yes | 0-100 confidence score |
| share_capital | No | |
| filings_recent | Yes | |
| incorporation_date | No | |
| registered_address | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare read-only, idempotent, and non-destructive. The description adds valuable behavioral details: cascade source fallback, quality_score computation, and optional auth keys. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately long but well-organized: purpose, output, coverage, cascade mechanism, use cases, env vars. Each sentence adds value, though minor trimming could improve conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 rich annotations, the description covers all essential aspects: input semantics, behavior, coverage, use cases, and optional auth. It is fully self-contained for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all parameters with descriptions (100% coverage). The description enhances this with concrete examples (SIREN, Companies House number, KvK) and explains fallback logic for country inference, adding meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool resolves legal information from national corporate registries and lists specific output fields. It distinguishes itself from siblings like kyc_screener by focusing on registry data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (due-diligence, KYC, supplier verification, M&A) and lists optional API keys. Does not provide direct comparisons to alternatives but the use cases are clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
court_filings_multiARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_to | No | ISO date YYYY-MM-DD — latest filing or decision date to include | |
| date_from | No | ISO date YYYY-MM-DD — earliest filing or decision date to include | |
| party_name | Yes | Name of the company or individual to search (e.g. "Apple Inc", "TotalEnergies", "Volkswagen AG") | |
| jurisdiction | No | Jurisdictions to search. Defaults to all ["US","UK","EU","FR","DE"]. |
Output Schema
| Name | Required | Description |
|---|---|---|
| cases | Yes | |
| status | Yes | |
| signals | Yes | |
| sources | Yes | |
| party_name | Yes | |
| quality_score | Yes | |
| by_jurisdiction | Yes | |
| jurisdictions_searched | Yes |
Tool Definition Quality
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: SLA (≤25s p95), parallel fetching with per-source budget, quality scoring (20 pts per jurisdiction, +10 for signals, +5-10 for multiple sources), cross-case pattern recognition producing severity-ranked signals (P0-P2), and optional env var for 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but well-structured: starts with purpose, then lists jurisdictions, output details, use cases, SLA, and quality scoring. It front-loads the most important information (what it does and key features). Some details like quality scoring could be considered secondary, but overall it's efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers input params, output format (structured case records with classification, status, parties, URLs, snippets), quality scoring, SLA, use cases, auth (keyless), and rate limit enhancement options. Even though we don't see the output schema, the description sufficiently explains what the tool returns. Complete for an AI agent to understand usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions for each parameter (party_name with maxLength/minLength/example, date_from/to as ISO dates, jurisdiction defaults, async behavior). The overall description adds context about date range meaning and jurisdiction default. Baseline is 3 due to high coverage, and the description adds enough extra value to warrant a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Aggregate court filings, judgments and litigation records for a company or individual across five major legal jurisdictions', specifying a specific verb and resource, and lists jurisdictions. It distinguishes itself from siblings by its multi-jurisdiction scope and specific use cases.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit use cases: 'Use when: due diligence on a counterparty, vendor risk assessment, competitive intelligence, regulatory exposure mapping.' Also mentions that all sources are public and keyless. However, it does not explicitly state when not to use or compare with alternative tools among the many siblings.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Payload 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}. | |
| mode | Yes | Action to perform in the CRM | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| provider | Yes | CRM provider to target | |
| credentials | No | Auth credentials. HubSpot: access_token. Salesforce: access_token + base_url. Pipedrive: api_key. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | No | |
| mode | Yes | |
| status | Yes | |
| signals | Yes | |
| sources | Yes | |
| success | Yes | |
| provider | Yes | |
| data_synced | No | |
| resource_id | No | |
| quality_score | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral traits: returns resource_id, direct CRM URL, signals, and quality_score. It details authentication requirements per provider and explains the fallback to mock results when credentials are missing. Annotations (readOnlyHint: false, openWorldHint: true) are consistent with the described behavior, and no contradictions exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is fairly concise and well-structured, with the four modes clearly listed at the beginning. However, it is somewhat lengthy and could be trimmed slightly without losing clarity. The front-loading of the main functionality is effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, nested objects, 4 modes, multiple providers, and an output schema), the description is highly complete. It covers all modes, authentication requirements, parameter structures, and fallback behavior. The presence of an output schema reduces the need to explain return values, but the description still adds valuable context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds significant meaning beyond the schema by detailing the expected data payload for each mode and the credential requirements per provider. Although schema coverage is 100%, the description provides essential context for constructing correct parameters, such as the fields for push_lead and log_activity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: pushing, updating, searching, and logging activities in HubSpot, Salesforce, or Pipedrive. The four modes are explicitly listed and explained, distinguishing it from any sibling tools (none of which are CRM connectors).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 each mode and explains the behavior when credentials are absent (returns mock result with warning). It also mentions async usage. However, it does not explicitly state when not to use this tool or suggest alternative tools, which would improve the score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cross_sell_recoCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| account | Yes | ||
| company | Yes | ||
| portfolio | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the read-only nature is clear. The description adds that inputs are validated server-side and that it returns a structured, audited deliverable, but does not disclose any additional behavioral traits beyond what annotations already cover.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that includes some jargon and a reference case example. While not overly long, it lacks clear structure and could be more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the nested input objects and no output schema, the description does not fully explain what the deliverable contains or how to interpret the result. The reference case is illustrative but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 25% schema description coverage, the description should compensate but does not mention any parameters explicitly. The phrase 'send the documented case fields' is too vague to add meaningful context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides cross-sell recommendations and returns a structured deliverable. The verb 'Recommandations cross-sell' aligns with the tool name. However, it does not explicitly distinguish from closely related siblings like 'upsell_hunter'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, nor any context for when it is appropriate. It only describes the tool's function.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crypto_wallet_intelARead-onlyInspect
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
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analysis 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. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| chain | No | Chain to analyze. Default "ethereum". Use "all" to scan all 6 chains (slower, ~30s). | |
| address | Yes | EVM-compatible wallet address (0x... 40 hex chars). Works on all supported chains. | |
| period_days | No | Lookback window in days for token_flows, pnl_estimate, counterparties, defi_positions. Default 30. | |
| min_value_usd | No | Minimum USD value filter for token_flows and counterparties. Default $100. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| address | Yes | |
| signals | Yes | |
| sources | Yes | |
| token_flows | No | |
| pnl_estimate | No | |
| quality_score | Yes | |
| counterparties | No | |
| defi_positions | No | |
| wallet_profile | No | |
| chains_analyzed | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint: true and openWorldHint: true. The description adds significant behavioral context: lists all data sources (Etherscan family, DefiLlama, public RPC, CoinGecko), cache TTL (5 min), source budget (8s), and signal detection levels (P0/P1/P2). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but well-structured with bullet points and clear sections. It efficiently conveys complex information without redundancy. Minor improvement could be trimming some verbose explanations, but overall it earns its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 5 modes, multiple sources), the description is exceptionally complete. It covers input constraints, source reliability, performance characteristics, and signal classification. With an output schema present, return value documentation is not required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with meaningful descriptions. The description adds extra context for each parameter, such as the async parameter usage for slow queries and the default values for period_days and min_value_usd. It also clarifies the chain parameter options and address regex pattern.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool provides multi-chain on-chain analytics for crypto trading agents, analysts, and compliance teams. It lists five distinct modes with specific purposes (wallet_profile, token_flows, pnl_estimate, counterparties, defi_positions), which distinguishes it from sibling tools that 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly specifies supported chains (EVM-compatible) and provides environmental details (API keys, sources). It does not explicitly state when not to use or name alternative sibling tools, but the domain-specificity and mode listing give clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
customer_marketingCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| goals | Yes | ||
| company | Yes | ||
| product | Yes | ||
| customers | Yes | ||
| targetUseCases | No | ||
| contentBudgetEur | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint and openWorldHint. The description adds that inputs are validated server-side and returns a deliverable, but does not elaborate on side effects or cost implications beyond 'agent-payable'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief but includes a mix of languages and unclear phrasing ('Gapup agent-payable C-suite expertise (CMO)'). It front-loads the purpose but wastes some space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 parameters, nested objects, no output schema), the description is insufficient. It does not explain the relationship between inputs and the deliverable, usage limitations, or how to interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 14% schema description coverage, the description adds little parameter meaning. It says 'send the documented case fields' but does not explain the goals array or other nested objects beyond what's in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it's about 'Marketing clients & ambassadeurs' and returns a structured deliverable, citing a reference case. However, it's vague on the exact transformation, and sibling differentiation is lacking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 vs siblings or when not to. The description mentions 'agent-payable' but does not clarify context or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
customer_voice_synthCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| dataSources | Yes | ||
| targetSegments | Yes | ||
| repositioningFocus | No |
Tool Definition Quality
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 returns a structured deliverable, which is consistent and adds minor context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but mixes languages (French/English) and includes a specific reference case. It could be more structured and focused.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 incomplete. It does not clarify output format or the role of all parameters like 'repositioningFocus'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 20%, but the description does not explain parameters beyond listing required fields. The reference case (Alan) gives an implicit example but does not add explicit meaning to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool produces a 'synthèse voix client' (customer voice synthesis) and returns a structured, audited deliverable for C-suite/CMO. The purpose is clear but does not distinguish from sibling 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.
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 target audience (CMO) is mentioned, but no exclusions or prerequisites are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cve_security_lookupARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Override auto-detection: "lookup" for exact CVE ID, "search" for product/vendor keyword. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | CVE 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_results | No | Maximum number of vulnerabilities to return (default 20, max 50). | |
| severity_min | No | Minimum CVSS v3 severity to include in results (default: no filter). | |
| published_after | No | ISO date YYYY-MM-DD — only include CVEs published after this date. Defaults to 365 days ago for search mode. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| query | Yes | |
| status | Yes | |
| signals | Yes | |
| sources | Yes | |
| quality_score | Yes | |
| vulnerabilities | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, openWorldHint, destructiveHint) match the read-only lookup behavior. The description adds significant context: caching (TTL 6h), rate limits with env vars, async mode, SLA, and the three-tier alerting system. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the core purpose, then covers modes, sources, outputs, env vars, cache, SLA, and regulations. Every sentence adds value without redundancy or unnecessary length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multi-source, multi-mode, alerting), the description is comprehensive: it covers input parameters, output structure (P0/P1/P2), caching, rate limits, and even regulatory relevance. Output schema exists but is not provided, so no need to describe returns.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 beyond the schema: explains auto-detection of mode from query format, describes the async parameter behavior, and clarifies severity_min filtering. This elevates the score to 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it looks up CVE vulnerability data and supports two modes: exact CVE ID lookup and keyword search by product/vendor. It is distinct from sibling tools by targeting security teams and referencing authoritative sources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use each mode (exact ID vs keyword) and mentions optional env vars for rate limits, cache TTL, and SLA. However, it does not explicitly state when not to use the tool or suggest direct alternatives among the many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cyber_risk_auditorARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| techStack | Yes | ||
| currentPosture | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and openWorldHint. The description adds context by stating it returns a 'structured, audited deliverable' and that inputs are validated server-side. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (4 sentences) and includes key elements, but the mixed use of French and English and the placement of the reference case could be better organized for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the nested input schema and lack of output schema, the description is too brief. It lacks details on the output format, how to use the 'focus' parameter, and examples beyond the single reference case.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the meaning or usage of individual parameters. The vague instruction 'send the documented case fields' fails to compensate for missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs a cyber risk audit and returns a structured deliverable. The reference case (Qonto) provides a concrete example, distinguishing it from sibling tools like audit_pre_flight or 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for C-suite cyber risk assessment ('agent-payable C-suite expertise') but does not explicitly state when to use this tool versus alternatives, nor does it provide conditions for not using it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deal_coachCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| deal | Yes | ||
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| knownContext | Yes | ||
| buyingCommittee | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=true, which are consistent with an analysis tool. The description adds that inputs are validated server-side but does not discuss any side effects or async behavior for the async parameter, which is documented in the schema, not the description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but contains a mix of languages and a reference case that may not be universally understood. It is not overly verbose, but the structure could be improved for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, nested objects, no output schema), the description is insufficient. It does not explain the return value format or how the tool fits with sibling tools like meddic_scoring. The agent would lack critical information to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 description vaguely references 'documented case fields' but does not explain the purpose or constraints of the deal, buyingCommittee, knownContext, or focus parameters. This leaves the agent without sufficient context for correct parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool coaches deals using MEDDIC methodology and returns a structured deliverable. It mentions specific techniques like escalation plays and next actions, making the purpose reasonably clear. However, the exact output format is vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like meddic_scoring or deal_structurer. The description implies it's for enterprise deals but lacks explicit when-to-use or 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.
deal_structurerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| deal | Yes | ||
| async | No | If true, returns a job_id 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 | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and openWorldHint. The description adds that it returns an 'audited deliverable' and that inputs are validated, which is consistent but does not significantly extend 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but includes jargon ('Gapup agent-payable C-suite expertise (CSO)') and a lengthy reference case that may not be universally understood. It could be more streamlined for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nested objects and no output schema, the description lacks critical details about the deliverable's structure, scoring, or how to use the result. The reference case hints at output but is insufficient for full understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (33%), with only the 'async' parameter described. The description does not explain the content or constraints of the 'deal' or 'company' objects, leaving the agent to guess required fields beyond the schema's type definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it performs 'Structuration de deal' and returns a structured, audited deliverable, which gives a clear verb+resource purpose. However, it does not explicitly differentiate from sibling tools like deal_coach or re_deal_screener, relying on jargon that may be ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 inputs are validated server-side and gives a reference case, but lacks context on prerequisites, scope, 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.
dependency_vulnerability_scanARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Manifest 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. | |
| async | No | If true, returns a job_id 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_min | No | Minimum severity to include in results (default: "medium"). | |
| manifest_content | Yes | Raw text content of the manifest file to scan (e.g. full contents of package.json, requirements.txt, etc.). | |
| include_transitive | No | Include transitive/indirect dependencies in results (default: true). |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| sources | Yes | |
| summary | Yes | |
| ecosystem | Yes | |
| quality_score | Yes | |
| recommendations | Yes | |
| vulnerabilities | Yes | |
| dependencies_parsed | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false. The description adds significant detail: data sources (OSV.dev, NVD, CISA KEV), cache TTL, concurrency, SLA, and return fields. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is detailed and well-structured, front-loading the main action. Every sentence adds value, though it could be slightly trimmed for brevity without losing key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 covers what the tool returns (per-vuln IDs, severity, CVSS, fixed version, upgrade recommendations). It also includes performance and compliance context, making it 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter is described. The description adds tool-level context but no additional per-parameter details beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it's an SCA scan for vulnerabilities in dependency manifests and lists supported formats. However, it does not explicitly differentiate from sibling tools like cve_security_lookup or oss_dependency_velocity_tracker, 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage by describing what it does and mentioning compliance relevance (NIS2, DORA, SOC 2), but lacks explicit guidance on when to use this tool versus 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.
discovery_prepCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| contact | Yes | ||
| ourOffer | Yes | ||
| prospect | Yes | ||
| meetingGoal | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint. Description adds that inputs are validated server-side and returns a deliverable, which aligns with annotations but does not disclose additional behavioral traits like error handling or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with a reference case, which adds length without clarity. It could be more concise but is not overly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complex input schema with nested objects and no output schema, the description lacks details on return format, error conditions, or usage scenarios. Incomplete for agent guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 20% schema description coverage, the description should elaborate on parameters. It merely references 'documented case fields' without explaining each parameter's meaning or usage, providing minimal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states 'Préparation discovery' but does not specify a clear action verb or resource. It mentions returning a 'structured, audited deliverable' and gives a reference case, but the core purpose is vague and not differentiated from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 vs alternatives. The description only provides input instructions and a reference case, which does not help the agent decide context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
diversity_inclusion_metricsCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| ambitions | Yes | ||
| currentState | Yes | ||
| regulatoryContext | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true and openWorldHint=true, so the description does not need to repeat that. It adds that inputs are validated server-side and the output is an 'audited deliverable', but fails to mention that the tool supports an async mode via the 'async' parameter, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very brief, consisting of two short sentences plus a reference. It is concise without wasted words, but the brevity sacrifices crucial guidance. It is front-loaded with the tool's purpose and output type.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, optional async, no output schema), the description is severely incomplete. It does not explain how to use the async parameter, what the output structure is, or how to fill the nested objects like company and currentState. The reference to a demo case is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 17% schema description coverage and no parameter details in the description, the agent is left to guess the meaning of fields like 'focus', 'regulatoryContext', and nested objects. The vague phrase 'send the documented case fields' does not compensate for the lack of parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states that the tool returns a 'structured, audited deliverable' for diversity & inclusion metrics. This is clear about the resource and output nature, but lacks a precise action verb like 'generate' or 'compute'. It distinguishes from siblings via the specific D&I domain, though not explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only says to 'send the documented case fields' but does not offer context about prerequisites, limitations, or comparison to similar tools in the extensive sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domain_tech_fingerprintCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| depth | Yes | standard | |
| focus | Yes | tech-buying | |
| target_domain | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint. The description adds context about the output being a structured deliverable and mentions async execution, but does not contradict annotations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose, contains promotional language ('Gapup agent-payable C-suite expertise (CMO)'), and is not well-structured. It mixes questions, a reference case, and parameter info without clear organization.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, and the description's explanation of the return value ('structured, audited deliverable') is vague. It lacks details on output format, interpretation, or potential errors, making it incomplete for a tool with 4 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25%, with only the async parameter described. The tool description does not compensate; it does not explain the meaning or usage of depth, focus, or target_domain beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 the tech stack of a domain and answering multiple specific questions. It distinguishes itself from siblings by focusing on tech fingerprinting, but could be more concise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use cases through the questions it answers, but does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention 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.
dora_metrics_deep_diveARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| repo | Yes | GitHub repository in format 'owner/repo' | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| since | No | Start date for analysis (ISO 8601) | |
| until | No | End date for analysis (ISO 8601) | |
| branch | No | Branch name to analyze (default: main) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| metrics | No | |
| sources | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds that it outputs structured metrics with trend analysis and code review insights, which gives some behavioral context but does not detail rate limits, authentication, or what happens on errors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with clear, front-loaded information. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (DORA metrics), schema coverage 100%, output schema exists, and annotations are rich. The description covers purpose, inputs, and output format adequately. It could mention the async parameter behavior but that is covered in schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. The description summarizes parameters (GitHub repo, optional time ranges) but does not add significant meaning beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it analyzes DORA metrics with deep correlation to code review patterns. It distinguishes itself from siblings like 'change_failure_root_cause_classifier' and 'code_review_depth_optimizer' by focusing on correlation with code review patterns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states it is designed for CTOs to identify bottlenecks, providing clear context for use. However, it does not explicitly state when not to use or list alternatives.
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_tesBRead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| entityType | Yes | ||
| impactRadius | Yes | ||
| ictServiceType | Yes | ||
| existingMitigations | No | ||
| failureDurationHours | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| warnings | No | |
| regulatoryGaps | Yes | |
| resilienceScore | Yes | |
| simulationTimestamp | No | |
| recommendedMitigations | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description does not need to reiterate that. However, it adds context about outputs (resilience scores, regulatory gaps, recommendations) and references. It does not disclose potential side effects, rate limits, or data handling 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the main purpose. It is efficient and avoids unnecessary details, though it could be slightly more structured for quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 exists), the description covers inputs, outputs, and regulatory references. However, it omits explanation of the 'async' parameter and how to use it, which is a notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 17% schema description coverage (only 'async' parameter documented), the description partially compensates by listing example parameter categories (failure scenario parameters and entity profile), but it does not detail all 6 parameters, especially 'existingMitigations' and 'async', nor does it explain constraints or formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it assesses DORA operational resilience by simulating ICT failure scenarios for financial entities. It specifies the target users (legal/compliance teams) and the regulatory framework (DORA Article 25), but does not explicitly differentiate from the sibling tool '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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for evaluating ICT risk management under DORA, but provides no guidance on when to use this tool versus alternatives, nor does it specify prerequisites or scenarios where it should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpdp_consent_artifact_generatorARead-onlyIdempotentInspect
Generates structured consent artifacts compliant with India's Digital Personal Data Protection Act (DPDP). Designed for legal teams to verify or create consent records with timestamped logs, purpose limitation, and data subject rights. Accepts data subject details, processing purpose, and legal basis as inputs. Returns a signed artifact with audit trail and validation status.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| legalBasis | Yes | Legal basis for processing under DPDP | |
| dataSubjectId | Yes | Unique identifier for the data subject | |
| dataCategories | No | Categories of personal data being processed | |
| processingPurpose | Yes | Specific purpose for data processing | |
| retentionPeriodDays | No | Retention period in days |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| artifact | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, openWorldHint, and idempotentHint. The description adds that it returns a signed artifact with audit trail, but does not clarify the behavioral implications of 'create' in light of readOnlyHint. It adds some value but does not fully explain traits like state modification or side effects beyond what annotations already convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (three sentences) and front-loads the main purpose. Every sentence contributes meaningful information. Slightly more structured formatting could improve scanability, but overall very efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, 3 required, and the existence of an output schema (not shown), the description provides sufficient context: domain, user, inputs, and outputs. It explains the artifact's components (timestamped logs, purpose limitation, data subject rights) and mentions validation status. 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already describes all parameters. The description briefly mentions inputs (data subject details, processing purpose, legal basis) but does not add new semantics or constraints 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: generating structured consent artifacts for India's DPDP Act. It specifies the regulatory framework, target users (legal teams), and output characteristics (signed artifact with audit trail). The DPDP-specific language effectively distinguishes it from sibling tools like lgpd_data_subject_rights_automator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: designed for legal teams to verify or create consent records. However, it does not explicitly state when to avoid this tool or mention alternatives (e.g., for non-Indian regulations). The context is sufficient but lacks exclusions.
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_mapperARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| bomItems | Yes | ||
| includeSources | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| results | No | |
| sources | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true. The description adds context about data sources and output, but omits the async parameter behavior for large BOMs, which is relevant for tool invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is three sentences, front-loading persona and purpose, followed by method and output. No unnecessary details, every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (nested array, optional boolean params, async support), the description covers the main purpose but misses nested bomItems structure details and async usage guidance. Output schema exists so return values are not needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (33%). The description explains bomItems as a list of parts with codes/descriptions, adding value beyond the schema. However, it does not cover includeSources or async (async described in schema), missing full compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: assessing export compliance risks for components using bills of materials against EU dual-use and ICAO/IMO data. The verb 'assess' and specific regulatory lists differentiate it from general compliance tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by a COO for BOM analysis against specific lists, but lacks explicit guidance on when to use this tool versus alternatives (e.g., dual_use_tech_diversion_monitor) and does not mention exclusions.
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_monitorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| route | No | ||
| companyId | No | Company registration number or tax identifier | |
| shipmentId | No | Unique shipment identifier (e.g., bill of lading number) | |
| techCategory | No | Dual-use technology category |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| matches | No | |
| sources | No | |
| warnings | No | |
| diversionRisk | No | Calculated diversion risk score (0-100) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover readOnly, openWorld, idempotent. Description adds async behavior, timeout avoidance, and output structure (source provenance). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, each sentence adds value. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, data sources, inputs, outputs, async requirement. Minor gap: does not state that at least one input parameter is logically required despite schema making none required. Output schema exists, so return format is covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has high coverage (80% according to context, though actual appears higher). Description summarizes input types but adds little beyond schema descriptions. Baseline 3 due to schema richness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it detects unauthorized diversion of dual-use technologies for COO persona, specifies data sources (shipment manifests, sanctions lists, transport data), inputs, outputs, and async requirement. Differentiates from siblings like dual_use_export_risk_mapper.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage context but no explicit guidance on when to use vs alternatives or exclusions. Mentions async requirement but does not compare to similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
earnings_reviewerBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| quarter | Yes | ||
| analystFocus | No | ||
| secFilingContext | No | ||
| transcriptExcerpt | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true and openWorldHint=true, indicating no destructive effects and schema flexibility. The description adds that inputs are validated server-side and the tool returns a deliverable. This does not contradict any annotations and provides additional context about the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (three sentences) and front-loads the purpose. However, the phrasing 'Gapup agent-payable C-suite expertise (FUNDRAISING)' is jargon-heavy and may confuse agents. It earns its place but could be clearer.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the tool's complexity (6 parameters, nested objects, no output schema), the description does not explain what the deliverable looks like, how to use the async parameter, or provide detailed parameter semantics. Given the low schema description coverage, this 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.
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 has a description. The description only says 'send the documented case fields', offering no explanation for the required parameters (company, quarter, transcriptExcerpt) or the optional ones (analystFocus, secFilingContext). This leaves agents without guidance on how to correctly populate nested objects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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' for earnings review, with a focus on fundraising. It provides a reference case (Salesforce Q3 FY2026) that illustrates the inputs and output. However, it does not explicitly distinguish this tool from the sibling 'earnings_transcript_signals', which may have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for fundraising contexts ('agent-payable C-suite expertise (FUNDRAISING)'), giving a use case hint. However, it does not specify when to use this tool versus alternatives, nor does it provide any when-not conditions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
earnings_transcript_signalsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language hint for the transcript. Affects mock transcript language when fetch fails. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| quarter | No | Fiscal quarter in format Q1-2026. Defaults to the most recent past quarter. | |
| transcript_text | No | If provided, skips all external fetches and analyses this text directly. Minimum 100 characters. | |
| company_or_ticker | Yes | Company 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. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, openWorldHint=true, and destructiveHint=false. The description adds significant detail: automatic fetching from specific sources (SEC EDGAR, Yahoo Finance, Motley Fool), behavior on failure (returns failed status with warning, never fabricates data), support for multilingual transcripts, European ticker mapping, and acceptable transcript_text override. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately long but well-structured with a clear introductory sentence, a bullet list of outputs, and concise sentences for additional behavior. Every sentence adds meaningful information; no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite lacking an output schema, the description thoroughly describes the output structure (signals with priority levels, KPIs with YoY/QoQ%, guidance items, Q&A topics, tone). It also covers error states, multilingual support, and ticker mapping. The tool's complexity is fully addressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description enriches every parameter: lang affects mock transcript language, async returns job_id, quarter defaults, transcript_text skips fetches with min length, company_or_ticker includes examples and ADR mapping. This goes well beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is an 'Earnings call transcript signal extractor' and lists specific outputs (signals, KPIs, guidance, Q&A topics, tone). It also specifies automatic source fetching and handling of missing transcripts, distinguishing it from any similar sibling tools like earnings_reviewer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies target users (equity research analysts, catalyst-driven hedge funds, BD teams) and outlines core functionality. However, it does not explicitly state when to prefer this tool over alternatives (e.g., earnings_reviewer) or provide 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.
economic_indicatorARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| country | Yes | Country code, ISO-2 or ISO-3 (e.g. FR, USA) | |
| indicator | Yes | Macroeconomic indicator name |
Output Schema
| Name | Required | Description |
|---|---|---|
| year | Yes | |
| value | Yes | |
| source | Yes | |
| country | Yes | |
| indicator | Yes | |
| source_url | No | |
| indicator_code | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds valuable context: source is World Bank, returns 'the exact figure,' and implies authoritative data. No contradictions. The description enhances understanding of behavior 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences plus a list, front-loaded with the main purpose. Every sentence is useful and concise, with no extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 are covered. Parameters are fully described in schema. The description adds source and usage context. For a simple lookup tool, it is sufficiently complete, though data freshness is not mentioned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 repeats the indicator names and country code format already in the schema, adding minimal new meaning. The 'async' parameter is not mentioned, but it is covered in schema. Overall, the description adds marginal value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 macroeconomic indicator for a country, lists specific indicators, and mentions the source (World Bank). It distinguishes itself from siblings like fx_rate or interest_rate by focusing on broad economic figures for market-sizing, finance, or strategy workflows.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'When to use: an agent's analysis needs an authoritative country-level economic figure,' providing clear context. However, it does not state when not to use it or mention alternative tools for related but different data (e.g., exchange rates).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
email_domain_health_checkARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| No | Full email address for additional checks: format validity, role-based detection (e.g. "ceo@stripe.com"). | ||
| checks | No | Subset 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). | |
| domain | Yes | Domain to check (e.g. "stripe.com" or "@stripe.com"). If an email address is provided here, the domain is extracted automatically. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mx | Yes | |
| spf | Yes | |
| tls | No | |
| dkim | Yes | |
| dmarc | Yes | |
| whois | No | |
| domain | Yes | |
| status | Yes | |
| sources | Yes | |
| blacklist | Yes | |
| email_valid | No | |
| quality_score | Yes | |
| reputation_score | Yes | |
| email_is_role_based | No | |
| deliverability_signals | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, consistent with the description. The description adds key behavioral traits: keyless operation, 1h cache TTL, 10s p95 SLA, and async mode via job_id polling. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph but well-structured and front-loaded with the primary purpose. It could be more concise by using bullet points, but it efficiently packs a lot of information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 but indicated), the description does not need to detail return values. It covers all crucial aspects: checks performed, usage notes, performance characteristics, and unique features (keyless). No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds significant value beyond schema: explains async behavior, email parameter for additional checks (role-based detection), checks parameter with default and usage for faster responses, and domain parameter auto-extraction from email addresses. This enriches each parameter's meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Comprehensive email domain health check' and enumerates specific checks (MX, SPF, DKIM, DMARC, blacklist, TLS, WHOIS). It clearly distinguishes itself from siblings by its specialized focus; no other sibling tool overlaps with this exact functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates the tool is for email domain health assessment, but does not explicitly state when NOT to use it or mention alternatives. However, the specificity of the checks and the context of deliverability make it implicitly clear. The async parameter hint suggests usage for slow operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enps_autoBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| context | Yes | ||
| toolStack | Yes | ||
| segmentation | Yes | ||
| presenterScript | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, which aligns with the description's 'returns a structured deliverable' (non-mutating). The description adds limited behavioral context (server-side validation) beyond annotations. Score 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, including a reference case, and is relatively concise. It could be more structured (e.g., bullet points) but wastes few words. Score 4.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has complex schema (7 parameters, nested objects) and no output schema, yet the description is minimal. It does not explain the deliverable contents, async behavior beyond the async parameter description, or how results are retrieved. The reference case is helpful but not comprehensive. Score 2.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not compensate; it only mentions 'send the documented case fields' without detailing parameters. This is insufficient for a tool with 7 parameters including nested objects. Score 2.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 eNPS deliverable, with a reference case. It is specific enough but does not differentiate from sibling tools such as 'comp_benchmark_geo_delta' or 'talent_intelligence' that might also handle HR metrics. Hence a score of 4.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a reference case (BlaBlaCar) and mentions inputs are validated server-side, but lacks explicit guidance on when to use or not use this tool compared to alternatives. With many siblings, this is a gap, scoring 3.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esg_audit_multiARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analysis mode. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Company name, ticker, ISIN or LEI (e.g. "Microsoft", "Sanofi", "Volkswagen"). | |
| pillar | No | ESG pillar filter (optional, default: all). | |
| framework | No | ESG framework filter (optional, default: all). |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| signals | Yes | |
| sources | Yes | |
| emissions | No | |
| company_score | No | |
| controversies | No | |
| quality_score | Yes | |
| esrs_readiness | No | |
| sfdr_classification | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations mark the tool as read-only and non-destructive. The description adds context: it aggregates live data from CDP, SBTi, etc., caches results for 24h, and describes signal levels (P0/P1/P2). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with bullet points and front-loaded purpose. However, it is somewhat verbose with redundant details (e.g., signals listed twice). Each section earns its place, but trimming could improve conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers modes, data sources, signals, and cache, but omits explanation of the 'async' parameter (though schema covers it). No mention of pagination or rate limits. Given complexity with 5 parameters and an output schema, some gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds value by explaining each mode's output and the meaning of signals, which enhances the understanding of the 'mode' parameter beyond its schema description ('Analysis mode.').
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'Multi-mode ESG intelligence' with five explicit modes (company_score, controversy_check, emissions, esrs_readiness, sfdr_classification). Each mode is briefly explained with outputs, making it specific and distinct from sibling tools like 'supplier_esg_audit' or 'carbon_footprint_calculator'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by listing modes for different ESG needs (scores, controversies, emissions, etc.) but does not explicitly tell when to use this tool versus alternatives. No when-not or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esrs_narrative_builderCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| scope | Yes | ||
| company | Yes | ||
| context | Yes | ||
| presenterScript | No |
Tool Definition Quality
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 returns a structured deliverable, providing some behavioral context beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise with four sentences and front-loads the core purpose, though the reference case adds length without being essential.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, async parameter), the description omits key details like return structure, async handling, and parameter semantics, leaving significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%. The description does not explain the parameters (company, scope, context) beyond 'send the documented case fields', failing to compensate for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it builds ESRS/CSRD narrative reports and returns a structured deliverable, with a reference case. However, it does not differentiate from sibling tools like sustainability_report or 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a reference case and mentions validated inputs, but offers no guidance on when to use this tool versus alternatives, nor 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.
event_marketingCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| teamSize | Yes | ||
| geography | Yes | ||
| objectives | Yes | ||
| currentEvents | Yes | ||
| targetAudience | Yes | ||
| annualBudgetEur | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds minimal behavioral context beyond annotations. readOnlyHint and openWorldHint are provided but not explained; description does not address permissions, rate limits, or side effects. 'Audited deliverable' suggests reliability but no further detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is two sentences plus a case study, which adds length without aiding function clarity. The first sentence is a tagline rather than a clear verb+resource. Could be more concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters, 7 required, nested objects, and no output schema, the description is insufficient. It does not explain the return structure or how parameters relate. The case study offers some context but not enough for complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 13% schema description coverage, the description should compensate but does not. It mentions 'send the documented case fields' without elaborating on parameters. The schema has many required fields, but description adds no guidance on values or format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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' related to event marketing, but does not specify the exact function (e.g., planning, analysis) or differentiate from siblings like customer_marketing. The phrase 'Gapup agent-payable C-suite expertise (CMO)' is vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 case study implies event marketing ROI analysis, but no criteria or exclusions are given. Sibling tools cover many marketing functions, but description lacks context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
executive_comp_peer_benchmarkARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| peerGroup | No | ||
| fiscalYear | No | ||
| companyTicker | Yes | ||
| executiveName | Yes | ||
| executiveTitle | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| compensation | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds context about data sources and confidence scores, but does not disclose behavioral traits beyond annotations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise paragraph of about 60 words, front-loaded with the role and action. Every sentence adds value with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (6 params, nested object, output schema), the description provides a good high-level understanding. It covers main inputs, outputs, and data sources. However, it omits details on the async parameter and the peerGroup structure, which are explained only in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%. The description adds meaning for required parameters (executiveName, executiveTitle, companyTicker) by explaining they are inputs, and mentions peer group criteria. However, optional parameters like async and fiscalYear are not addressed, leaving gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool benchmarks executive compensation against peers, specifying the user role (CHRO), data sources (SEC filings, Equilar, Bloomberg), inputs, and outputs. It distinguishes from sibling tools like comp_benchmark_geo_delta and comp_plan_architect by focusing on peer benchmarking for executives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for benchmarking executive compensation but does not explicitly state when to use it versus alternatives. No exclusions or conditions are provided, leaving the agent to infer context from the role and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
financial_model_3statementARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | build = full 3-statement model | scenario_analysis = base/bull/bear | sensitivity = 1 KPI × 1 input | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| assumptions | Yes | Financial assumptions for the model | |
| sensitivity_kpi | No | KPI to observe in sensitivity mode. | |
| sensitivity_input | No | Assumption param to vary in sensitivity mode. E.g. 'growth_rates_pct[0]' or 'cogs_pct_of_revenue'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| norms | Yes | |
| status | Yes | |
| sources | No | |
| warnings | Yes | |
| cash_flow | No | |
| scenarios | No | |
| sensitivity | No | |
| balance_sheet | No | |
| quality_score | Yes | |
| valuation_dcf | No | |
| income_statement | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, which the description supports by calling it 'pure-compute' with no external data needed. It discloses outputs (balance_check_ok, DCF values, coherence warnings) and mentions bilingual labels for PRC_GAAP. No contradictions. Could add more on async behavior (covered in schema) 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but well-structured, front-loading the primary function and then listing details. Every sentence adds value (modes, ICP, outputs). Could be slightly trimmed but overall effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (3-statement model, multiple modes, accounting standards, bilingual labels), the description covers key aspects: input assumptions, modes, ICP, outputs. Output schema exists so return values are not needed. Minor gap: no mention of async poll but schema covers it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter has a detailed explanation. The description adds a high-level summary of assumptions (revenue growth, COGS%, etc.) but does not provide additional meaning 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it builds a 3-statement financial model (Income Statement, Balance Sheet, Cash Flow) with DCF valuation. It distinguishes from siblings by specifying 'no external data needed' and 'pure-compute', and lists specific modes (build, scenario_analysis, sensitivity) and supported accounting standards (IFRS, US_GAAP, PRC_GAAP). This sets it apart from other financial tools like capital_strategy or working_capital.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Feed assumptions → receive a full 3-5 year projection' and explains the three modes and their purposes. It provides target ICP (VC due diligence, M&A analysts, CFO SMB, startup founders). It does not explicitly state when not to use it or name alternatives, but the mode descriptions and context against siblings imply appropriate use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fraud_detectorCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| analysisPeriodDays | Yes | ||
| transactionVolumes | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is clear. The description adds that it returns a structured, audited deliverable and validates inputs server-side, which is consistent and provides some behavioral context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose with marketing language ('Gapup agent-payable C-suite expertise (RISK)') and a reference case that adds little value for tool selection. It could be more concise and focused on essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complex nested input schema and lack of output schema, the description fails to explain the return format, authentication needs, or how the async parameter works. It only vaguely mentions a 'structured, audited deliverable', which is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20%, and the description provides no explanation of the parameters. It only mentions 'send the documented case fields' without detailing what fields are needed, leaving the agent to rely solely on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is a fraud detector and returns a structured deliverable, but does not clearly specify what type of fraud (e.g., financial, transactional) nor distinguish it from similar siblings like x402_payment_fraud_detector. The purpose is somewhat clear but lacks specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It only mentions that inputs are validated server-side, but does not provide context for selection or exclusion of other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_business_ideasARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | ||
| category | No | Optional category filter |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| ideas | Yes |
Tool Definition Quality
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 ideas are 'vetted' and 'automation-scored', and describes return fields. It does not contradict annotations and adds moderate value beyond them, but does not elaborate on data freshness or scope.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the core purpose, followed by usage guidance and input summary. No extraneous information. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 (stated in context) and annotations, the description adequately covers the tool's behavior for a simple read operation. It mentions key output fields (autonomy score, monetization model, MRR projections). However, it could include details about result ordering, pagination, or data freshness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% (async and category have descriptions; limit does not). The description mentions 'optional category and limit' but provides no additional meaning beyond the schema. It does not explain limit's range or category's possible values, nor how async affects behavior. The description adds minimal value over the parameter schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns vetted, automation-scored business ideas with specific attributes (autonomy score, monetization model, MRR projections). It also mentions the source (FTG idea bank). However, it does not explicitly differentiate from sibling tools like ftg_business_plan or ftg_opportunity_scout, though the verb 'return' and resource 'business ideas' distinguish it implicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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: when an agent or founder wants ranked, buildable business ideas. It also mentions optional inputs (category and limit). However, it lacks explicit instructions on when NOT to use it or alternatives (e.g., if a full business plan is needed, use ftg_business_plan).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_business_planARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_id | Yes | Opportunity id obtained from ftg_market_gap |
Output Schema
| Name | Required | Description |
|---|---|---|
| plans | No | |
| status | Yes | |
| message | No | |
| plan_count | No | |
| opportunity_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal read-only (readOnlyHint=true). Description adds caching detail (cache-first, returns stored or reports generation required), which is useful context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise, front-loaded sentences. No redundant information; each sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, input, and caching behavior. Output schema exists, so lack of output description is acceptable. Could mention async parameter briefly, but schema covers it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage for both parameters. Description only mentions opportunity_id, referencing its source, which adds minimal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool returns a business plan for a market-gap opportunity, listing key financial components (CAPEX, OPEX, ROI, etc.). Distinguishes from sibling tools by specifying input from ftg_market_gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 an opportunity_id from ftg_market_gap and needs the investable plan. Cache-first behavior also provides operational guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_country_regulationsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | ||
| country | Yes | Country ISO code or name | |
| category | No | Optional regulation category filter |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| regulations | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the description adds value by specifying the output structure. However, it does not disclose additional behavioral traits such as data freshness, potential incomplete results, or rate limits. The description 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences that are front-loaded with the tool's purpose, followed by usage guidance and input requirements. Every sentence adds value with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 does not need to detail return values. It covers purpose, usage, and input adequately. Could mention data source or potential variability, but given annotations and schema, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 75% (async, country, category have descriptions; limit does not). The description confirms that 'country' and 'category' are used for filtering, matching schema. It does not address 'limit' or 'async', missing an opportunity to explain 'limit' which lacks a schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Return import, trade and production regulations for a country' with specific output fields (category, title, summary, source), using a specific verb and resource. This distinguishes it from sibling ftg_* tools like ftg_country_study or ftg_market_gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'When to use this tool: an agent checks regulatory or compliance requirements before trading or producing in a market.' This provides clear context, though it does not explicitly mention when not to use or compare to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_country_studyARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| country | Yes | Country ISO code or name |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| parts | Yes | |
| country | Yes | |
| part_count | Yes |
Tool Definition Quality
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. Description adds 'multi-part structured analysis' but does not elaborate on any specific behavioral traits beyond annotations, providing minimal extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is three succinct sentences, front-loaded with the core purpose, and contains no unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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) and annotations, the description is adequate for an agent to understand the tool's purpose and usage. It could provide slightly more detail on the analysis structure, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema documents both parameters (country, async). Description only mentions 'Input: a country' and does not add meaning beyond the schema, e.g., format or options for async.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it returns the in-depth FTG country study, a multi-part structured analysis of trade and production landscape. This specific verb+resource combination distinguishes it from sibling FTG tools like ftg_market_gap or 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description explicitly states when to use: before sourcing, export, or investment decisions. However, it does not mention when not to use or suggest alternative tools among the many FTG siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_investor_directoryARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | ||
| country | No | Optional country ISO code or name |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| investors | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint and openWorldHint. Description adds return content specifics (VC, PE, impact funds with fields) and optional filters, complementing annotations without contradicting.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with key information, no fluff. Efficiently communicates purpose and usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, when-to-use, and input hints. Output schema exists, so no need to detail return format. Could mention async parameter but it's a common pattern.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is high (67% parameters documented), and description only mentions country and limit, not async. Does not add significant meaning beyond schema constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns investors from the FTG directory with specific fields (type, firm, website, etc.) and usage context (fundraising shortlist). However, it does not explicitly differentiate from sibling tools like investor_list or investor_shortlist.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly specifies when to use: 'an agent builds a fundraising shortlist.' Provides input hints (optional country and limit) but no explicit when-not-to-use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_market_gapARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum opportunities to return (default 20) | |
| country | Yes | Country ISO-2 code (e.g. 'SN', 'KE') or name (e.g. 'Senegal') |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| country | Yes | |
| opportunities | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the description's mention of returning data is consistent but adds no new behavioral insights. It describes the output fields but nothing beyond what annotations imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, each earning its place: purpose, output details, usage guidance, input format. Front-loaded and efficient, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity, high schema coverage, and existence of an output schema, the description adequately covers purpose, input, output, and usage. Could optionally mention async behavior, but not necessary for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds little extra meaning. It mentions the country input format but does not explain async or limit, which are already documented in the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns import/production market-gap opportunities for a country, specifying the data fields (gap value, volume, score, margin). It uses specific verbs and resources, and distinguishes from sibling ftg_ tools by focusing on market gaps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'When to use this tool' and lists scenarios (trade sourcing, import/export, local-production investment). It does not explicitly name alternatives or exclusions, but the usage context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_opportunity_scoutARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum countries to return (default 20) | |
| commodity | Yes | Commodity name (e.g. 'rice', 'soybean', 'poultry') |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| count | Yes | |
| commodity | Yes | |
| countries | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, indicating safe read operations. The description adds that the tool ranks countries but does not disclose data sources, update frequency, or behavior for unknown commodities. It provides adequate but not rich behavioral context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each serving a distinct purpose: stating the ranking criteria, clarifying the cross-country scope, and providing usage guidance. There is no wasted text; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, the description does not need to explain return values. It covers purpose, usage, and input adequately for a tool with readOnlyHint and openWorldHint. A minor gap is the lack of mention of data sources or computation details, but overall it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all three parameters (commodity, limit, async) are fully described in the input schema. The description mentions only 'commodity name', adding no new meaning beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it ranks countries for a given commodity based on market gap, opportunity score, and potential margin. It uses specific verbs ('rank', 'scouting') and explicitly distinguishes itself as cross-country, differentiating it from sibling tools like ftg_market_gap or ftg_country_study.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, providing clear context: when an agent needs to know where to sell, export, or set up local production for a commodity. It does not explicitly list when not to use or alternatives, but the context is sufficient for selection among many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_production_economicsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | ||
| country | No | Optional country ISO code or name | |
| commodity | Yes | Commodity name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| yields | Yes | |
| commodity | Yes | |
| cost_benchmarks | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and openWorldHint. The description adds specific outputs (benchmarks, yields) without contradicting annotations. It enhances transparency by detailing the nature of the read-only data, but does not cover all behavioral aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a usage note, front-loaded with the main action. No wasted words; every sentence contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has output schema, so description doesn't need to explain return structure. It covers the core outputs and input context. Missing details on async/limit are handled by schema. Overall sufficient for typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 75% with detailed parameter descriptions. The description highlights commodity and country but does not add significant meaning 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns production cost benchmarks and agronomic yields for a commodity. It uses specific terminology (CAPEX/OPEX, t/ha) and distinguishes from siblings like ftg_business_plan by focusing on economics of production.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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.' Input is specified as commodity and optional country. However, no exclusions or alternatives are mentioned, which is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_production_methodsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| commodity | Yes | Commodity slug or name (e.g. 'rice', 'tomato', 'cashew') |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| methods | Yes | |
| commodity | Yes | |
| method_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so description need not reiterate safety. The description adds value by detailing the output structure (description, steps, pros/cons, rank) and the canonical nature of methods, which helps the agent understand what to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences, each adding essential information. It is front-loaded with the main purpose, then details, then usage guidance. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 query, one required parameter, output schema present), the description covers the key aspects: what it returns, when to use it, and the input format. It is complete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description only restates 'Input: a commodity slug or name' which is already in the schema. It adds no new semantic depth beyond what the schema provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Return', the resource 'production methods', and includes specific details about what each method contains (description, ordered process steps, pros/cons, popularity rank). It distinguishes itself by noting methods are canonical per commodity, which differentiates it from other ftg tools like ftg_production_economics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use guidance: 'an agent evaluates HOW a commodity is produced or processed, compares techniques, or builds a production plan.' While it doesn't list when-not-to-use or alternatives, the context is clear and sufficient for an AI agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_seller_catalogARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | ||
| country | No | Optional seller country ISO code or name | |
| commodity | No | Optional commodity filter |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| sellers | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the description adds value by detailing what data is returned (commodity, capacity, certifications, markets). No contradictions. It does not mention rate limits or pagination, but overall transparent about the tool's read-only nature and open-world assumption.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences: purpose, usage, and inputs. It is front-loaded with the core functionality, and every sentence adds value. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, the description does not need to detail return values. It covers purpose, usage scenario, and inputs. A minor gap is the lack of guidance on the 'limit' parameter and pagination behavior, but overall it is sufficient for a read-only query tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75% (3 of 4 parameters have descriptions). The description adds that country and commodity are optional filters, aligning with the schema. However, the 'limit' parameter lacks both schema description and any mention in the description, leaving the agent without guidance on pagination.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool returns seller catalogues (exporters/producers) with specific fields like commodity, monthly capacity, certifications, and target export markets. It distinguishes from sibling FTG tools by focusing on seller data, but does not explicitly differentiate from ftg_sourcing_buyers or other similar tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to use: 'when an agent builds a supplier or sourcing shortlist.' This provides clear context. However, it does not mention when not to use or provide alternatives, which would be helpful given the number of sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftg_sourcing_buyersARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum buyers to return (default 20) | |
| country | Yes | Country ISO-2 code or name | |
| commodity | No | Optional commodity slug to filter buyers by |
Output Schema
| Name | Required | Description |
|---|---|---|
| buyers | Yes | |
| country | Yes | |
| commodity | No | |
| buyer_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint: true, openWorldHint: true) already indicate safe read behavior and dynamic data. The description adds that it returns verified buyers with specific fields but does not discuss edge cases, response format, or async behavior (covered by schema). It 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with a separate usage guideline and input note. It is front-loaded with the main output, no fluff, and efficiently communicates purpose and use case.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description covers the main purpose, use case, input, and key returned fields. It does not mention pagination or async behavior, but these are in the schema. Slight gap in explaining the openWorldHint implication.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter descriptions. The description reinforces country and commodity but does not add meaning beyond the schema for async or limit. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns 'verified local buyers in a country' with specific details like buyer type, city, website, etc. It distinguishes itself from sibling ftg_* tools (e.g., ftg_seller_catalog, ftg_investor_directory) by focusing on buyers for sourcing/export shortlisting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'When to use this tool: an agent builds a sourcing or export shortlist, or needs real B2B demand contacts.' It provides clear context but does not mention when not to use it or alternatives, though the sibling list implies differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
funding_hunterCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| project | Yes | ||
| financials | Yes | ||
| preferences | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true, so the description's mention of server-side validation adds some context but does not significantly extend behavioral understanding. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise with 4 sentences, but the reference case is overly specific and may not be helpful for general use. The structure is acceptable but the French phrasing could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is complex with nested objects and no output schema. The description fails to explain what the structured deliverable contains, how to handle validation errors, or any edge cases. Given the complexity, the description is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20%, leaving many nested properties (e.g., company.siret, financials.hasJEI) undocumented. The description does not explain the purpose or expected values of parameters beyond a vague instruction to 'send the documented case fields'. This fails to compensate for the schema's gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 that returns a structured deliverable, with a specific reference case. The French title 'Chasseur de financements' aligns with the English name, though the mix of languages may reduce clarity for non-French speakers. It distinguishes itself from sibling tools like 'capital_strategy' by focusing on actionable funding options.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided on when to use this tool versus alternatives. The description gives a reference case but does not explain prerequisites, contexts where the tool is most beneficial, or situations to avoid. Sibling tools are not compared.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fx_rateARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Quote currency, ISO-4217 (e.g. USD) | |
| date | No | Optional YYYY-MM-DD for a historical rate | |
| from | Yes | Base currency, ISO-4217 (e.g. EUR) | |
| async | No | If true, returns a job_id 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
| Name | Required | Description |
|---|---|---|
| to | Yes | |
| from | Yes | |
| rate | Yes | |
| as_of | Yes | |
| source | Yes | |
| source_url | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true and openWorldHint=true. The description adds value by specifying the data source (European Central Bank via Frankfurter), that it returns latest spot or historical rates by date, and input format. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the main action. It includes examples, use cases, and source, but is not overly verbose. Could be slightly more concise, but effective overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and presence of output schema, the description covers inputs, source, use cases, and historical functionality. It lacks mention of error handling or when to use the async parameter, but overall adequate for the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 4 parameters. The description reiterates 'from/to ISO-4217 currency codes, optional date (YYYY-MM-DD)' but adds little beyond the schema, e.g., not clarifying base/quote relationship beyond what schema already says. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get the current or historical foreign-exchange rate for any currency pair' with a specific verb and resource. It lists example pairs and covers all ISO-4217, making it distinct from siblings like interest_rate or supply_chain_fx_exposure_dashboard.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says 'Use when a workflow needs a precise live or past currency exchange rate, or to convert money between two currencies.' This provides clear context but doesn't compare directly with alternatives, though the purpose is well-defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
geographic_expansionCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| product | Yes | ||
| financials | No | ||
| constraints | No | ||
| targetMarkets | Yes | ||
| preferredEntryMode | No | ||
| expansionHorizonMonths | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=true, so the read-only behavior is known. The description adds no further behavioral details (e.g., authentication needs, rate limits, or what 'agent-payable' implies). No contradiction found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but includes a reference case that adds context. However, it front-loads jargon ('Gapup agent-payable C-suite expertise') that may not be immediately clear, and the structure could be more direct.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters, nested objects, no output schema, and only 13% schema coverage, the description is severely incomplete. It fails to explain input structure, output format, async behavior, or provide sufficient guidance for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 schema description). The description does not explain any parameter semantics; it vaguely references 'documented case fields' without identifying them, failing to compensate for low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 geographic expansion, targeting C-suite expertise. However, the verb 'Returns' is clear but the tool's specific function is vague, and it does not distinguish from siblings like 'market_entry_strategist' or 'abm_architect'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 specify context or exclusions, relying on implication from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
geo_logistics_intelARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | routing only: destination address or 'lat,lon' | |
| from | No | routing only: origin address or 'lat,lon' | |
| mode | Yes | 'geocode_batch': address -> lat/lon. 'routing': route + ETA. 'port_congestion': UN/LOCODE port state. 'ship_tracking': vessel by MMSI | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Primary input: address for geocode/routing, UN/LOCODE (e.g. NLRTM) for port_congestion, 9-digit MMSI for ship_tracking | |
| addresses | No | geocode_batch only: up to 50 addresses (overrides query if provided) | |
| mode_transport | No | routing only: transport mode. Default: driving |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| routing | No | |
| sources | Yes | |
| geocode_batch | No | |
| quality_score | Yes | |
| ship_tracking | No | |
| port_congestion | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and nondestructive hints. The description adds behavioral details beyond annotations: rate limit of 1 req/s, SLA of ≤25s p95, cache durations (24h geocoding, 1h routing, 30min port, 5min ship), and fallback mechanisms (Open-Meteo, best-effort scrape). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear enumeration of modes and additional details (SLA, cache, quality). It is slightly dense but each sentence contributes necessary information. Concise for the breadth of functionality covered.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 all critical aspects: modes, inputs, limitations (rate limit, cache), fallback behavior, API key requirements, and performance metrics. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining the role of each mode in relation to parameters (e.g., 'address for geocode/routing, UN/LOCODE for port_congestion, 9-digit MMSI for ship_tracking'), and clarifies the 'addresses' parameter for batch geocoding. This goes beyond the schema's basic descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as geospatial logistics intelligence with four distinct modes (geocode_batch, routing, port_congestion, ship_tracking), each with specific functionality. It distinguishes the tool from siblings, which are mostly unrelated, ensuring the agent understands the tool's unique value.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context for each mode, including input types and constraints (e.g., up to 50 addresses for geocode, UN/LOCODE for port, MMSI for ship). It also mentions when API keys are needed, but does not explicitly exclude alternatives among siblings, which are largely non-overlapping.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
global_salary_inflation_adjusterBRead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| baseSalary | Yes | ||
| targetYear | No | ||
| countryCode | Yes | ||
| referenceYear | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| targetYear | No | |
| countryCode | No | |
| inflationRate | No | |
| referenceYear | No | |
| adjustedSalary | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, open-world, and idempotent behavior. The description adds that the output includes data sources and warnings, which is useful but does not disclose detailed behavioral traits (e.g., data freshness, handling of missing data, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (3 sentences, ~40 words) and front-loads the action. It avoids redundancy, though a more structured format (e.g., listing inputs) could improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers core functionality and touches on output contents, but given the existence of sibling tools and a moderate parameter count, it lacks details on optional parameters (targetYear) and data freshness. With output schema present, return value details are less critical, but completeness is still average.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20% (only 'async' described). The tool description mentions 'country codes, base salary, and reference year' but does not explain the purpose of 'targetYear' or provide details on formats, defaults, or constraints beyond what the schema types imply. This is insufficient 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool adjusts salary benchmarks for local inflation using OECD, IMF, and World Bank data. It identifies the target user (CHROs) and the goal (normalize compensation across regions). However, it does not differentiate from sibling compensation tools like 'comp_benchmark_geo_delta' or 'executive_comp_peer_benchmark'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for inflation adjustment of salary benchmarks, but provides no explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. The context of sibling compensation tools suggests a need for clearer differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gl_reconcilerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| entity | Yes | ||
| ledgerContext | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and openWorldHint=true. The description adds that it 'returns a structured, audited deliverable' and mentions server-side validation, but lacks details on behavior like whether results are returned synchronously (despite an async parameter). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose and includes multiple example queries in a bullet-like format, making it hard to extract the core purpose. It would benefit from a concise summary of what the tool does and how to use it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a complex nested schema and no output schema, the description should clarify input fields and output format. It fails to do so, leaving agents without clear guidance on how to invoke the tool or interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25% (async parameter has a description). The description does not explain the meaning or usage of parameters like 'entity', 'ledgerContext', or 'focus'. Examples imply inputs but provide no mapping to schema properties.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'GL Reconciler' and mentions it returns a structured deliverable for GL reconciliation, with examples like identifying root causes of breaks and generating reports. However, it does not distinguish it from sibling financial tools such as 'margin_doctor_finance' 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.
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 lists example queries but does not specify scenarios where this tool is appropriate or when other tools should be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gov_procurement_multiARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Keywords to search for tenders (e.g. "cybersecurity audit", "construction", "consulting AI") | |
| countries | No | Countries to search. Defaults to ["EU","US","FR","UK","DE"]. Use "EU" for all 27 EU member states via TED Europa. | |
| cpv_codes | No | EU Common Procurement Vocabulary codes (e.g. ['72000000'] for IT services, ['45000000'] for construction). Optional. | |
| min_value_eur | No | Minimum contract value in EUR. Tenders below this are excluded. Optional. | |
| published_after | No | ISO date YYYY-MM-DD. Only return tenders published after this date. Defaults to 30 days ago. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| status | Yes | |
| sources | Yes | |
| tenders | Yes | |
| by_source | Yes | |
| by_country | Yes | |
| quality_score | Yes | |
| countries_searched | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses beyond annotations: parallel execution, SLA (25s p95), quality scoring system (points per source), status categories (failed/partial/final), optional env var for US. Annotations indicate readOnlyHint=true and no destruction; description adds workflow and success criteria 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but efficient, front-loading purpose and use cases. Every sentence adds value, though it could be slightly more structured (e.g., bullet points for sources). No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, multiple sources, aggregation logic), the description is very complete. It explains output fields (buyer, CPV, value in EUR, deadlines, URLs), quality scoring, and status mapping. The presence of an output schema (implied by context) offsets the need for further return value details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining default countries, CPV code examples (e.g., IT services), and the effect of published_after defaulting to 30 days ago. It also clarifies that 'EU' covers 27 EU states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it aggregates public procurement tenders from multiple government sources, listing specific APIs and standards. It distinguishes itself from sibling tools by focusing on multi-source tender aggregation, which is unique among the listed siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use ('B2G agent needs to find government contract opportunities', 'building a pipeline', 'monitoring by CPV code', 'market sizing'). However, it does not explicitly state when NOT to use 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.
growth_path_architectCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| constraints | Yes | ||
| growthTarget | Yes | ||
| currentDrivers | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and openWorldHint. The description adds that inputs are validated server-side and returns an audited deliverable, which is consistent. No contradictions, but little additional 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise with two sentences plus a reference case. It front-loads the purpose, but the mixed French/English might reduce clarity for some agents. Still, it avoids unnecessary fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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) and no output schema, the description fails to explain what the deliverable contains, how to interpret results, or any return format. The openWorldHint adds uncertainty without clarification.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (20%) and the description does not explain any parameters beyond saying 'send the documented case fields'. Key nested objects like company, growthTarget, constraints, and currentDrivers lack explanations, leaving the agent to rely solely on the schema's minimal info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a growth architect tool that returns a structured, audited deliverable, and provides a reference case. However, it does not differentiate itself from sibling tools like 'market_entry_strategist' or 'strategic_options_analyzer'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, nor any prerequisites or exclusions. The description only implies it's for C-suite growth strategy but fails to provide usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hallucination_confidence_meterARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The LLM-generated text to evaluate for hallucination risk | |
| async | No | If true, returns a job_id 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_id | No | Optional specific HuggingFace model ID to use for evaluation | |
| threshold | No | Confidence threshold below which hallucination warnings are triggered |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| confidence_scores | No | |
| hallucination_likelihood | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the tool is safe. The description adds useful context: it cross-references HuggingFace leaderboard models and returns confidence metrics and warnings, going beyond the annotations to explain how results are derived.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loading the core purpose and method. Every sentence adds value: purpose, target persona, inputs/outputs, and cross-reference method. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 (return values are detailed there), the description covers all essential aspects: what it does, who uses it, inputs, outputs, and confidence threshold behavior. It is complete for a read-only evaluation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters have descriptions in the schema. The description adds general context (e.g., accepts text snippets) but does not provide additional meaning beyond what the schema already offers for individual parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool evaluates hallucination likelihood in LLM responses using HuggingFace confidence scores. It specifies a specific verb ('evaluates'), resource ('hallucination likelihood'), and method (HuggingFace models), distinguishing it from the many sibling tools that cover different domains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly targets 'risk assessment personas' and mentions 'quantify response reliability', providing clear context for use. However, it does not explicitly state when not to use or list 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.
historical_price_seriesARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| period | No | Look-back period. Default: 1y. | |
| ticker | Yes | Yahoo Finance ticker symbol. Examples: AAPL (US stock), SAP.DE (Frankfurt), 7203.T (Tokyo), BTC-USD (Bitcoin), GC=F (gold futures), ^GSPC (S&P 500). | |
| metrics | No | Subset of fields to include (informational — all fields always returned). | |
| adjusted | No | Adjust close prices for dividends and splits. Default: true. | |
| interval | No | Bar interval. Default: 1d (daily). |
Output Schema
| Name | Required | Description |
|---|---|---|
| stats | Yes | |
| period | Yes | |
| series | Yes | |
| status | Yes | |
| ticker | Yes | |
| sources | Yes | |
| currency | Yes | |
| interval | Yes | |
| data_points | Yes | |
| quality_score | Yes | |
| splits_detected | No | |
| resolved_exchange | No | |
| dividends_detected | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: auto-detection of crypto vs. traditional sources, adjustment for dividends/splits, keyless access, and optional environment variables for rate limits. Annotations provide readOnlyHint and idempotentHint, and the description reinforces these while adding rich detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (a few sentences) and front-loaded with the core action and asset types. Each sentence adds value: returns, statistics, source detection, adjustment, use cases, sources, and access details. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 100% schema coverage, output schema exists, annotations), the description covers asset types, return format, statistics, source detection, adjustment, use cases, and access limitations. It is comprehensive enough for an agent to select and invoke correctly without needing to infer missing details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so each parameter is already described in the input schema. The tool description adds overall context (e.g., auto-detection of ticker source) but does not significantly enhance parameter-level understanding beyond what the schema provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch historical OHLCV price series for any ticker' with specific examples of stocks, ETFs, indices, commodities, and cryptocurrencies. It distinguishes itself from sibling tools by being a generic historical price fetcher for any ticker, while siblings like fx_rate or economic_indicator cover specific data types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists explicit use cases such as backtesting, factor analysis, and charting, providing context for when to use the tool. However, it does not explicitly state when not to use it or directly compare with alternatives like fx_rate or china_market_data, which would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hr_benefits_esg_alignerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| esgFocus | No | Primary ESG pillars to prioritize | |
| industryCode | Yes | NACE or ISIC industry classification code | |
| companyLocation | Yes | ISO 2-letter country code of company headquarters | |
| currentBenefits | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| recommendations | No | |
| overallESGAlignmentScore | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint, openWorldHint, and idempotentHint. The description adds context: the tool is asynchronous, generates actionable recommendations, and uses specific data sources to produce ESG-aligned adjustments with sustainability scores. It does not contradict annotations, and the readOnlyHint is consistent with returning recommendations 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear paragraph of five sentences, front-loading the purpose and key details. It is concise without redundancy, but could be more structured (e.g., bullet points) for scanability. Overall efficient and well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 but indicated), the description does not need to detail return values. It covers inputs, data sources, async behavior, and output type (recommendations with impact scores). It could mention polling for results (job_result), but with the async parameter and sibling job_result tool, this is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is high (80%), so the schema already documents most parameters. The description adds slight value by naming the required inputs (company location, industry, current benefits) and implying the async parameter's necessity. However, it does not elaborate on the esgFocus array or the structure of currentBenefits beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'align' and resource 'employee benefits packages' with ESG goals, naming specific data sources (Eurostat, MSCI, Sustainalytics). It also identifies the target user (CHROs). However, it does not explicitly distinguish this tool from many sibling ESG tools (e.g., esg_audit_multi, procurement_okr_esg_aligner), which limits differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description notes that the tool is asynchronous and requires async:true to avoid timeouts, providing basic usage guidance. However, it offers no guidance on when to use this tool versus alternatives (e.g., other ESG or benefits tools), and lacks when-not-to-use conditions or prerequisites beyond the inputs listed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
incident_response_evidence_collectorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_range | No | ||
| incident_id | Yes | Unique identifier for the incident (e.g., CVE, GitHub Advisory ID) | |
| mitre_technique_ids | No | List of MITRE ATT&CK technique IDs (e.g., T1059) | |
| include_network_flows | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| timeline | No | |
| warnings | No | |
| indicators | No | |
| incident_id | No | |
| network_flows | No | |
| attack_patterns | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond readOnlyHint and idempotentHint annotations, description adds that it gathers from public sources and requires async:true to avoid timeout. Discloses 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first defines purpose and outputs, second emphasizes async requirement. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Explains purpose, inputs, and async necessity, but fails to mention that async mode requires polling via job_result tool. Given output schema exists, this omission reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Description lists key inputs (incident identifiers, date ranges, MITRE technique IDs) but does not add details beyond schema descriptions. Schema coverage is 60%, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool gathers forensic evidence (logs, network flows, MITRE TTPs) from public breach reports and intelligence sources for incident response post-mortems. Distinguishes from siblings 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies use during incident response post-mortems but provides no explicit guidance on when to use this tool vs alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
india_market_dataARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analysis mode. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | NSE/BSE ticker, CIN (21 chars), company name (EN), or sector keyword. | |
| exchange | No | Exchange filter. Default: all. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| query | Yes | |
| status | Yes | |
| company | No | |
| sources | Yes | |
| mca_filings | No | |
| market_quote | No | |
| quality_score | Yes | |
| sector_overview | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, and the description reinforces this by describing read operations. It adds behavioral context beyond annotations, such as data sources (Yahoo Finance, BSE API, NSE proxy) and async polling behavior via the 'async' parameter. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with bullet points and clear sections, making it easy to scan. It is appropriately detailed without being verbose. Minor redundancy could be trimmed (e.g., listing modes twice).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, async option, and output schema exists), the description covers all essential aspects: modes, inputs, sources, environment variable, and async behavior. It is fully self-contained 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.
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 adds value by explaining the mode enum in detail, giving concrete examples of query inputs, and clarifying the async parameter's behavior. This goes beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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, enumerates four distinct modes (company, market_quote, sector_overview, mca_filing), and lists accepted input formats. This distinguishes it from siblings like china_market_data and corporate_registry_lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use each mode (e.g., 'company' for full profiles, 'market_quote' for real-time quotes) and details input formats. It does not explicitly state when not to use the tool, but the context is clear. No alternative tools are mentioned for comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
industry_classifier_naics_sicBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_url | No | ||
| company_name | No | ||
| company_description | Yes | ||
| focus_classifications | No | ||
| primary_revenue_source | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint and openWorldHint. The description adds that it returns a 'structured, audited deliverable', discloses async behavior via the 'async' parameter, and mentions server-side validation. It does not contradict annotations. However, it lacks details on rate limits, authentication, or error handling, so it provides moderate additional value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single block of text with a mix of French and English, including a run-on list of example questions and a reference case. It is moderately sized but lacks clear structure (e.g., separate sections for purpose, parameters, output). It could be more concise and better organized for quick parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, no output schema, and performs a complex classification task, the description is incomplete. It does not describe the output format or behavior for all input combinations. The absence of an output schema means the description should elaborate on the deliverable, but it only vaguely mentions 'structured, audited deliverable'. Additional completeness is needed for effective agent usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%, but the description does little to explain parameters beyond the company_description implied by examples. The 'async' parameter is documented in the schema, but the description does not clarify company_url, company_name, focus_classifications, or primary_revenue_source. The description fails to compensate for the low schema coverage, leaving agents without crucial parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool classifies companies into NAICS, SIC, NACE, GICS, HS, ISIC codes, and provides example queries. It is specific about the resource (industry classification) and verb (classify, return deliverable). While it doesn't explicitly differentiate from sibling tools, the unique combination of classification codes sets it apart. The purpose is well-defined but could be more succinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists several usage scenarios through example questions (e.g., 'What is the NAICS code for a company that does <activity>?', 'Classify this business into NAICS + SIC + ISIC...'), giving clear context for when to invoke the tool. However, it does not specify when not to use it or mention alternative tools, which would strengthen guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
infra_blueprint_designerBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_size | No | ||
| expected_load | Yes | ||
| workload_type | Yes | ||
| business_context | No | ||
| cloud_preference | No | ||
| region_preference | Yes | ||
| budget_monthly_eur | No | ||
| compliance_required | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true, so the tool is safe and open-ended. The description adds that it returns a 'structured, audited deliverable' and mentions server-side validation, but provides little additional 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy due to many example queries, which reduce conciseness. The first sentence effectively front-loads the purpose, but subsequent sentences could be trimmed to improve readability without losing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (9 parameters, design deliverable), the description lacks detail about the output format or structure beyond 'structured, audited deliverable'. No output schema exists, so the description should provide more context on what the deliverable contains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (11%). The description's example queries cover parameters like workload_type, expected_load, region_preference, budget, and compliance, adding meaning beyond the schema. However, parameters like async, team_size, and business_context are not explained, so compensation is partial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool designs a cloud infrastructure blueprint for various workload types, using verbs like 'Architecte' and 'Design'. It distinguishes itself from siblings by focusing on cloud architecture, which is unique among the listed tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides example questions implying usage for cloud architecture design, but lacks explicit guidance on when to use this tool versus alternatives or when not to use it. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
insurance_coverage_analyzerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| arrEur | Yes | ||
| sector | Yes | ||
| objectives | Yes | ||
| companyName | Yes | ||
| riskProfile | Yes | ||
| jurisdiction | Yes | ||
| employeeCount | Yes | ||
| currentPolicies | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate readOnlyHint and openWorldHint. The description adds minimal extra behavioral context, only mentioning server-side validation and the deliverable format, which is already implied by the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is reasonably short and front-loads the core idea, but includes jargon and lacks a clear structure. It is adequate but not polished.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (9 parameters, nested objects, no output schema), the description is grossly insufficient. It fails to detail input requirements, output structure, or behavior, leaving the agent with very little context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 11%, and the description does not explain any required parameters beyond a vague 'send the documented case fields'. No meaningful parameter semantics are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as an insurance coverage analyzer and mentions it returns a structured deliverable, but the verb is implicit and the reference case adds jargon without clarifying the exact function. It does not clearly differentiate it from sibling analysis tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description only states that inputs are validated server-side, with no guidance on when to use this tool versus alternatives. No explicit when-to-use or when-not-to-use information is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
interest_rateARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| rate | Yes | Reference rate name | |
| async | No | If true, returns a job_id 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
| Name | Required | Description |
|---|---|---|
| rate | Yes | |
| unit | Yes | |
| as_of | Yes | |
| value | Yes | |
| source | Yes | |
| series_id | No | |
| source_url | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and destructiveHint, so transparency burden is lower. The description adds source (FRED) and that the rate is 'current', but doesn't disclose return format (e.g., percentage vs decimal) or whether rates are delayed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences: first states purpose and lists rates, second gives source and usage condition. No extraneous text; front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and the presence of an output schema, the description covers core aspects (purpose, rates, source, usage). Could mention return format or update frequency, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents both parameters. The description adds source context and lists rates (matching enum), but does not add significant new meaning beyond the schema for the async parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Return a precise reference interest rate') and includes explicit use cases (treasury, lending, valuation, trading models), clearly distinguishing it from siblings like historical_price_series or fx_rate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Includes a 'When to use' clause that directly tells the agent when to invoke this tool ('agent's computation needs a current benchmark rate'), but does not explicitly mention when not to use it or list alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
internal_communicationCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| context | Yes | ||
| audienceSegments | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that the tool returns a structured, audited deliverable and that inputs are validated server-side. Annotations already indicate readOnlyHint=true and openWorldHint=true, so the description does not contradict but adds limited behavioral context. No details on output format 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but not well-structured. It begins with a French phrase and uses unclear jargon, wasting the opening sentence. The key information (returns deliverable) is present but could be stated more directly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has nested objects and no output schema, the description should compensate with details about output format or behavior. It does not explain what the deliverable contains, how to interpret results, or provide examples. The description is inadequate for a complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20%, but the description provides no information about parameters beyond 'send the documented case fields.' It fails to explain the meaning or usage of any parameters, leaving the agent with insufficient guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 internal communication, providing a general sense of purpose. However, it uses jargon ('Gapup agent-payable C-suite expertise (CHRO)') without clear explanation, and the verb 'returns' is implicit. It does not clearly differentiate from siblings, though siblings are numerous and none directly duplicate this function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only mentions server-side validation and to send documented case fields, but does not provide context for decision-making or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
investor_listCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| round | Yes | ||
| company | Yes | ||
| existingInvestors | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint: true, so the agent knows it's read-only. The description adds that inputs are validated server-side and returns a structured deliverable, but does not disclose potential async behavior or output format details. Some value added, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short at four sentences, with the core purpose front-loaded. The reference case adds some value without excessive bloat. It could be slightly more streamlined, but overall concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nested objects, no output schema, and low parameter coverage, the description is incomplete. It fails to explain the output format, the meaning of parameters, or the async option. The tool's behavior is not fully described, leaving gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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. Only the 'async' parameter is mentioned indirectly; the nested parameters like 'round.stage' and 'company.name' are not explained. The description says to send 'documented case fields' but does not clarify what each field means.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a list of investors with warm introductions for fundraising, including a reference case. However, it does not differentiate from similar sibling tools like 'investor_shortlist', so it loses a point for not distinguishing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. There is no mention of prerequisites, when not to use it, or comparison with other tools, leaving the agent without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
investor_shortlistARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| round | Yes | ||
| company | Yes | ||
| preferences | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint: true) already indicate no state mutation. The description adds value by detailing the output: a structured, audited deliverable with specific components (fit score, warm intro path, first message angle). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative but somewhat verbose with the reference case and validation note. It front-loads the purpose but includes a few extraneous details. Could be tighter while retaining clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, no output schema), the description partially compensates by listing key output elements (fit score, intro path, message angle). However, it does not specify output format, pagination, or error cases. More detail would be helpful for full contextual completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (20%), and the description does not explain the parameters beyond referring to 'documented case fields.' The nested objects (company, round, preferences) lack meaningful description of their semantics, leaving the agent to rely solely on the schema types and names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a targeted shortlist of investors for fundraising, with a specific deliverable including fit score, warm intro path, and first message angle. The reference case (Aleph AI) concretely illustrates the purpose, distinguishing it from generic investor listing tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for fundraising ("FUNDRAISING") and notes inputs are validated server-side, but does not explicitly state when to use this tool versus alternatives like investor_list or funding_hunter. No exclusion or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_contract_clause_extractorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| contractText | Yes | Full text of the employment contract to analyze | |
| jurisdiction | No | Country/state jurisdiction for legal context (e.g., 'US-CA', 'DE') | |
| includeContext | No | Whether to include legal context for each clause |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| clauses | Yes | |
| sources | No | |
| summary | Yes | |
| warnings | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as readOnly, openWorld, and idempotent. The description adds behavioral context by stating returns structured data with clause types, risk levels, and legal context, and mentions data sources (USPTO, EPO). However, the sources seem misplaced for contract analysis, slightly reducing credibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with 'For CHRO use' but contains extraneous details like data sources (USPTO, EPO) that are incongruent with contract analysis, and a list of keywords. These dilute conciseness and could be removed or corrected.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the availability of an output schema, the description covers the core functionality and typical use cases. However, it does not explain the output schema's structure or how to interpret risk levels, and the mention of unrelated patent data sources may confuse users.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 reiterates the main parameter (contractText) and hints at includeContext, but does not add new meaning beyond what the schema already provides. The jurisdiction parameter is mentioned in examples but not elaborated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes employment contract text to identify IP-related clauses, listing specific clause types (invention assignment, confidentiality, non-compete) and use cases. It distinguishes from siblings by focusing on IP clauses in employment contracts, which is specific and not overlapping with general clause extractors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly targets CHRO use and mentions common workflows (contract review, compliance checks, IP protection strategy). It does not provide alternative tools or when-not-to-use guidance, but the context is clear enough for the intended audience.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_employee_invention_trackerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| endDate | No | Filter patents filed before this date (YYYY-MM-DD) | |
| startDate | No | Filter patents filed after this date (YYYY-MM-DD) | |
| employeeId | No | Internal employee ID (optional if name provided) | |
| companyName | Yes | Exact legal name of company for assignment check | |
| employeeName | Yes | Full name of employee to track (e.g., 'John Doe') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| patents | Yes | |
| sources | No | |
| warnings | Yes | |
| employeeId | No | |
| companyName | Yes | |
| employeeName | Yes | |
| totalPatents | Yes | |
| unassignedPatents | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, openWorldHint, idempotentHint) are consistent with the description which states it retrieves patent applications from external databases (USPTO, WIPO) and returns a list of inventions. No contradictions. Description adds details about output fields (assignment status, filing dates, ownership gaps) 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three front-loaded sentences: first states audience and purpose, second describes inputs, third describes outputs. Every sentence earns its place with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has 6 parameters with full schema descriptions, an output schema (not shown but indicated), and annotations providing safety hints. Description covers purpose, inputs, outputs, and keywords, making it complete for a retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers all 6 parameters with descriptions (100% coverage). The description adds minimal extra meaning, such as example 'John Doe' for employeeName and context about required parameters. Baseline 3 is appropriate as schema already documents parameters well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool tracks employee patent filings and flags unassigned inventions, with specific verb 'tracks' and resource 'patent filings' and 'patent applications from USPTO and WIPO databases'. It distinguishes from sibling IP tools like patent_landscape or patent_ownership_audit by focusing on employee inventions and assignment status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description provides context 'Useful for IP audits, inventor onboarding, and compliance checks' and targets CHROs, but does not explicitly state when not to use this tool or mention alternatives among 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.
ip_protection_pilotCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| competitors | Yes | ||
| targetMarkets | Yes | ||
| patentPortfolioSummary | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the description adds limited value. It mentions 'returns a structured, audited deliverable' and 'inputs validated server-side', which is consistent but not expansive. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description includes a lengthy reference case and a cryptic tagline that do not aid clarity. It could be more concise and front-loaded with essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 6 params, no output schema), the description is insufficient. It does not describe the deliverable's structure, error conditions, or how to use the results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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' param described. The description does not explain the meaning or usage of required parameters like 'company', 'patentPortfolioSummary', etc., failing 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is an IP protection pilot that returns a structured deliverable, but the purpose is vague, especially with terms like 'Gapup agent-payable C-suite expertise (RISK)'. It provides a reference case but does not clearly distinguish from siblings 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.
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. It simply says to send documented case fields, without context on prerequisites or scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jailbreak_attempt_detectorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| context | No | Optional conversation context for better pattern matching | |
| message | Yes | User input text to analyze for jailbreak attempts | |
| threshold | No | Confidence threshold for flagging attempts |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| riskScore | No | Confidence score of jailbreak attempt |
| patternsMatched | No | List of detected adversarial patterns |
| isJailbreakAttempt | No | Whether the input exceeds the risk threshold |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint. The description adds behavioral context: returns risk assessment with confidence scores and pattern matches, mentions async support and job_id for polling. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core purpose. No fluff, but could be slightly more concise. Efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and presence of output schema, the description is adequate: covers purpose, usage context, and high-level behavior. Does not need to explain return values due to output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentions inputs include user message and optional context but doesn't add meaning beyond the schema for async or threshold parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool detects LLM jailbreak attempts using NIST AI RMF adversarial patterns. It lists specific techniques (prompt injection, role-playing, obfuscation) and specifies the resource (user input). The purpose is distinct from siblings like adversarial_input_stress_tester.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says it's 'Designed for persona risk assessment' and 'Ideal for real-time moderation in chat applications or API gateways', giving context but no explicit when-to-use or when-not-to-use compared to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
job_postings_intelligenceARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Mode d'analyse : 'company_hiring' | 'role_market' | 'competitor_hiring_comparison' | |
| role | No | Intitulé de poste à analyser (pour role_market, ex. 'data scientist', 'compliance officer') | |
| async | No | If true, returns a job_id 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 | No | Nom de la société (pour company_hiring ou comme 1er concurrent) | |
| location | No | Pays ou ville (ex. 'France', 'United States', 'London') | |
| competitors | No | Liste de sociétés à comparer (pour competitor_hiring_comparison, min 2) | |
| period_days | No | Fenêtre d'analyse en jours (défaut 30) |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| sources | Yes | |
| role_market | No | |
| quality_score | Yes | |
| company_hiring | No | |
| competitor_comparison | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, etc.), the description adds critical behavioral details: it's read-only aggregation, has 6-hour caching, SLA ≤15s, async support, and lists data sources. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured paragraph that efficiently conveys all key information without redundancy. Every sentence adds value, and the numbered modes improve readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 modes, multiple parameters, output schema), the description covers purpose, modes, sources, usage, caching, SLA, and async option comprehensively. It provides all necessary context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage with parameter descriptions. The description adds value by explaining the three modes and how parameters like role, company, competitors relate to each mode, enhancing understanding beyond schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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, lists three specific modes (company_hiring, role_market, competitor_hiring_comparison) with details, and differentiates from siblings by its unique focus on hiring intelligence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit use cases (due diligence VC, competitive intelligence, HR benchmarks, strategic pivot signals) and mentions sources and caching. It lacks explicit when-not-to-use guidance or alternative tool names, but the context is clear enough for appropriate selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
job_resultARead-onlyIdempotentInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by an async tool call |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds critical behavioral details: possible statuses (pending, completed, failed, not_found), TTL of 24h, and that the full result is returned on completion. This is valuable context for safe usage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary purpose, efficiently covering all essential behavior without unnecessary words. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (not shown), the description covers purpose, all statuses, TTL, and return behavior. It could mention polling frequency or retry guidance, but overall it is complete for a simple polling tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers the single parameter job_id with a description. The description adds no additional parameter information beyond what the schema provides. With 100% schema coverage, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Poll the result of any tool called with async:true', using a specific verb and resource. It clearly distinguishes from sibling tools, many of which are specific async/result pairs, by being the generic poller.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a job_id is obtained from an async tool call. It does not explicitly state when not to use (e.g., when a specific result tool exists), but the context is clear enough for an agent to infer appropriate usage.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum markets (default 20) | |
| query | No | Free-text filter on the market question | |
| status | No | Market status (default open) | |
| includeRaw | No | Include Kalshi's original fields (default false) | |
| includeUnpriced | No | Also return markets with no live bid/ask (default false — they carry no information) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It adds a useful detail about implied probability being derived from the yes bid/ask mid, but does not mention rate limits, pagination, or behavior with no results. The verb 'query' implies a safe read operation, but other behavioral nuances remain undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the core action, and every sentence adds value: identifying the exchange, listing output fields, and noting the optional filter. No redundant content or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 6 optional parameters, the description covers the key output fields and source context. It lacks explicit mention of default limits (though schema documents them) and potential response formats, but is reasonably complete given the schema richness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 no parameter-level information beyond what the schema already provides; the free-text filter and unpriced markets behavior are already documented in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as querying live Kalshi prediction markets and enumerates specific output fields (question, implied probability, volume, etc.). It distinguishes itself from sibling tools like polymarket_markets by explicitly naming Kalshi and adding the CFTC-regulated exchange context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (for live Kalshi markets) but does not explicitly mention alternatives or exclusion criteria. It implies usage without stating when a different tool might be more appropriate, which is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
knowledge_base_autoCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| sources | Yes | ||
| topPainPoints | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, covering safety and extensibility. The description adds that it returns a structured deliverable and mentions server-side validation. However, it does not elaborate on potential side effects, retry behavior, or response format, which are not fully disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief (three sentences) and front-loaded with the tool's purpose. However, it includes a specific reference case (Klarna) which, while illustrative, adds length. Overall, it is efficient but not extremely tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the input schema (nested objects, arrays, required fields) and the lack of an output schema, the description is insufficient. It does not explain the output structure, how to handle the async option, or what 'documented case fields' entail, leaving significant gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 documented. The description does not explain the purpose or required format of the other parameters (company, sources, topPainPoints), despite the schema having nested objects and constraints. The user is left to infer from the schema property names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 building an automated knowledge base for C-suite expertise, with a specific reference case. This is clear about the tool's primary function, but it does not explicitly differentiate it from the many sibling tools that might also generate structured outputs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. There is no mention of prerequisites, when-not-to-use, or comparisons with siblings. The only usage hint is that inputs are validated server-side, which is generic.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kyc_screenerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| entities | Yes | ||
| riskAppetite | Yes | standard | |
| screeningScope | Yes | ||
| onboardingPacket | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and open-world behavior. The description adds that it returns a structured, audited deliverable and validates inputs server-side, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but includes a marketing-like phrase ('Gapup agent-payable C-suite expertise (RISK)') that adds noise. The reference case is useful but could be more streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, many parameters, no output schema), the description is insufficient. It does not explain return format, result details, or how to interpret the 'structured, audited deliverable', leaving significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20%; the description does not explain any parameter meanings. The phrase 'send the documented case fields' is too vague to compensate for the low coverage, leaving agents without necessary contextual guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it screens KYC/AML/Sanctions and returns a structured, audited deliverable. The core function is unambiguous, though it doesn't explicitly distinguish from related siblings like 'kyc_screener_batch' or 'sanctions_screener_multi'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 alternatives. The description lacks context for selection, such as when to choose 'kyc_screener' vs. 'kyc_screener_batch' or 'sanctions_screener_multi'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kyc_screener_batchARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| names | Yes | List of entities to screen (1-100). Each entry requires at minimum a name. |
Output Schema
| Name | Required | Description |
|---|---|---|
| job_id | Yes | Unique job identifier — pass to kyc_screener_batch_result |
| status | Yes | |
| batch_size | Yes | Number of names queued for screening |
| eta_seconds | Yes | Estimated seconds until result is ready |
| submitted_at | Yes | ISO-8601 submission timestamp |
Tool Definition Quality
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 the tool is async, returns in <300ms, runs up to 10 parallel KYC calls, and includes an eta_seconds hint. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is fairly long but all sentences are informative. Starts with core purpose then details, use cases, and async behavior. Slightly dense but efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Comprehensive coverage for a batch async tool: purpose, parameters, behavior, use cases, alternatives, and webhook registration. Output schema exists. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters fully. Description adds context: type defaults to 'any', birthdate optional for disambiguation, names list size 1-100. Enhances understanding beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 batch variant of kyc_screener, accepting 1-100 names and returning a job_id. It distinguishes itself from sibling tools like the synchronous kyc_screener and the polling tool kyc_screener_batch_result.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states use cases: 'bulk client onboarding, UBO list screening, or periodic AML refresh batches'. Also provides alternatives: polling via kyc_screener_batch_result or registering a webhook via webhooks_manage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kyc_screener_batch_resultARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by kyc_screener_batch (prefix: kycb_) |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide read-only and idempotent hints. Description adds TTL of 24h and status transitions, but no details on rate limits or authentication. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no wasted words. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one parameter, output schema exists, and annotations are rich, the description covers all necessary aspects: purpose, usage timing, status meanings, and TTL.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and already describes job_id as the batch ID with prefix. Description does not add further semantics, meeting baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool polls the result of a batch KYC job, lists all possible statuses, and distinguishes from sibling tools like kyc_screener_batch which initiates the job.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to call after the eta_seconds hint from kyc_screener_batch, and describes when status indicates running, completion, failure, or expired.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
labor_law_alert_geoARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| since | No | Optional start date for changes (YYYY-MM-DD). Defaults to 7 days ago. | |
| until | No | Optional end date for changes (YYYY-MM-DD). Defaults to today. | |
| jurisdiction | Yes | ISO 3166-1 alpha-2 country code or ISO 3166-2 state/province code (e.g., 'US-CA', 'FR') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| changes | Yes | |
| sources | Yes | |
| warnings | Yes | |
| last_updated | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true. Description adds that output includes structured legislative updates with summaries, effective dates, and source links, and implies daily frequency. This provides additional behavioral context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is four sentences, front-loaded with purpose, then inputs, outputs, and keywords. Each sentence adds value; however, the keywords sentence could be integrated, but it's still concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present and annotations covering safety, the description provides sufficient context: target user, inputs, output structure (summaries, dates, links), and use cases. Complete for a read-only query tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters (jurisdiction, since, until, async). Description mentions jurisdiction and date range but does not add new meaning or defaults beyond schema. Baseline 3 is appropriate as schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides daily alerts on labor law changes by jurisdiction, targeting CHROs. It specifies the verb ('provides'), resource ('labor law changes'), and context (jurisdiction-based), distinguishing it from sibling tools that focus on other HR/legal areas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the tool is useful for compliance monitoring, risk assessment, and policy adjustments, and lists required inputs (jurisdiction, optional date range). However, it does not explicitly compare to alternatives or provide conditions when not to use, though context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ld_architectCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| team | Yes | ||
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| budget | Yes | ||
| company | Yes | ||
| learningNeeds | Yes |
Tool Definition Quality
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, but lacks details on auth, rate limits, or output format. Acceptable but not enhanced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but includes marketing fluff (reference case). The core purpose is in the first sentence, but the structure could be more focused.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 nested parameters, low schema coverage, no output schema, and a sparse description, the tool is poorly documented. The description does not explain what the deliverable contains or how the architecture is produced.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 20% (only async parameter described). The description does not explain any of the five parameters, not even the required ones. In low-coverage situations, the description should compensate, but it fails completely.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Architecte formation & développement' and mentions returning a structured deliverable, but the purpose is vague. Unlike siblings like 'lnd_ai_skill_forecast', it does not clearly specify the verb and resource. The reference case provides context but not clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only mentions 'Inputs are validated server-side' but nothing about 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.
lead_magnetsCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| icp | Yes | ||
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| brand | Yes | ||
| leadMagnet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, indicating safe, read-only behavior. The description adds that inputs are validated server-side, but does not disclose any additional behavioral traits (e.g., latency, dependency on external data, or return format). The description 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief (three sentences) and front-loaded with the purpose. It avoids redundancy. However, the French phrasing may disrupt scanning for non-French agents.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nested objects and no output schema, the description is incomplete. It does not describe the return value format, what constitutes a 'structured, audited deliverable,' or how the inputs map to the output. The lack of output schema further burdens the description, which it fails to address.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not explain the meaning or usage of the three required nested objects (icp, brand, leadMagnet) beyond a vague 'send the documented case fields.' The reference case gives an example but lacks general parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 lead magnets targeting C-suite (CMO). The verb 'returns' is clear, and the reference case adds context. However, it does not explicitly differentiate from sibling tools, and the French language may reduce clarity for English-only agents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 that inputs are validated server-side, but does not specify use cases, prerequisites, or when not to use. With many sibling marketing tools, the lack of usage guidance is a significant gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
legal_clause_extractorARead-onlyIdempotentInspect
Structured extraction of clauses, obligations and deadlines from legal documents (SaaS contracts, NDAs, employment agreements, loan agreements, leases, M&A deals, IP licences). Complements contract_risk_scanner with granular per-clause output.
ICP: legal ops, M&A lawyers, paralegals, contract managers, compliance officers.
Capabilities: • Auto-detects document type (7 types) and language (EN/FR/DE/ES/PT) • Extracts parties with roles (buyer, seller, licensor, employee, etc.) • Splits document into sections and classifies 16+ clause types • Per-clause: 20 obligation patterns (EN/FR/DE), 10 deadline patterns, 18 risk detectors • Document-level: red flags (liability cap, auto-renewal, IP overreach, etc.), missing clauses per doc type • Global deadline calendar with P0/P1/P2 severity • Cross-reference map between sections • Cache: 7 days (legal docs stable once provided)
100% pure compute — no external fetch required. Accepts 10k–100k char documents.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Optional. Language hint (e.g. 'en', 'fr', 'de'). Defaults to auto-detection. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| document_text | Yes | Full text of the legal document (10k–100k chars typical). Plain text or lightly HTML-formatted. EN/FR/DE/ES/PT supported. | |
| document_type | No | Optional. Document type hint. Defaults to auto-detection. Use "auto" or omit to let the tool detect from content. | |
| target_clauses | No | Optional. Filter extraction to specific clause types. E.g. ["term", "termination", "liability", "ip", "confidentiality", "governing_law", "indemnification"]. If omitted or empty, all clauses are extracted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| red_flags | Yes | |
| word_count | Yes | |
| jurisdiction | No | |
| governing_law | No | |
| lang_detected | Yes | |
| quality_score | Yes | |
| effective_date | No | |
| cross_references | Yes | |
| parties_detected | Yes | |
| clauses_extracted | Yes | |
| key_deadlines_global | Yes | |
| document_type_detected | Yes | |
| missing_clauses_expected | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and no destructiveness. The description adds valuable behavioral context: pure compute (no external fetches), caching for 7 days, support for async processing, and input length constraints (10k-100k characters). These details go 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with bullet points and clear sections, making it scannable. However, it is somewhat verbose, listing all document types, obligation patterns, etc. A bit more conciseness would improve score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema exists), the description is exceptionally thorough. It covers input constraints, capabilities, cache behavior, and async support. The output schema likely details return structure, so the description appropriately focuses on behavioral aspects without redundancy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds significant value by explaining how parameters work in practice: auto-detection of document type and language, filtering via target_clauses, and async behavior. It also elaborates on capabilities not captured in schema (e.g., extraction of parties, sections, obligation patterns).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: structured extraction of clauses, obligations, and deadlines from legal documents. It distinguishes itself from the sibling tool 'contract_risk_scanner' by offering granular per-clause output, making the purpose specific and non-overlapping.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use the tool (for legal documents) and for whom (legal ops, M&A lawyers, etc.). It explicitly mentions complementing 'contract_risk_scanner' with granular output, implying an alternative. However, it does not explicitly state when not to use it or list all exclusions.
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_automatorCRead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | No | Optional list of data categories to limit the request | |
| urgency | No | Priority level for processing | |
| requestType | Yes | Type of LGPD request | |
| userIdentifier | Yes | CPF, email, or other unique identifier for the data subject |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| dataCategories | No | |
| erasureDeadline | No | |
| complianceStatus | No | |
| retentionPeriodDays | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description claims the tool handles erasure and deletion workflows, which are write operations, but the annotations set readOnlyHint: true, indicating it is read-only. This is a direct contradiction. Additionally, idempotentHint: true is inconsistent with deletion operations. The description fails to disclose this contradiction or explain the actual behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, concise and front-loaded with the core purpose. However, the first sentence could be slightly trimmed without losing meaning. Overall, it is efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite an output schema existing, the description mentions return value elements (compliance status, warnings, source references). However, it omits mention of the async parameter, which is critical for processing speed. The annotation contradiction further undermines trust in the described behavior. For a tool with 5 parameters and 2 enums, the description is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all parameters described in schema). The description adds context by listing request types and optional scope filters, but does not provide substantial new meaning beyond the schema. Enum values like requestType are already clear from schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool automates LGPD DSARs, specifies it handles access, rectification, and deletion workflows, and mentions returning a structured response with compliance status, warnings, and source references. This provides a specific verb, resource, and scope, distinguishing it from sibling tools focused on other regulations or general compliance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention conditions for non-use or prerequisites. It only implies usage for legal teams handling LGPD DSARs, which is insufficient for an agent to decide between this and similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lnd_ai_skill_forecastARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| region | Yes | Geographic focus (US state code or 'US' for national, e.g., 'CA', 'US') | |
| skills | Yes | List of AI-related skills to forecast (e.g., ['machine learning', 'computer vision']) | |
| horizon_months | No | Forecast horizon in months (3-24, default 12) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| forecast | No | |
| metadata | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and openWorldHint. The description adds value by specifying that returns include 12-month projections with confidence scores, skill growth rates, patent filing trends, and job posting volumes. It also describes inputs and outputs. However, it does not mention the async parameter behavior or the job_result polling mechanism, which are present in 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a paragraph of 4 sentences, front-loading the main purpose. It efficiently covers inputs, outputs, and use case. While clear, it could be slightly more concise by removing the 'Keywords' line, which adds little. Overall, every sentence contributes and the structure is logical.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity (4 parameters, annotations present, output schema exists), the description covers the core functionality: what it does, inputs, outputs, and target audience. It mentions the 12-month horizon and confidence scores. However, it does not mention the async option or how to retrieve results for slow queries (the job_result tool). This is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 4 parameters. The description adds context beyond the schema by providing examples (e.g., 'machine learning', 'NLP') and explaining how parameters relate to the output (e.g., 'geographic focus (US state/country)'). This helps the agent understand parameter purpose and format, exceeding the baseline 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool forecasts AI skill demand trends for CHROs using patent filings and job postings. The verb 'Forecasts' is specific, the resource is detailed (AI skill demand trends with inputs and outputs). Although the sibling list is long, this tool's focus on forward-looking demand projections distinguishes it from related tools like lnd_skill_taxonomy_builder, job_postings_intelligence, and patent_landscape.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for HR leaders prioritizing workforce upskilling but does not explicitly state when to use this tool versus alternatives. No when-not or alternative tool guidance is provided. For example, it could have mentioned that for current talent availability one should use talent_intelligence. The context is clear but lacks exclusionary guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lnd_skill_taxonomy_builderARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| jobRole | No | Target job role or occupation (e.g., 'Data Scientist') | |
| industry | Yes | NAICS industry code or sector name (e.g., '541511' for IT services) | |
| timeRange | No | Time range for trend analysis | |
| skillCluster | No | Optional skill cluster to focus taxonomy (e.g., 'AI/ML') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| skillTaxonomy | No | |
| industryTrends | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint. Description adds that the tool is computationally intensive (requires async to avoid timeout), uses multiple data sources, and outputs structured hierarchies. This goes beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no waste. First sentence covers purpose, inputs, outputs, and value. Second sentence provides critical usage instruction. Front-loaded for quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given complexity (multi-source dynamic taxonomy), presence of output schema, and annotations, the description sufficiently covers core functionality and a key behavioral trait (async requirement). Could expand on polling mechanism but not required since async hint is in schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage for all 5 parameters, so baseline is 3. Description adds value by grouping inputs (industry codes, job roles, skill clusters) and describing output characteristics, which aids understanding of parameter purpose beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it generates a dynamic skill taxonomy for CHROs using specific data sources (USPTO, BLS, OECD), lists inputs (industry codes, job roles, skill clusters) and outputs (structured hierarchies with demand trends and competency gaps). It distinguishes from many sibling tools by its focus on taxonomy building for workforce transformation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context (for CHROs) and an essential usage requirement: 'pass async:true REQUIRED to avoid x402 timeout.' Does not explicitly mention when not to use or name alternatives, but the async directive is actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logistics_esg_incident_trackerBRead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| region | Yes | Geographic region filter (e.g., 'Europe', 'Asia', 'Global') | |
| endDate | No | End date for incident search (ISO 8601) | |
| severity | No | Minimum severity level to include | |
| startDate | No | Start date for incident search (ISO 8601) | |
| incidentType | Yes | Type of ESG incident to track |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| summary | No | |
| warnings | No | |
| incidents | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, openWorldHint, idempotentHint) are consistent. Description adds data sources and real-time aspect. However, it fails to mention the async parameter behavior (schema includes async boolean) and any rate limits – important for behavioral understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is front-loaded with purpose and concise. The trailing keyword list is somewhat redundant; could be omitted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main aspects (inputs, outputs, data sources) but lacks explanation of async execution and differentiation from similar tools. Output schema exists, so output description is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; description lists main parameters but misses 'severity' and 'async'. Does not add significant meaning beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Tracks real-time ESG incidents in logistics networks for COOs' and lists specific resources and inputs/outputs. However, it does not differentiate from many sibling ESG tools (e.g., supplier_esg_audit, esg_audit_multi) that may overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Purpose implies use for COOs monitoring ESG incidents, but no explicit guidance on when to use vs alternatives (siblings include several ESG tools) or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ma_arbitrage_hunterARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| sector | No | Industry sector for peer comparison (e.g., 'Technology') | |
| targetTicker | Yes | Target company ticker symbol (e.g., 'AAPL') | |
| valuationMetric | No | Valuation multiple to use for comparison | |
| primaryJurisdiction | Yes | Primary jurisdiction for valuation comparison (e.g., 'US') | |
| secondaryJurisdiction | No | Secondary jurisdiction for valuation comparison (e.g., 'DE') |
Output Schema
| Name | Required | Description |
|---|---|---|
| fxRate | No | |
| status | Yes | |
| sources | No | |
| warnings | No | |
| valuationGap | No | |
| peerMultiples | No | |
| targetCompany | No | |
| primaryValuation | No | |
| secondaryValuation | No | |
| jurisdictionPremium | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the description does not need to restate those. It adds value by mentioning data sources (ECB FX rates, Yahoo Finance, SEC EDGAR) but does not elaborate on behavioral traits such as rate limits or authorization requirements. With annotations covering safety, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is five sentences, goal-first, with no wasted words. It efficiently covers purpose, inputs, outputs, data sources, and ideal use. Excellent structure for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (not shown), the description's mention of outputs ('valuation gaps, FX-adjusted multiples, and jurisdiction-specific premiums/discounts') is sufficient. Inputs, data sources, and role context are all covered. The tool is a read-only query, and annotations confirm that. Complete for its purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 thoroughly. The description lists input categories ('target company ticker, primary and secondary jurisdictions, and valuation metrics') but does not add new meaning beyond the schema. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence clearly states the tool's purpose: 'identify cross-border M&A arbitrage opportunities by comparing target company valuations across different jurisdictions'. This is a specific verb-resource combination. The tool is distinct from siblings like ma_deal_screener which focuses on general deal screening, and ma_tax_efficiency_mapper which covers tax aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context by specifying the user role (CFO) and the scenario ('quick assessment of potential arbitrage in M&A scenarios'). Inputs and outputs are listed. However, it does not explicitly mention when not to use this tool or alternatives, making it slightly less than 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ma_deal_screenerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| acquirer | Yes | ||
| criteria | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint. The description adds context about returning an audited deliverable and server-side validation, but does not elaborate on potential side effects, external calls, or limitations beyond what annotations imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but includes unclear jargon ('Gapup agent-payable C-suite expertise (CSO)') and a reference case that adds length. Could be more streamlined while preserving key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nested parameters and no output schema, the description does not provide enough context on what the deliverable contains, how to interpret results, or prerequisites. The reference case helps but is insufficient for full understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not explain the meaning or usage of the nested parameters (acquirer, criteria) beyond referencing a case example. This leaves ambiguity about how to fill the fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it screens M&A deals and returns a structured deliverable, with a reference case giving concrete output examples. However, it does not differentiate from closely related sibling tools like 're_deal_screener' or 'ma_arbitrage_hunter'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lacks guidance on when to use this tool vs alternatives. It mentions server-side validation and to send case fields, but no conditions for use or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manufacturing_esg_compliance_mapperARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Reporting year (default: current year - 1) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| region | No | Geographic region (state, county, or ZIP code) for facility search | |
| includeGri | No | Include GRI standards analysis (default: true) | |
| facilityIds | Yes | List of EPA facility identifiers (e.g., TRIFID) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| summary | No | |
| warnings | Yes | |
| facilities | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, openWorldHint, and idempotentHint, so the agent knows the tool is safe and idempotent. The description adds 'quickly identify' and output format but does not disclose additional behavioral traits like rate limits or authentication needs, adding minimal 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with keywords, efficiently front-loaded with the main action. It could be slightly more concise by removing 'As a COO' and the keyword list, but overall it is well-structured and not verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters and an output schema, the description adequately covers the main purpose, data sources, and output types. It does not mention the year or async parameters, but these are detailed in the schema. The description is sufficient for an agent to understand context and appropriate use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 5 parameters. The description only mentions facilityIds and region in text, but does not add semantics beyond what the schema provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool identifies ESG compliance gaps across manufacturing facilities using EPA TRI and GRI standards. It specifies inputs (facility identifiers or regions) and outputs (roadmap with risk scores, violations, actions), making the purpose distinct from siblings like esg_audit_multi or sustainability_report.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists ideal use cases (sustainability reporting, regulatory risk assessment, operational improvement) but does not specify when to avoid the tool or mention alternative tools. No exclusions or when-not guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manufacturing_waste_heatmapARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Analysis year (2010-2023) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| region | No | Geographic region (country code or sub-national region) for aggregated analysis | |
| site_ids | No | List of manufacturing site identifiers (EPA TRI IDs or FAO facility codes) | |
| waste_types | No | Specific waste types to analyze (e.g., ['metals', 'chemicals', 'energy']) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| heatmap_data | No | |
| opportunities | No | |
| benchmark_data | No |
Tool Definition Quality
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 clear. The description adds context about using specific data sources (EPA TRI, FAOSTAT) and the async option to avoid timeout, which is valuable but not extensive. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise—four sentences that are front-loaded. The first sentence states the core purpose and data sources, the second covers inputs, the third outputs, and the fourth gives a usage tip. No unnecessary words, and each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description doesn't need to detail return values. It covers inputs, outputs, data sources, and an async usage tip. It lacks mention of potential error cases, rate limits, or specific output format details, but for a heatmap generator with good annotations, it is mostly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already documented. The description adds clarifying context: it notes that site_ids and region are alternative inputs ('Input manufacturing site identifiers or geographic regions'), and mentions using async:true to avoid timeout. This adds some meaning beyond the schema, but not enough to merit a higher score than the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 using EPA TRI and FAOSTAT data for COOs, with specific inputs (site identifiers or geographic regions) and outputs (waste intensity maps, circular economy opportunity rankings, and cost-saving potential). It also mentions the async option to handle timeouts. This purpose is distinct from the many sibling tools, which are unrelated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it is 'Ideal for sustainability strategy and operational efficiency improvements,' providing some context. However, it does not explicitly state when to use this tool versus alternatives, nor does it provide exclusions or conditions where another tool might be more appropriate. Given the large set of siblings, more guidance would be helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
margin_doctorCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| deals | Yes | ||
| company | Yes | ||
| product | Yes |
Tool Definition Quality
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 inputs are validated server-side and returns an audited deliverable, reinforcing the safe, read-only nature without contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but includes a detailed case reference that may not be essential. Could be more concise and front-loaded with actionable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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. The description mentions a 'structured, audited deliverable' but does not specify its contents or format, leaving gaps for an agent to understand the full context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 elaborate on 'company', 'product', or 'deals' parameters, leaving the agent without added meaning beyond the schema structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it's about 'Marge par deal' and returns a structured, audited deliverable, but uses French terms and references a specific case, making the exact purpose unclear. It does not distinguish from the sibling 'margin_doctor_finance'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only says 'send the documented case fields', lacking context for when it is appropriate or when to avoid it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
margin_doctor_financeCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| costBreakdown | Yes | ||
| marginTargets | Yes | ||
| unitEconomics | Yes | ||
| incomeStatement | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, which is consistent with returning a deliverable. The description adds that inputs are validated server-side but does not disclose behavioral traits like cost or rate limits. No contradiction, but the description could be more informative.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but includes non-English phrases and a reference case that may be extraneous. It front-loads the French label and jargon rather than a clear, direct statement of purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 fails to explain the return deliverable's structure or the tool's analysis scope. The reference case provides some context but is insufficient for complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%, meaning most properties lack descriptions. The description does not elaborate on parameter meanings or required fields, leaving the agent to rely on the sparse schema. 'Send the documented case fields' is too vague.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description mentions 'Médecin des Marges' and 'Returns a structured, audited deliverable', indicating it analyzes margins and produces a report, but the exact verb and resource are unclear due to jargon and French phrasing. The reference case hints at margin improvement but lacks a specific action statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like 'margin_doctor'. The description only states 'send the documented case fields' without specifying context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_entry_strategistBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| preferences | Yes | ||
| targetMarket | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reinforces the readOnlyHint annotation by stating inputs are validated server-side and it returns a deliverable, indicating no side effects. It adds context about the output being audited and structured, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description front-loads the purpose but includes a verbose reference case that may not be universally helpful. It is somewhat concise but could be tighter and more structured for quick parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nested parameters and no output schema, the description lacks essential details about parameter semantics and return structure. It assumes prior knowledge of 'documented case fields' and omits the async option, leaving many gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 20% schema description coverage, the description provides no explanation of the parameters (company, targetMarket, preferences, focus). It merely says 'send the documented case fields' without detailing what each field means, leaving the agent without critical guidance for a complex nested schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool produces a market entry strategy deliverable, with specific outputs like Porter's 5 forces and entry modes. However, it does not explicitly differentiate from many sibling strategy tools such as geographic_expansion or market_sizing, leaving room for ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when needing a detailed market entry plan but provides no explicit when-to-use or when-not-to-use guidance. The reference case offers a concrete example but no comparison to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
marketing_roi_dashboardCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| arpuEur | Yes | ||
| channelData | Yes | ||
| companyName | Yes | ||
| periodLabel | Yes | ||
| totalRevenueAttribEur | Yes | ||
| targetAttributionModel | Yes | ||
| currentAttributionModel | Yes | ||
| totalMarketingBudgetEur | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating safe read operation. The description adds that inputs are validated server-side and that it returns an audited deliverable, but does not clarify timeliness (via async parameter) or any constraints beyond the schema. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but inefficient, containing jargon ('Gapup agent-payable C-suite expertise') and a verbose reference case that could be condensed. The core purpose is not immediately front-loaded; the first sentence mixes the name with esoteric terms.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 9 parameters (8 required) and no output schema, the description is severely lacking. It does not explain the input fields, the structure of the deliverable, or how to use the async feature. The reference case provides an example but not sufficient guidance for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 11%, with only the 'async' parameter described. The description does not explain any of the 8 required fields (e.g., companyName, channelData structure). It vaguely says 'send the documented case fields' without specifying what they are. This forces an agent to rely entirely on the schema, which has minimal descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 related to marketing ROI dashboard. It gives a specific reference case, making the purpose clear. However, it does not explicitly differentiate from sibling marketing tools like 'brand_builder' or 'competitive_deep_dive', relying on the name for distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 phrase 'Gapup agent-payable C-suite expertise (CMO)' is confusing and does not help an agent decide when to invoke it. There is no mention of prerequisites or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_research_briefARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| geo | No | Optional geography to scope the brief (country name, region, or continent — e.g. 'France', 'Southeast Asia') | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| topic | Yes | Market or sector to research (e.g. 'electric vehicle batteries', 'B2B SaaS CRM Europe', 'telemedicine Africa') | |
| sector | No | Optional parent sector to disambiguate the topic (e.g. 'healthcare', 'energy', 'software') |
Output Schema
| Name | Required | Description |
|---|---|---|
| geo | Yes | |
| risks | Yes | |
| topic | Yes | |
| sector | Yes | |
| trends | Yes | |
| sources | Yes | All sources consulted, with URL and retrieval status |
| overview | Yes | Executive summary of the market |
| key_players | Yes | |
| generated_at | Yes | ISO-8601 timestamp of generation |
| market_size_estimate | Yes | Market size estimate with hypotheses. All figures sourced or marked unavailable. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and openWorldHint. The description adds valuable behavioral context: data is assembled live from keyless public sources (Wikipedia, World Bank, REST Countries) and fields that cannot be sourced are marked 'unavailable' rather than estimated. This goes beyond what annotations provide. A minor gap is not mentioning pagination or rate limits, but overall strong.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured in two paragraphs: first explains the output structure, second covers usage and data sources. It is concise without redundant information. Each sentence contributes to understanding. Could be slightly more compact but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of generating a multi-section research brief, the description adequately covers purpose, inputs, outputs, source limitations, and asynchronous execution. The presence of an output schema reduces the burden. A minor omission is no mention of result format (e.g., JSON structure) but that is likely in the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema coverage is 100%, so the schema already documents all parameters. The description repeats the parameter names and adds usage examples (e.g., 'electric vehicle batteries') and clarifies the async behavior. This adds some value but does not significantly enhance understanding 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a 'structured, sourced market research brief' and enumerates six specific sections. The verb 'generate' and resource 'market research brief' are specific. While it could differentiate from related sibling tools like 'market_sizing' or 'competitive_deep_dive', it does not explicitly do so, preventing a score of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit scenarios for when to use the tool: 'assess a new market, validate a business opportunity, prepare a pitch, or benchmark a sector before a strategic decision.' It also names the data sources. However, it lacks guidance on when not to use it or explicit alternatives, so it does not achieve a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_sizingARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| target | Yes | ||
| horizon | No | ||
| product | Yes | ||
| approach | No | ||
| competitorComps | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint. The description adds value by noting inputs are validated server-side and the deliverable is audited. No contradiction with annotations; adds behavioral context beyond safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a reference case; no fluff. Front-loaded with core purpose and key attributes. Efficiently communicates what the tool does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (6 params, nested objects, no output schema), the description provides a clear deliverable type and a concrete example. It omits output format details but is sufficient for an agent to understand scope and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (17%), and the description does not detail each parameter but provides a reference case with example values (e.g., TAM €48Md). This helps infer usage but leaves many parameters (like target, product, approach) unspecified beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it performs market sizing (TAM/SAM/SOM) and returns a structured, audited deliverable. The verb 'Dimensionnement' and resource 'marché' are specific, and the reference case adds concrete context. It distinguishes from siblings by focusing on a specific CMO-oriented market sizing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage by stating inputs are validated server-side and to send documented case fields, but provides no explicit guidance on when to use this tool vs. alternatives among the many siblings. No when-not 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.
ma_tax_efficiency_mapperARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_structure | No | Type of M&A transaction structure | |
| transaction_value | No | Deal value in USD millions | |
| target_jurisdiction | Yes | ISO 3166-1 alpha-3 country code of the target entity | |
| acquirer_jurisdiction | Yes | ISO 3166-1 alpha-3 country code of the acquiring entity | |
| include_transfer_pricing | No | Whether to analyze transfer pricing risks |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| tax_treaties | No | |
| efficiency_score | No | |
| target_tax_rates | No | |
| acquirer_tax_rates | No | |
| transfer_pricing_risk | No | |
| permanent_establishment_risk | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds valuable context: data sources (World Bank, IMF, SEC EDGAR) and an async requirement to avoid timeout. This goes beyond annotations but doesn't cover failure modes or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with purpose and audience, then inputs, outputs, data sources, and async note. Each sentence adds value, but the async requirement is repeated from the schema parameter description, slightly reducing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the availability of output schema and annotations, the description covers purpose, inputs, outputs, data sources, and async behavior. It is complete for the tool's complexity, leaving no obvious gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are fully described in the schema. The description summarizes inputs (jurisdictions, deal structure, transaction value) but adds no new meaning 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes tax efficiency for cross-border M&A deals, mapping withholding tax rates, transfer pricing regulations, and permanent establishment risks. This distinguishes it from sibling tools like ma_arbitrage_hunter or ma_deal_screener, 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description targets CFOs evaluating cross-border M&A deals, providing clear context. However, it does not explicitly state when not to use this tool or mention alternatives among siblings, 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.
meddic_scoringCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| deals | Yes | ||
| company | Yes | ||
| product | Yes | ||
| salesCycle | No | ||
| targetWinRate | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true, which cover the safety profile. The description adds no additional behavioral traits beyond stating it returns a deliverable, but 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but includes confusing jargon ('Gapup agent-payable C-suite expertise') and a reference example. While not verbose, it sacrifices clarity for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 6 parameters, no output schema), the description is far from complete. It lacks details on the output format, MEDDIC scoring logic, and required input structure beyond a vague reference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (17%), yet the description does not explain the parameters or their meanings. It merely says 'send the documented case fields,' which is inadequate for an AI agent to correctly fill in 6 nested parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Scoring MEDDIC du pipeline' and mentions returning a structured deliverable, but it does not clearly specify the exact functionality or distinguish it from siblings like 'deal_coach' or 'sales_pipeline_forecast'. The reference case adds context but is not necessary for clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only mentions that inputs are validated server-side, which is implicit but does not help with decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_behavior_drift_monitorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| threshold | No | Drift threshold for alerting | |
| currentOutputs | No | Recent model outputs to analyze for drift | |
| baselineMetrics | No | ||
| modelIdentifier | Yes | Unique identifier for the model being monitored |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| driftMetrics | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, and openWorldHint. Description adds that it compares current outputs to MLCommons benchmarks, returns structured drift metrics with statistical significance, and sources data from public APIs. This enriches behavioral context beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four concise sentences with no redundancy. Front-loaded with the core function, followed by audience, input/output summary, and data source. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, target users, inputs, outputs, and data source. Output schema documents return values. Misses guidance on the async parameter, which is present in the schema but not addressed in the description. Otherwise complete for a monitoring tool with annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is high (80%) with most parameters described. Description mentions 'model outputs or identifiers' (mapping to currentOutputs and modelIdentifier) and implicitly threshold, but does not elaborate on async or baselineMetrics. Adds some value but not significantly beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool monitors AI model output drift, compares against MLCommons safety benchmarks, and targets risk/compliance personas. Differentiates from siblings like bias_amplification_tracker or model_safety_certification_checker by specifying the drift focus and benchmark source.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides context that it is for risk and compliance personas to detect safety/alignment issues, but does not explicitly state when to use this tool vs alternatives or when not to use it. No mention of exclusions or sibling comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_safety_certification_checkerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_id | Yes | Unique identifier for the AI model | |
| standard | No | Safety standard to check against | |
| certification_id | No | Specific certification ID to verify |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| compliance | No | |
| last_verified | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. Description adds that results are structured with source references, but does not cover error handling or edge cases. Adds moderate context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences, front-loaded with purpose and intended audience. No filler, every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Describes purpose, inputs, outputs, and target personas. Output schema exists, so return values are covered. Lacks details on error scenarios but adequate for typical read-only tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 4 parameters with descriptions. Description mentions model identifiers and certification IDs, echoing schema. No additional semantic value beyond schema, so baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'verifies' and resource 'AI model safety certifications' against named standards (MLCommons, IEEE 7000). Clearly distinguishes from siblings like safety_guardrail_breach_analyzer by focusing on certification compliance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Targets risk management personas and specifies use case of compliance assessment. Provides clear context but does not explicitly state when not to use or name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
monte_carlo_portfolioARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | simulate = full Monte Carlo GBM | glide_path = lifecycle target-date allocation | stress_test = 4 historical crisis scenarios | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| assets | Yes | Portfolio assets. Weights must sum to 1.0 (auto-normalized if not). | |
| simulations | No | Number of Monte Carlo simulations (1000-100000). Default 10000. | |
| horizon_years | Yes | Investment horizon in years (1-50). | |
| target_value_eur | No | Target terminal portfolio value in EUR. Used to compute probability_target_achieved. | |
| confidence_intervals | No | Percentiles to compute in the output distribution. Default [5, 25, 50, 75, 95]. | |
| initial_investment_eur | Yes | Initial capital in EUR (e.g. 100000 for €100k). | |
| withdrawals_annual_eur | No | Annual withdrawal amount in EUR for decumulation phase (e.g. 50000 for €50k/yr). | |
| contributions_annual_eur | No | Annual contribution in EUR (e.g. 12000 for €1000/month). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and open-world. Description adds performance metric (<3s) and confirms it's pure-compute with no side effects, consistent with 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Packed with relevant information, well-structured from purpose to details. Could be slightly shorter but every sentence adds value. Good front-loading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers inputs, outputs, modes, performance, default assumptions, and intended users. No output schema, but output types are described. Sufficient for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage with descriptions. Tool description adds value by explaining default ticker returns/volatilities and the meaning of modes, enhancing parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it's a Monte Carlo portfolio simulation using GBM, lists outputs (distribution, percentiles, drawdown, Sharpe), and three distinct modes. Distinguishes from data-fetching tools by emphasizing 'no external data needed'. Provides default ticker assumptions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explains three modes with concrete examples and intended use cases. Lists target users (ICP). Does not explicitly state when not to use, but the context is sufficient for most agents.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mttr_breakdown_analyzerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| repo | Yes | Full GitHub repository name (owner/repo) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| since | Yes | Start date for analysis (ISO 8601) | |
| until | Yes | End date for analysis (ISO 8601) | |
| snykToken | No | Snyk API token for vulnerability data (optional) | |
| githubToken | Yes | GitHub personal access token for API access |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| breakdown | No | |
| topContributors | No |
Tool Definition Quality
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 context about ingesting GitHub and Snyk data and returning structured analysis, which is helpful but not extensive. No indication of rate limits, data freshness, or other behavioral nuances. Given annotations, the description adds moderate value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is two sentences long and front-loaded with the tool's primary action ('analyze'). The first sentence is direct; the second provides additional context. Some redundancy ('helping you identify systemic weaknesses') could be trimmed, but overall it is reasonably concise and structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complexity is moderate (6 params, 4 required). Description covers main inputs and purpose. However, it does not explain the async parameter behavior or when to use it, even though the schema mentions async. Output schema exists but description only vaguely mentions 'structured analysis'. Missing details may affect agent's ability to use tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers 100% of parameters with descriptions, so the schema already documents them. The description only generically mentions 'GitHub repository details and time range' without adding new semantics. Baseline score of 3 is appropriate as the description does not exceed schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly specifies the tool's purpose: analyzing MTTR breakdown into root causes (code defects, infrastructure failures, process bottlenecks). It identifies the target audience (CTO) and the inputs (GitHub repo, Snyk data). The verb 'analyze' and resource 'MTTR breakdown' are specific and distinct from sibling tools, none of which focus on MTTR.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description states the tool is for analyzing incident response efficiency and provides context for when to use it: to identify systemic weaknesses in incident resolution. However, it does not explicitly state when not to use it or mention alternative tools. The guidance is clear but lacks exclusion criteria.
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_mapARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| depth | No | Dependency chain depth to analyze | |
| scope | No | Analysis scope: full supply chain or critical dependencies only | |
| sector | No | NIS2 sector classification (e.g., 'energy', 'transport') | |
| organizationId | Yes | Unique identifier for the organization (e.g., VAT number or LEI) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| dependencies | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds that outputs are structured with criticality scores and regulatory references, but this is consistent and adds some context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at three sentences, front-loaded with the core purpose, and each sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 summarizes outputs and includes key details about regulatory sources and target users. It is complete enough for a tool with 5 parameters and an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. The description generically mentions 'organization identifiers and optional scope filters' but does not add specific 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a visual dependency map for NIS2 supply chains, scoring criticality based on regulatory sources. It distinguishes from sibling tools by specifying context, users, and output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates it's designed for legal and compliance teams to identify high-risk third-party dependencies, providing clear context. However, it does not explicitly state when not to use or suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
observability_log_pattern_minerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| tactic | Yes | MITRE ATT&CK tactic ID (e.g., 'TA0005') | |
| technique | No | MITRE ATT&CK technique ID (e.g., 'T1059') | |
| log_source | No | Log source type (e.g., 'AWS CloudTrail', 'Windows Event Log') | |
| max_results | No | ||
| threat_actor | No | Threat actor group name (e.g., 'APT29') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| metadata | No | |
| patterns | Yes | |
| warnings | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, which are not contradicted. The description adds the async behavior detail (timeout avoidance) but does not fully disclose other behavioural traits like data freshness or potential delays. With annotations covering the safety profile, a score of 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is reasonably concise at four sentences, though the opening 'As a CTO' is slightly superfluous. The key information is front-loaded, and each 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a rich output schema, the description covers inputs, outputs, async usage, and purpose comprehensively. It provides sufficient context for an agent to select and invoke the tool correctly, with no major gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 6 parameters with descriptions, but the description adds value by explaining the broader context of outputs (structured patterns with MITRE mappings) and the purpose of inputs (e.g., 'threat actor groups'). This goes beyond the schema's parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool extracts anomalous log patterns from public breach reports and MITRE ATT&CK techniques to optimize SIEM rules. It distinguishes itself from sibling tools like 'observability_metric_anomaly_detector' by focusing on log patterns from breach reports rather than metric anomalies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for use ('Ideal for reducing false positives and improving breach detection coverage') and mentions async parameter to avoid timeout. However, it does not explicitly state when to use this tool over alternatives or when not to use it, leaving room for ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
observability_metric_anomaly_detectorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| region | No | ||
| metricType | Yes | ||
| instanceType | No | ||
| observedValue | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| cveRisks | No | |
| warnings | No | |
| anomalyScore | No | |
| benchmarkValue | No | |
| deviationPercent | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, covering basic safety. The description adds valuable context by specifying that the tool compares metrics against 'AWS public benchmarks and CVE-linked hardware risks' and returns 'a risk assessment with potential root causes'. This goes beyond annotations to explain the underlying behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three focused sentences plus keywords. It front-loads the core purpose, then explains input/output, then lists use cases. Every sentence adds value without redundancy. The keyword line aids discoverability without bloating the narrative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low schema coverage and the presence of an output schema, the description could be more complete. It explains what the tool does and its use cases but does not describe the output format (risk assessment) in sufficient detail. It also omits prerequisites or limitations. However, for a read-only tool with clear purpose, it is largely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 partially compensates for 'metricType' by listing example values (CPU, latency, memory) and for 'observedValue' by giving examples (CPU utilization, request latency). However, it does not describe 'region', 'instanceType', or the role of 'async', leaving significant gaps for a tool with 5 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'identify anomalous cloud metrics (CPU, latency, memory)' by comparing against 'AWS public benchmarks and CVE-linked hardware risks'. This specific verb and resource set it apart from sibling tools like observability_log_pattern_miner, which focuses on log patterns. The mention of concrete benchmarks and CVEs provides 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Ideal for performance troubleshooting, security hardening, and capacity planning', which gives context but does not explicitly state when to use this tool versus alternatives. There is no mention of when not to use it or which sibling tools serve similar purposes. The guidance is 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.
onboarding_salariesCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| roles | Yes | ||
| company | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and openWorldHint=true, but the description does not clarify the behavioral implications. It does not disclose whether the tool modifies anything, requires permissions, or has side effects. The phrase 'Gapup agent-payable C-suite expertise (COO)' is opaque and adds no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but includes extraneous information (reference case, cryptic phrase) that does not clarify the tool's purpose. The main action is front-loaded, but the reference case adds noise. It could be more concise and focused.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the nested input schema, low coverage, and ambiguous annotations, the description is incomplete. It does not describe the output format, behavior for async mode, or any prerequisites. The tool's complexity is not adequately matched by the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds no parameter-level details beyond 'send the documented case fields', which is unhelpful. It does not explain the purpose of 'focus', 'roles', or 'company' fields, leaving the agent to rely solely on the bare schema names and types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description vaguely states it 'returns a structured, audited deliverable' for 'Onboarding opérationnel des salariés', but fails to specify what the deliverable contains or how it relates to salaries/onboarding. The reference case is specific and not generalizable. It does not clearly distinguish from sibling tools like 'recruiting_architect' 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.
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. The only instruction is 'send the documented case fields', which is about input format, not usage context. There are no explicit when-to-use or when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
operational_dashboardsCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| techStack | Yes | ||
| departments | Yes | ||
| kpiRequests | Yes | ||
| primaryDashboardTool | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=true, which the description does not contradict. The description adds 'Inputs are validated server-side', which hints at validation behavior, but does not disclose the nature of the deliverable or any side effects. Given annotations already cover read-only and open-world, the description adds moderate value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (3 sentences) but includes a reference case that may not be essential. It is moderately concise but lacks a clear initial statement of purpose; the title and first sentence are somewhat front-loaded, but the jargon reduces clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a complex input schema with nested objects and 6 parameters, but the description does not explain the output format or return value (no output schema). The brief description is insufficient for an agent to understand the tool's capabilities and limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (17%), but the description does not explain any parameter meanings beyond what is in the schema. The reference case provides an example but not parameter-level details. The description should compensate for the schema gap but fails to do so.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description mentions 'Returns a structured, audited deliverable' and the title 'Dashboards opérationnels' suggest the tool provides operational dashboards, but the verb is ambiguous (returns vs creates). The reference case implies dashboard generation, but the purpose is not explicitly stated. Distinguishing from hundreds of siblings is not achieved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. The only usage hint is 'Inputs are validated server-side — send the documented case fields', which is a procedural note, not a when-to-use or when-not-to-use directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oss_dependency_velocity_trackerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| packages | Yes | ||
| lookbackDays | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| metrics | No | |
| sources | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds that the tool 'fetches release history and version adoption data from npm registry and libraries.io', confirming external data fetching and non-destructive behavior. It doesn't mention rate limits or async behavior, but the schema covers 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a concise 3-sentence paragraph. It front-loads the purpose and quickly defines inputs and outputs. The first sentence targeting 'As a CTO' adds slight verbosity but is acceptable. Overall, it is tidy and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core intent, input, and high-level output (metrics and warnings). Since an output schema exists, detailed return values aren't needed. However, it omits mention of the async parameter for long running tasks and doesn't explain the lookbackDays parameter, which reduces completeness for a 3-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% (only async described). The description explains that packages expects 'a list of package names and optional version ranges', adding meaning beyond the schema for that parameter. However, it fails to mention the lookbackDays parameter or the structure of version ranges, leaving a gap for 2 of 3 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it tracks 'update velocity' of open-source dependencies and links to DORA metrics, which is a specific verb+resource. It distinguishes from siblings like dependency_vulnerability_scan (vulnerabilities) and social_engagement_velocity_tracker (social media) by focusing on dependency freshness and velocity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the use case: assessing dependency impact on DORA metrics. It doesn't explicitly state when not to use or provide alternatives, but the context of sibling tools makes differentiation clear. A dedicated exclusions list would improve it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ossf_scorecard_trend_analyzerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| lookbackDays | No | Number of days to analyze trends for | |
| repositories | Yes | List of GitHub repositories in owner/repo format | |
| minScoreThreshold | No | Minimum acceptable score to flag as risky |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| results | No | |
| sources | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent behavior. The description adds context about data sources (OSSF Scorecard API, GitHub Archive) and output structure (score deltas, check failures, risk flags), enhancing transparency 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at 4 sentences, front-loaded with purpose and audience, and efficiently covers key aspects without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity, existence of output schema, and good annotations, the description provides sufficient context including data sources and output components. Missing details like error handling are acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions. The description reiterates the input format (owner/repo) but adds no new meaning to parameters beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'analyze' and the resource 'OSSF Scorecard trends', specifying the goal of identifying security regressions or deteriorating project health. While the tool is unique among siblings, no explicit sibling differentiation is provided.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for proactive dependency management by a CTO for top 10-50 dependencies, but lacks explicit guidance on when not to use the tool or how it compares to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
outbound_sequencerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| icp | Yes | ||
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| offer | Yes | ||
| excludedAngles | No | ||
| targetAccounts | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's mention of 'returns a structured, audited deliverable' is consistent and adds minor context. No destructive behavior is implied, and inputs validated server-side is noted. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, but includes a specific reference case that may not be necessary for general use. Could be more concise by removing the example or stating a generic purpose first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters with nested objects, no output schema), the description is incomplete. It lacks details on the output format, how to interpret results, or any prerequisites. The sibling list is large, so more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 parameters like 'offer' or 'icp' beyond the schema. The reference case hints at structure but 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description mentions 'Séquences outbound' and 'agent-payable C-suite expertise (CRO)' and says it returns a structured deliverable, but relies heavily on a specific reference case (Gapup Hub) without a clear general statement. The purpose is somewhat clear but not fully distilled for general understanding.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 among the many sibling tools. The description does not mention prerequisites, scenarios, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paid_ads_optimizerBRead-onlyInspect
Optimiseur de publicités payantes — Gapup agent-payable C-suite expertise (CMO). Returns a structured, audited deliverable. Reference case: Spendesk (Google + LinkedIn · €45k/mo) — €9k/mo gaspillés identifiés · ROAS LinkedIn ×2.4. Inputs are validated server-side — send the documented case fields.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| campaigns | Yes | ||
| targetMetric | Yes | ||
| audienceDescription | Yes | ||
| totalMonthlyBudgetEur | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already set readOnlyHint=true, indicating no modification. The description adds that inputs are validated server-side and returns a deliverable, but doesn't disclose other behavioral traits like rate limits or specific output format. Adequate given annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise, with a brief introductory line and a reference case. It avoids unnecessary detail, though the reference case could be considered slightly tangential. No structural issues.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (nested objects, 6 parameters, no output schema), the description is incomplete. It doesn't explain what the deliverable contains, how to interpret results, or how to handle the async parameter beyond its own description. The tool's behavior and output are underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (17%), only the 'async' parameter has a description. The tool description does not elaborate on key parameters like company, campaigns, or targetMetric, leaving the agent to rely solely on the schema structure. Insufficient compensation for low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool optimizes paid ads and returns a structured deliverable. The reference case provides context, but it doesn't explicitly differentiate from sibling tools like programmatic_attribution_calibrator or seo_keyword_research. The purpose is clear but not fully distinguished.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for paid ads optimization, targeting C-suite (CMO), but lacks explicit guidance on when to use vs. alternatives. No exclusion criteria or alternative tool mentions, leaving the agent to infer usage from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
partnership_synergiesARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| constraints | No | ||
| selfCompany | Yes | ||
| strategicAxis | Yes | What strategic axis to unlock through partnership (e.g. 'enter US market via distribution', 'leverage AI infra without rebuild') | |
| currentPartnerships | No | Existing alliances to factor in |
Output Schema
| Name | Required | Description |
|---|---|---|
| kpis | No | 3-5 headline KPI bubbles |
| sources | No | |
| recommendations | No | Prioritised next steps |
| executiveSummary | Yes | Board-ready partnership opportunity overview |
| partnershipTargets | Yes | 5-12 ranked partnership targets |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, indicating safe, read-only behavior. The description adds value by detailing the output structure (scored targets with rationale and playbook) and confirming no side effects. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences long, which is efficient. The first two sentences cover purpose and output, the third covers usage, and the fourth covers inputs. While the structure is logical, a more scannable format (e.g., bullet points) could improve readability, but it remains concise without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema), the description covers the main purpose, usage, and key inputs. It omits details on optional parameters and does not reference the output schema (though that exists separately). Overall, it provides sufficient context for an agent to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 (selfCompany and strategicAxis) with examples like 'enter US market via distribution.' However, it does not explain optional parameters such as focus, constraints, or currentPartnerships, leaving gaps in understanding for those inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 and rank strategic partnership opportunities for a company.' It specifies the output (5-12 targets scored on multiple dimensions) and distinguishes it from siblings by mentioning 'M&A target screening before deeper due diligence' and 'business-development or alliance ideas,' setting it apart from related tools like market_entry_strategist or ma_deal_screener.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context: 'use this tool when the user wants business-development or alliance ideas, or M&A target screening.' While it does not list when not to use or explicitly name alternatives, the scenarios are clearly defined and help an agent decide when to invoke this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
patent_landscapeARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | search: keyword/inventor/assignee search; landscape: aggregate distributions; lookup: fetch by patent number. Default: "search" | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Keywords, company/inventor name, or patent number (e.g. "machine learning", "Tesla Inc", "US10000000B2") | |
| date_to | No | ISO date YYYY-MM-DD — latest filing date | |
| date_from | No | ISO date YYYY-MM-DD — earliest filing date | |
| max_results | No | Max patents to return (5-50). Default: 20 | |
| jurisdictions | No | Jurisdictions to include. Default: ["US","EP","WO"] |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| query | Yes | |
| status | Yes | |
| patents | Yes | |
| sources | Yes | |
| landscape | No | |
| quality_score | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description extensively discloses behavioral traits beyond annotations: SLA (≤24s p95), parallel fetches (8s per source), cache TTL (24h), quality scoring, and async behavior. Annotations already convey readOnly and openWorld hints, and the description adds crucial context about performance and result staleness 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the essential purpose, modes, and sources, then proceeds to use cases, SLA, and technical details. Every sentence serves a clear purpose without redundancy. Despite its length, it remains efficient and well-organized for a complex tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity, output schema presence, and complete schema coverage, the description covers all necessary aspects: modes, parameters, sources, SLA, caching, quality scoring. It leaves no significant gaps for an agent to understand invocation and expected behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions (e.g., mode enum, query examples, default values). The description adds minimal further meaning beyond restating these, such as elaborating on mode behavior and offering example use cases. Baseline 3 is appropriate as the schema carries the primary semantic load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Search, analyze and map patent landscapes' and explicitly lists three distinct modes (search, landscape, lookup). It differentiates from siblings like patent_landscape_async and patent_ownership_audit by focusing on synchronous analysis with multiple aggregated outputs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides specific use cases (FTO analysis, R&D gap identification, VC due diligence, etc.) and explains the three modes, giving strong contextual guidance. However, it does not explicitly state when to avoid this tool in favor of alternatives like patent_ownership_audit or the async variants.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
patent_landscape_asyncARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | search / landscape / lookup. Default: "search" | |
| query | Yes | Keywords, company/inventor name, or patent number (e.g. "machine learning", "Tesla Inc") | |
| date_to | No | ISO date YYYY-MM-DD — latest filing date | |
| date_from | No | ISO date YYYY-MM-DD — earliest filing date | |
| max_results | No | Max patents to return (5-200). Default: 20 | |
| jurisdictions | No | Jurisdictions to include. Default: ["US","EP","WO"] | |
| include_citation_graph | No | If 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
| Name | Required | Description |
|---|---|---|
| job_id | Yes | Unique job identifier — pass to patent_landscape_result |
| status | Yes | |
| eta_seconds | Yes | |
| submitted_at | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and openWorldHint. The description adds that the tool returns immediately with a job_id, estimates 180s processing, and that include_citation_graph adds significant time. No contradictions; it provides valuable behavioral context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single well-structured paragraph, front-loading key features, then use cases, then async workflow. No unnecessary words; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (async, optional graph, polling vs webhook), the description covers all essential aspects: parameters, behavior, use cases, and result retrieval. Output schema exists, so return values need not be detailed. It is complete and self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, the description adds significant value: it explains the max_results difference versus sync mode, the effect of include_citation_graph, and the expected response time. It enriches each parameter's meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is an async extended variant of patent_landscape, listing specific capabilities (max_results up to 200, include_citation_graph). It distinguishes from its sync sibling and the polling result tool, making purpose unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells when to use async mode (e.g., for large-scale analyses) and how to retrieve results (polling or webhook). It lists concrete use cases (R&D white-space, FTO audits, etc.) and alternatives (sync variant, webhook management).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
patent_landscape_resultARead-onlyIdempotentInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by patent_landscape_async (prefix: patl_) |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it explains the polling mechanism, status transitions (pending, completed, failed, not_found), and the 24h TTL for job_id expiration. This complements the readOnlyHint, idempotentHint, and destructiveHint annotations nicely.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loading the purpose and then listing statuses. Every sentence adds necessary information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 covers all necessary aspects: polling logic, expected statuses, TTL, and the async prerequisite. It is complete for a polling tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the baseline is 3. The description adds value by specifying that the job_id is returned by patent_landscape_async and has the prefix 'patl_', providing helpful context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool polls the result of a patent_landscape_async job, distinguishing it from the async initiation tool. It lists the four possible statuses and their meanings, making the purpose specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises calling this after the eta_seconds hint (~180s) from patent_landscape_async, providing clear when-to-use guidance. It implicitly indicates this is for polling results, not for starting a job, but does not explicitly state when not to use it. The sibling context shows patent_landscape and patent_landscape_async as alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
patent_ownership_auditARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| dateRange | No | Optional date range for patent filings | |
| employeeIds | No | List of employee or contractor IDs (optional if names provided) | |
| employeeNames | Yes | List of employee or contractor full names to audit |
Output Schema
| Name | Required | Description |
|---|---|---|
| gaps | No | |
| status | Yes | |
| patents | No | |
| sources | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint, openWorldHint, idempotentHint. The description adds value by disclosing data sources (USPTO PatFT, EPO Espacenet) and outputs (list, ownership status, flagged gaps, assignment details). It reveals the tool's external data reliance and scope, enhancing transparency 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured paragraph of five sentences. It front-loads the core purpose, then covers user, inputs, outputs, sources, and keywords. No superfluous information; every sentence contributes meaningfully.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 need not detail return values. It covers purpose, user, inputs, outputs, and sources. Missing aspects like error handling or data freshness are minor; overall the description equips the agent with sufficient operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 reiterates that inputs are employee/contractor names or IDs with optional date range, but does not add technical detail beyond schema. Credit for clarifying the purpose of inputs in context, but overall minimal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'audits' and the resource 'patent ownership' for employees/contractors. It identifies gaps in patent rights assignment. The tool is distinct from sibling tools like patent_landscape or ip_employee_invention_tracker, and the description includes 'patent audit' as a keyword, making purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies the primary user ('designed for CHROs') and context ('ensure IP compliance and mitigate legal risks'). It lists inputs (names/IDs, optional date range) and provides output expectations. While it doesn't explicitly state when not to use or name alternatives, the context is clear enough for appropriate selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
payment_rails_cost_analyzerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| amount | Yes | Transaction amount in source currency | |
| source_country | Yes | ISO 3166-1 alpha-2 country code of payment origin | |
| source_currency | No | ISO 4217 currency code of source amount | |
| destination_country | Yes | ISO 3166-1 alpha-2 country code of payment destination | |
| destination_currency | No | ISO 4217 currency code of destination amount |
Output Schema
| Name | Required | Description |
|---|---|---|
| amount | No | |
| status | Yes | |
| fx_rate | No | |
| sources | No | |
| warnings | No | |
| total_cost | No | |
| source_country | No | |
| settlement_time | No | |
| source_currency | No | |
| destination_country | No | |
| destination_currency | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, openWorldHint, idempotentHint) are consistent with the description. The description adds valuable context about data sources (ECB FX rates, World Bank data) that goes beyond structured fields. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences with no fluff. The first sentence captures the core purpose, followed by input/output, data sources, and ideal use. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 adequately explains what the tool returns (cost breakdown, FX rates, settlement times). For a read-only analytical tool with 6 parameters and clear annotations, this description is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters have schema descriptions (100% coverage), so baseline is 3. The description adds meaning by explaining how the inputs (source/destination countries, amount) are used to produce output. It does not mention optional currency parameters, which is a minor gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the tool's function: comparing cross-border payment rail costs with FX fees and settlement times. It uses specific verbs ('compare', 'input', 'receive') and identifies distinct resources (SWIFT, SEPA, local ACH, stablecoins). This distinguishes it from sibling 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the ideal use case ('optimizing international payment strategies and reducing transaction expenses') but does not explicitly advise when not to use the tool or mention alternatives. However, the context is clear enough for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pentest_scope_estimatorCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_type | Yes | ||
| tech_stack | Yes | ||
| asset_count | No | ||
| target_geos | No | ||
| engagement_type | No | ||
| retest_included | No | ||
| business_context | Yes | ||
| compliance_frameworks | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true. Description adds that inputs are validated server-side and returns a structured deliverable, but does not detail auth requirements, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose, containing multiple questions and marketing phrases. It could be condensed to a few sentences without losing essential meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 9 parameters, no output schema, and low schema coverage, the description is insufficient. It does not explain return values, behavior for different parameter combinations, or prerequisites, leaving the agent under-informed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 11%, with most parameters lacking descriptions. The description lists example questions referencing some parameters (scope_type, tech_stack) but does not explain individual parameter semantics or how to use them correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool estimates pentest effort and cost based on scope, with example questions. However, it includes excessive marketing language ('Gapup agent-payable C-suite expertise (RISK)') that detracts from clarity. The purpose is distinct from siblings but could be more direct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, nor when not to use it. The description provides example queries but no explicit criteria for selection among many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pitch_deck_storylineARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| audience | Yes | Target audience — adapts tone + emphasis + Q&A bank | |
| keyFacts | Yes | Hard facts to weave into the deck (traction numbers, milestones, awards) | |
| slideCount | Yes | 12 = standard VC deck, 15 = bank-friendly with annexes, 20 = growth/strategic |
Output Schema
| Name | Required | Description |
|---|---|---|
| kpis | No | 3-5 headline KPI bubbles surfaced from keyFacts |
| slides | Yes | 8-20 slide objects ready to export to Google Slides / Notion / Pitch.com |
| qaBanks | Yes | 10-15 anticipated investor questions with recommended answers |
| recommendations | No | Fundraising preparation actions |
| executiveSummary | Yes | One-paragraph elevator pitch distilled from the deck |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description does not contradict these. It adds minimal behavioral context beyond noting the async capability (via the async parameter description) and that the output is 'deck JSON ready to export.' No mention of rate limits, authentication, or side effects, but the annotations cover the key 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is around 100 words, well-structured, and front-loaded with the core action. Every sentence adds value: purpose, output summary, usage guidance, inputs, and even a touch of personality ('Delivered by Sarah'). No redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, nested objects, enums, and an existing output schema), the description covers all essential aspects: what the tool does, when to use it, what to provide, and what to expect as output. The addition of Q&A bank and visual hints further enriches completeness. The AI has enough context to decide whether to invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 80%, so the schema already documents most parameters. The description adds valuable context: for slideCount, it provides example mappings ('12 = standard VC deck, 15 = bank-friendly...'); for keyFacts, it says 'Hard facts to weave into the deck (traction numbers, milestones, awards)'; and it summarizes inputs as 'company profile and target audience type.' This enhances understanding beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Build a complete investor pitch-deck storyline for a company.' It specifies the output format (8-20 slides with title, key points, speaker notes, visual hints, plus Q&A bank). The verb 'build' and resource 'pitch-deck storyline' are specific, and the tool is clearly differentiated from siblings by its focus on fundraising presentations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance: 'When to use this tool: the user is preparing a fundraise, a board meeting, or an investor presentation.' It does not explicitly mention when not to use it or alternatives, but the context is clear enough for an AI to infer appropriate usage.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum events (default 20) | |
| includeClosed | No | Include finished events (default false) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral transparency burden. It discloses that the tool lists live events, ranks by volume, and returns title, description, dates, and URL. However, it does not mention potential rate limits, pagination, or explicitly note that it is a read-only operation beyond the verb 'list.'
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences: the first states the action and ranking, the second explains the relationship to the sibling tool, and the third lists the return fields. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with optional parameters, the description covers purpose, usage context, and return fields. No output schema is needed since fields are described. It lacks details on the async parameter, but that is already in the schema. Adequately complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage of parameter descriptions, so the description does not need to add much. It does not elaborate on how 'limit' or 'includeClosed' affect results, but the schema already explains these parameters adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and clearly identifies the resource as 'live Polymarket events, ranked by volume.' It distinguishes itself from the sibling tool polymarket_markets by explaining that an event groups several related markets and that users should use polymarket_markets for pricing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage guidance by stating 'use it to discover a topic, then polymarket_markets to price it,' naming an alternative tool and indicating the sequential workflow. It does not explicitly cover when-not-to-use cases, but the guidance is clear enough for a simple list tool.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum markets (default 20) | |
| query | No | Free-text filter on the market question | |
| includeRaw | No | Include Polymarket's original fields (default false) | |
| includeClosed | No | Include settled markets (default false) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description lists the return fields (question, implied probability, volume, liquidity, end date, URL) and notes the probability is derived from outcome price. With no annotations provided, this offers some transparency, but it does not disclose potential latency, rate limits, or the behavior of the 'async' parameter (which is present in the schema but not explained).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. It front-loads the core purpose and compacts the return fields and filter capability into a clear, scannable structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple query tool with five optional parameters and no output schema, the description gives a solid overview of the tool's purpose and return data. It lacks guidance on sorting (beyond 'ranked by volume'), pagination behavior, or async usage, which are minor gaps given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the parameters are already well-documented. The description adds minimal value by restating the optional free-text filter on the question, but it does not explain parameter interactions or provide additional context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 Polymarket prediction markets'), with additional detail about ranking by volume. This clearly distinguishes it from sibling tools like 'polymarket_events' (events) and 'kalshi_markets' (a different prediction market), making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates this is for querying live Polymarket markets ranked by volume, which establishes a clear use case. However, it does not explicitly mention alternatives or when not to use this tool, though the focus on 'live' markets implies exclusions for historical or non-volume-ranked queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
positioning_strategistCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| market | Yes | ||
| company | Yes | ||
| product | Yes | ||
| aspirations | No | ||
| competitors | Yes | ||
| customerPains | Yes | ||
| currentWeaknesses | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, indicating no side effects, and the description implies a read-only operation ('returns a structured, audited deliverable'). The description adds context about the output being audited, but does not disclose other behaviors like auth needs or potential delays. With annotations already covering safety, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (3 sentences) and front-loaded with the title and target audience. However, the use of French may slightly impede quick comprehension for English-speaking agents. Overall, it is efficient with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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), the description is incomplete. It does not explain the output format beyond a reference case, omits behavior of the async parameter, and fails to describe the relationship between inputs and the deliverable. More detail is needed for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (13%), yet the description adds no meaning for any parameter. It only vaguely says 'send the documented case fields', which does not explain the purpose or structure of the 8 parameters, many of which are nested objects with required fields. The description fails to compensate for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is a positioning strategist targeted at C-suite/CMO, and lists specific outputs (angle de différenciation, 5 piliers messaging, battle plan) with a reference case. However, it does not differentiate from sibling tools like pricing_strategist or market_entry_strategist, and is in French which may reduce clarity for English agents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, no exclusions, and no context on prerequisites or limitations. The only usage direction is that inputs are validated server-side, which is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prediction_markets_searchAInspect
Search live prediction markets across Polymarket and Kalshi in one call. Returns a single normalised shape for both venues — question, implied probability (0-1), volume, end date, venue and URL — so you never have to reconcile two different price formats. Raw venue fields are preserved.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| limit | No | Maximum markets to return (default 20) | |
| query | No | Free-text filter on the market question. Omit to get the most active markets. | |
| venues | No | Which venues to query (default both) | |
| includeRaw | No | Include each venue's original fields (default false) | |
| includeClosed | No | Include settled markets (default false) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosure and does well by detailing the normalized return shape and preservation of raw venue fields. It explains why this tool is useful (avoiding price format differences), adding genuine behavioral context beyond the schema. It does not cover error handling or rate limits, but for a non-destructive search 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.
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 earns its place. It efficiently covers the cross-venue benefit, the normalized output fields, and the raw-field preservation without unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 6 parameters and no output schema, the description provides a solid summary of the normalized output shape, which is the key non-obvious context. It does not explain async behavior or default filtering, but those are well-documented in the input schema. The overall description is complete enough for an agent to understand what the tool returns and when to use it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 meaning to parameters beyond what the input schema already provides; it focuses on output shape. The mention of preserved raw fields aligns with includeRaw but does not introduce new semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Search') with clear resources ('live prediction markets across Polymarket and Kalshi') and a distinctive normalized output. It explicitly distinguishes itself from single-venue sibling tools like polymarket_markets and kalshi_markets by offering both in one call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates the primary use case: searching both venues simultaneously and avoiding format reconciliation. It does not explicitly list exclusions or alternative tools, but the cross-venue context is strongly implied and sufficient for a search tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
press_influencerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| budget | No | ||
| company | Yes | ||
| targetMedia | Yes | ||
| announcement | Yes | ||
| targetAudience | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true (safe read) and openWorldHint=true (potential external access). The description adds that inputs are validated server-side and returns a deliverable, but does not elaborate on internal process, side effects, or constraints. It adds some value but not rich behavioral context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but includes extraneous branding ('Gapup agent-payable C-suite expertise (CMO)') and a reference case that may not be universally understood. It is front-loaded with the main idea but could be more efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 objects, no output schema), the description is incomplete. It does not explain the deliverable's structure, how to interpret results, or error handling. The openWorldHint annotation suggests flexibility, but the description provides insufficient guidance for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is very low (17%). The description does not explain any parameters, simply saying 'send the documented case fields'. It fails to add meaning to the 6 parameters, especially the nested objects. The reference case does not clarify parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description mentions 'Presse & influenceurs' and 'Returns a structured, audited deliverable', which hints at generating a press and influencer outreach plan. The reference case (Agicap fundraising) provides a concrete example. However, it lacks a clear verb like 'generates' or 'creates' to explicitly state the action, and the purpose is somewhat implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 sibling list includes many marketing tools but no distinctions are made. The description does not mention when to use, when not to use, or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pricing_in_dealCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| deal | Yes | ||
| async | No | If true, returns a job_id 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 | Yes | ||
| redLines | Yes | ||
| negotiationContext | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds a reference case but no behavioral details beyond that (e.g., side effects, server-side validation). Given annotations, the description provides adequate but minimal additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but includes jargon and a French case study, which may confuse. It is not as concise as it could be; the first line could be clearer. Adequate length but structure could be improved.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 many required fields and no output schema. The description provides only a single example and no details on the deliverable's format, structure, or how to interpret the result. Incomplete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 20%, with one parameter (async) having a description. The description says 'send the documented case fields' but does not explain the meaning or usage of the many nested parameters. 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.
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 pricing in a deal, referencing a case. However, it uses jargon ('Gapup agent-payable C-suite expertise (CRO)') and does not clearly distinguish from sibling tools like pricing_strategist or deal_coach, leaving the purpose somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 prerequisites, exclusions, or compare to siblings. The description implies a pricing deal context but offers no context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pricing_strategistBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| competitors | Yes | ||
| currentPricing | Yes | ||
| valueProposition | Yes |
Tool Definition Quality
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 returns a deliverable, but does not disclose other behavioral traits such as execution time, permissions, or handling of insufficient data. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, with some fluff in the first sentence but quickly gets to the point. It is reasonably concise, though the first sentence could be more direct.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 nests complex parameters. The description does not specify the return format, contents of the deliverable, or how to handle the async option. Given the complexity, the description leaves significant gaps for an AI 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.
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 explain any input fields. It merely says 'send the documented case fields,' which is insufficient for an AI agent to understand the structure and meaning of complex nested parameters like 'company' and 'competitors'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is a pricing strategist that returns a structured, audited deliverable, with a concrete reference case (Vercel Pricing 2026). It differentiates from sibling pricing tools like 'pricing_in_deal' and 'competitor_pricing_radar' by focusing on generating comprehensive pricing scenarios.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating pricing strategy deliverables but does not explicitly state when to use this tool versus alternatives. It mentions server-side validation and a reference case, but lacks clear guidance on exclusions 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.
privacy_compliance_auditBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| presenterScript | No | ||
| targetFrameworks | Yes | ||
| processingActivities | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and openWorldHint=true. The description adds valuable behavioral context: the tool is 'agent-payable' (cost implication) and validates inputs server-side. It also returns a 'structured, audited deliverable,' consistent with read-only nature. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short with three sentences, but includes a lengthy, specific reference case that is not generally useful for an AI agent. The mix of French and English may add unnecessary complexity. It could be more concise by omitting the case study.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (nested input schema, no output schema, low schema coverage), the description is incomplete. It does not explain the deliverable's structure, the audit process, or how to populate the complex parameters. The context provided is minimal and insufficient for proper tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%, yet the description provides no explanation of parameters (company, processingActivities, targetFrameworks, etc.). The vague instruction 'send the documented case fields' fails to add meaning beyond the schema's property names. This is severely inadequate for a tool with nested objects and 6 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs a privacy compliance audit ('Audit conformité vie privée') and returns a structured deliverable. It differentiates from sibling audit tools by specifying privacy focus and mentioning relevant regulations (RGPD, CCPA, LGPD, UK GDPR), making it distinct from ESG or AI governance audits.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lacks explicit guidance on when to use this tool versus alternatives. It mentions 'C-suite expertise (RISK)' implying high-level risk assessment, but no exclusions or conditions are provided. The reference case is too specific to generalize usage criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
process_mappingCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| processes | Yes | ||
| presenterScript | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true. Description adds that the tool returns a structured, audited deliverable and validates inputs server-side. This provides useful context beyond annotations, but does not fully explain behavioral traits like side effects or error handling. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is relatively concise at 4 sentences, but includes a non-essential reference case that adds length without increasing clarity. It is front-loaded but could be more efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 params, no output schema), the description is incomplete. It does not explain the return format, what 'audited' means, or how to use the async parameter. Users would need additional context to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (20%, only async described). Description does not explain any parameters beyond 'send the documented case fields,' which is vague. For a tool with 5 top-level parameters and nested objects, description should compensate but fails to provide meaningful parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Mapping des process opérationnels' and that it returns a structured, audited deliverable, with a reference case. However, the French language may reduce clarity for English-speaking agents, and the exact action (e.g., 'maps', 'creates a mapping') is implied rather than explicit. Distinguishes from siblings by being specifically about operational process mapping.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description lacks explicit guidance on when to use this tool versus alternatives. It only mentions that inputs are validated server-side and to 'send the documented case fields,' but no context for choosing this tool over siblings like process_mining. No exclusions or usage conditions provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
process_miningCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| objectives | Yes | ||
| companyName | Yes | ||
| mainSystems | Yes | ||
| topProcesses | Yes | ||
| employeeCount | Yes | ||
| revenueLostEstimateEur | No |
Tool Definition Quality
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 a structured, audited deliverable is returned, but does not elaborate on behavioral traits like rate limits, authentication needs, or processing time. No 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but mixes languages (French and English) and includes a reference case that may not be universally understood. While not verbose, it could be more structured and focused on essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and minimal parameter descriptions, the description lacks completeness. It does not explain the return format, expected result structure, or how to interpret the 'structured, audited deliverable.' The context of the reference case is insufficient for a comprehensive understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at only 14%, the description fails to explain what each parameter means or how to use them. It merely says 'send the documented case fields' without clarifying which fields are required or their semantics. This provides virtually no value beyond the bare property names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Mining des process' and mentions returns a structured deliverable, but the verb is not explicitly stated (e.g., 'analyze' or 'mine' processes). The reference case hints at waste identification and automations, but purpose remains vague and does not distinguish from sibling 'process_mapping'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No direct guidance on when to use this tool versus alternatives is provided. The description mentions 'Gapup agent-payable C-suite expertise (COO)' implying executive use case but does not give context-specific conditions or exclusions. Sibling tools with similar purposes exist, but no differentiation is offered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
procurement_okr_esg_alignerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| esgFocusAreas | Yes | ||
| industrySector | No | ||
| procurementObjectives | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| alignmentScores | No | |
| recommendations | No | |
| benchmarkComparison | No | |
| overallAlignmentScore | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, which the description reinforces by describing an analytical (non-mutating) operation. However, the description does not disclose additional behavioral traits such as asynchronous execution (async parameter present but not mentioned) or any rate limits/pagination, so it adds only 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at 4 sentences plus keywords, with the main purpose front-loaded. Every sentence adds value, though the keyword list at the end is slightly redundant. Overall, it is well-structured and avoids unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema exists), the description covers the core functionality, inputs, and outputs. It mentions standards and benchmarks for credibility. The presence of an output schema means return values need not be detailed. However, the async parameter and industrySector are not addressed, slightly reducing completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (25%), with only 'async' having a description. The description text partially compensates by naming 'procurement objectives' and 'ESG focus areas' and giving examples (carbon reduction, supplier diversity). However, it does not explain 'industrySector' or the structure of 'procurementObjectives' (objects with id, description, weight), leaving gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool aligns procurement OKRs with ESG targets using specific standards (GRI, EU TED). It specifies inputs (procurement objectives, ESG focus areas) and outputs (alignment scores, gap analysis, recommendations). This provides a specific verb and resource, differentiating it from generic alignment tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies the target user (COOs integrating sustainability) and implies usage context, but does not explicitly state when to use this tool over alternatives or mention exclusions. No sibling differentiation is provided, leaving usage guidance 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.
procurement_six_sigma_waste_hunterARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_period | Yes | Time period for analysis (e.g., '2023-01-01/2023-12-31') | |
| six_sigma_tool | No | DMAIC | |
| include_ted_data | No | ||
| organizational_unit | No | Specific business unit or department (e.g., 'EMEA', 'Global Operations') | |
| procurement_category | Yes | Specific procurement category to analyze (e.g., 'IT hardware', 'facilities') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| ted_data_coverage | No | |
| cost_impact_estimate | No | |
| waste_classification | No | |
| process_improvement_recommendations | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, open-world, and idempotent behavior. The description adds value by revealing the timeout risk ('x402 timeout') and requiring async:true, as well as detailing outputs like waste classification and recommendations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise, with three sentences covering purpose, inputs, outputs, and a critical usage note. It is front-loaded with the main action. Minor improvement could be made by listing inputs more succinctly, but overall it's well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 exists), the description covers the essential aspects: purpose, key inputs, outputs, and the async requirement. It does not explain the six_sigma_tool parameter or the EU TED data integration in depth, but the existence of an output schema reduces the burden. Still, some details are missing for full completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67% (above 50% threshold), so baseline is 3. The description names three of six parameters (procurement_category, time_period, organizational_unit) but does not elaborate on others like async, six_sigma_tool, or include_ted_data. It adds some context but not enough to raise the score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 procurement waste for COOs using Six Sigma DMAIC and EU TED tender data. It specifies the verb ('analyzes') and the resource ('procurement waste') and distinguishes itself from sibling tools by focusing on Six Sigma waste analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for COOs analyzing procurement waste with Six Sigma methods, but it does not explicitly state when to use this tool versus alternatives like 'procurement_spend_optim' or 'procurement_okr_esg_aligner'. No exclusions or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
procurement_spend_optimCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| topSuppliers | Yes | ||
| spendCategories | Yes |
Tool Definition Quality
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 returns an audited deliverable, which is consistent but not extensive. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences plus a case example) and front-loaded with purpose. The reference case adds some value but is not essential; overall it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 lacks details on return format, how the deliverable is structured, and when this specific tool is preferred over siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 20%, and the description provides no elaboration on parameters beyond 'send documented case fields.' It fails to compensate for the missing schema descriptions, leaving agents without understanding the meaning of fields like 'focus' or nested objects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: procurement spend optimization targeting CFO-level expertise. It mentions a reference case and return of a structured deliverable, distinguishing it from sibling tools like 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.
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 implies use for CFO spend analysis but does not compare to other procurement tools or state prerequisites/exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
programmatic_attribution_calibratorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| endDate | Yes | End date for impression data (ISO 8601) | |
| modelId | Yes | Identifier of the MMM model to calibrate | |
| startDate | Yes | Start date for impression data (ISO 8601) | |
| impressionIds | No | List of OpenRTB impression IDs to include in calibration | |
| confidenceThreshold | No | Confidence threshold for calibration metrics |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| calibrationMetrics | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, openWorldHint=true, and idempotentHint=true. The description adds that the tool returns structured calibration metrics and attribution adjustments, which is consistent. It does not contradict annotations and provides minor behavioral context beyond the schema, but does not elaborate on side effects 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences long, starting with the persona and purpose, then inputs and outputs, then benefit. It is structured and clear, though could be slightly more concise by removing filler phrases like 'Useful for...'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 6 parameters (3 required) and an output schema (not shown). The description covers the main inputs and outputs, and mentions the benefit. It does not mention async behavior (covered by parameter description) or the confidenceThreshold parameter, but these are present in the schema. Overall, it provides sufficient context for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage, and the description adds context by mentioning 'model parameters, date ranges, and impression IDs' and specifically referencing OpenRTB and FreeWheel data sources. This enriches understanding of the data context, but the description does not detail every parameter (e.g., confidenceThreshold is not mentioned). Baseline of 3 is appropriate given schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it calibrates marketing mix models (MMM) using OpenRTB impression-level data from specific sources like FreeWheel Marketplace. It distinguishes itself from siblings (e.g., programmatic_brand_safety_auditor) by targeting the ad_revenue_ops persona and focusing on attribution calibration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description defines the target persona (ad_revenue_ops) and the use case (calibrating MMM with programmatic data). It does not explicitly state when to avoid using it or compare with alternatives, but the context sufficiently guides appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
programmatic_brand_safety_auditorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Full page URL being evaluated | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| domain | Yes | Root domain of the inventory (e.g., 'example.com') | |
| categories | No | Optional IAB content categories for contextual analysis | |
| gdprConsent | No | GDPR consent string (TCF v2.0) |
Output Schema
| Name | Required | Description |
|---|---|---|
| flags | No | |
| score | No | Brand safety score (0-100) |
| status | Yes | |
| sources | No | |
| warnings | No | |
| riskLevel | No | |
| gdprCompliant | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint as true, indicating safety. The description adds value by mentioning GDPR-compliant methods and the output format (structured score, risk categorization, compliance warnings), which 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (3 sentences), front-loaded with the core purpose, audience, and input/output structure. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given full schema coverage and an output schema (implied), the description adequately covers what the tool does. It mentions the output structure and target use case. Minor omission: the async behavior is not mentioned in the description, but it is covered in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter has a description in the schema. The tool description only lists inputs at a high level without adding new meaning beyond what's in the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool evaluates programmatic ad inventory for brand safety risks, specifying standards like IAB Tech Lab and GDPR. It differentiates itself from sibling tools by focusing on brand safety, as opposed to other audit tools (e.g., privacy_compliance_audit).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies the target audience (ad revenue operations teams) and the use case (assessing inventory quality before bidding). It does not explicitly state when not to use or compare to 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.
proposal_generatorCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| offer | Yes | ||
| company | Yes | ||
| prospect | Yes | ||
| dealContext | No |
Tool Definition Quality
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," which provides some behavioral context beyond annotations, but it does not detail permissions, rate limits, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (3 sentences) and front-loads the purpose. The inclusion of a reference case adds length but provides useful context; however, it could be more tightly written.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, nested objects, no output schema), the description is incomplete. It lacks details on output format, how to use the async parameter, and input formatting beyond "send the documented case fields." This forces the agent to rely on the schema, which has low coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20%. The description does not explain the required fields (company, prospect, offer) or their structure. The phrase "documented case fields" is vague and does not compensate for the low coverage, leaving parameter meaning unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates commercial proposals ("Générateur de propositions commerciales") and returns a structured deliverable. The reference case provides concrete context. However, it does not explicitly differentiate from sibling tools, which is a minor gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description fails to provide any guidance on when to use or avoid this tool. It omits prerequisites, context, or alternatives, leaving the agent without decision-support information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
qa_pre_flightCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| round | Yes | ||
| company | Yes | ||
| founderContext | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=true, which are not contradicted. The description adds that inputs are validated server-side and returns a structured audited deliverable. However, it does not disclose whether this tool modifies any state (despite readOnlyHint), what happens on validation failure, or any rate limits. With annotations covering the safety profile, the description provides modest additional context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences plus a reference case) and front-loads the core purpose. However, it could be more structured (e.g., bullet points), and the reference case is useful but not essential. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters including deeply nested objects, no output schema, and a brief description, the tool is under-documented. The description does not explain the deliverable format (beyond 'structured, audited'), how to interpret results, or what triggers validations. For a tool likely generating significant content, this is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25%, yet the description adds no information about individual parameters beyond 'send the documented case fields'. The nested objects (company, round, founderContext) and their many properties are left entirely to the schema. The description does not explain how to fill in fields like 'pitch', 'knownWeaknesses', or 'leadInvestorProfile'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool prepares investor Q&A for fundraising, returning a structured deliverable. It references a concrete case (Agicap Série C) to illustrate scope. However, the verb 'Préparation' is somewhat vague, and it doesn't distinguish well from many sibling tools like 'pitch_deck_storyline' or 'investor_shortlist'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 description mentions fundraising context, but given dozens of related siblings (e.g., 'pitch_deck_storyline', 'investor_shortlist', 'ma_deal_screener'), an agent would have no basis to choose this tool over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
qbr_autoCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| wins | Yes | ||
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| period | Yes | ||
| company | Yes | ||
| metrics | Yes | ||
| customer | Yes | ||
| challenges | Yes | ||
| nextQuarterGoals | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true (indicating no state modification) and openWorldHint=true (output may extend schema). The description adds that it 'returns a structured, audited deliverable' and that inputs are validated server-side. However, it doesn't disclose response time, job completion behavior for async, or any side effects. With annotations already covering the core behavioral profile, the marginal value is low.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (three sentences) and front-loaded with the core purpose. However, the reference case example ('Gapup Hub × Alan — QBR Q1 2026 ...') adds length without aiding tool selection or invocation. Could be trimmed to remove the example or replace it with more general guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has complex input with nested objects (period, company, customer, metrics) and no output schema. The description does not explain the return structure, data format, or how the deliverable is organized. The example hints at fields (health score, upsell, renewal risk) but not the full output. For a tool of this complexity, the description is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 13% (only 'async' parameter has a description). The tool description does not explain the meaning, format, or relationships among the 8 parameters. Saying 'send the documented case fields' is too vague to guide parameter construction. 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it automates QBR (Quarterly Business Review) for CSM and returns a structured deliverable. The reference case adds concrete context. 'QBR automatique CSM' clearly identifies the tool's purpose, and it is distinguishable from siblings like 'enps_auto' or 'knowledge_base_auto'. However, the phrase 'Gapup agent-payable C-suite expertise (CRO)' is jargon that may confuse some agents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 merely says 'send the documented case fields' without specifying contexts, prerequisites, or scenarios where other tools might be more appropriate. Given the large sibling set, this omission significantly reduces usefulness.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
real_estate_intelARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | property: transactions at an address | comparables: sample around a point | market: commune/neighbourhood market stats | valuation: price estimate for a given surface | |
| async | No | If true, returns a job_id 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_to | No | ISO date YYYY-MM-DD — latest transaction date | |
| location | Yes | Location descriptor. One of: {address, city?, country?} | {lat, lon, radius_m?} | {insee_code} for FR communes. | |
| date_from | No | ISO date YYYY-MM-DD — earliest transaction date | |
| max_results | No | Maximum number of results to return (5–50, default 20) | |
| surface_max | No | Maximum surface in m² (±20% tolerance applied for comparables) | |
| surface_min | No | Minimum surface in m² (±20% tolerance applied for comparables) | |
| property_type | No | Filter by property type (default: all) |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| market | No | mode=market — commune-level market stats |
| status | Yes | |
| sources | Yes | |
| property | No | mode=property — transactions at the location |
| valuation | No | mode=valuation — price estimate |
| comparables | No | mode=comparables — aggregated comp stats |
| quality_score | Yes | |
| location_resolved | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable behavioral details including SLA (≤25s p95), cache TTL (24h), quality scoring mechanics, and the fact that no environment variables are required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but well-structured, front-loading the core purpose and modes. Almost every sentence adds unique value, though minor condensation could improve brevity without loss of information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (9 parameters, nested objects, multiple modes), the description is remarkably complete. It covers data sources, mode details, quality scoring, SLA, cache policy, and target audience. The output schema exists separately, so its absence is not a deficiency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description's burden is lower. However, it adds meaningful context beyond the schema: it explains the alternating location descriptor forms (address+city, lat+lon+radius, insee_code) and clarifies the async parameter's behavior. The mode descriptions are also richer than the enum descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies that the tool aggregates real estate intelligence from French DVF and UK Land Registry data with four distinct modes (property, comparables, market, valuation). It uniquely positions itself among siblings by focusing on real estate data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use guidance for each of the four modes and notes that all sources are free and keyless. It does not explicitly mention alternative tools or when not to use, but the mode descriptions are sufficiently clear for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
realtime_data_streamsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Data 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 %) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| depth | No | Orderbook depth (levels each side) for crypto_orderbook mode (default: 20) | |
| period | No | Candle period for fx_history_intraday mode (default: 5m) | |
| symbol | Yes | Market symbol. FX: EURUSD, GBPUSD, USDJPY. Crypto: BTCUSDT, ETHUSDT, BTC-USD. Bonds: US10Y, US2Y, DE10Y, FR10Y, UK10Y, JP10Y, IT10Y |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| symbol | Yes | |
| fx_tick | No | |
| sources | Yes | |
| fx_history | No | |
| bond_yields | No | |
| crypto_trades | No | |
| quality_score | Yes | |
| crypto_orderbook | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true. Description adds valuable behavioral details: ultra-short cache durations (10s for ticks/trades, 60s for orderbook), keyless public REST APIs, and async capability. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: two sentences that front-load purpose and audience, then list data types, sources, cache info, and usage recommendation. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, output schema, and annotations, the description covers all essential aspects: data types, sources, cache, async behavior, and usage context. Output schema exists, so return structure is not needed in description. Complete for a real-time data tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. Description enhances parameter understanding by providing concrete symbol examples and explaining the async parameter use for slow tools. Adds context beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool provides high-frequency real-time market data for specific use cases like trading and arbitrage. Lists multiple data types and sources, but does not explicitly differentiate from sibling tools like fx_rate or historical_price_series which also provide market data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'Use when an agent needs live market data as precise numeric inputs for trading logic, arbitrage detection, or portfolio valuation.' Also provides context on sources and cache durations, but lacks explicit when-not-to-use or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recruiting_architectCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| roles | Yes | ||
| budget | Yes | ||
| company | Yes | ||
| preferences | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations (readOnlyHint, openWorldHint) by noting server-side input validation and the nature of the deliverable. However, it does not discuss other important behaviors like async handling or what 'open world' entails, leaving gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that is moderately concise but includes an extraneous case study (Stripe France) that may not be relevant for all uses. Sentence order is acceptable but could be more streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multiple nested objects, no output schema, low schema coverage), the description is insufficient. It omits details on output format, return values, and how to handle the async option, leaving the agent with significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%, and the tool description does little to explain parameters. It merely says 'send the documented case fields' without detailing the six properties, their required status, or their roles. The async parameter is described in schema but not in the main description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is an 'Architecte du recrutement' that 'returns a structured, audited deliverable,' giving a general sense of purpose through a recruitment architecture case. However, it lacks a clear, generic verb-resource statement and does not distinguish itself from sibling tools like talent_intelligence or job_postings_intelligence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 instruction 'send the documented case fields' is too vague and does not clarify context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
re_deal_screenerARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| address | Yes | ||
| deal_type | Yes | ||
| country_iso2 | Yes | FR | |
| units_or_keys | No | ||
| gross_area_sqm | No | ||
| current_noi_eur | No | ||
| asking_price_eur | Yes | ||
| investment_thesis | No |
Tool Definition Quality
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. It adds context about using external data sources (DVF, Géorisques) and returning an audited deliverable, but no behavioral traits 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with multiple sentences mixing purpose, examples, and a reference case. It front-loads the purpose but includes redundant example variations. Could be more concise by separating usage from examples.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description explains the deliverable components (cap rate vs market, location score, risk flags, deal recommendation). It covers required parameters via examples but misses optional parameters. Given 9 parameters and no output schema, completeness is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 11% (async parameter described). The description mentions address, deal_type, price in examples but does not explain other parameters like units_or_keys, gross_area_sqm, current_noi_eur, investment_thesis. 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it screens EU real estate deals, returns structured deliverable with specific outputs (cap rate, location score, risk flags, recommendation). It distinguishes from siblings like ma_deal_screener and real_estate_intel by focusing on EU deals with DVF comparables and 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit example queries showing when to use (e.g., 'Screen this real estate deal: ...', 'Should I pursue this hotel investment ...'). It implies EU focus but does not explicitly state when not to use, such as for non-EU deals or M&A contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
renewal_optimizerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| horizon | No | ||
| product | Yes | ||
| accounts | Yes | ||
| targetRenewalRatePct | No |
Tool Definition Quality
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 'audited deliverable' and 'server-side validation', which are useful but not contradictory. No side effects or destructive actions 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence but includes a reference case that adds length without direct utility for parameter understanding. Could be more succinct by omitting the case study or moving it to examples.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 6 parameters) and no output schema, the description is insufficient. It does not explain return format, pagination, or how results are structured, leaving the agent guessing about the deliverable's shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%, yet the description provides zero explanation of parameters. It does not clarify purpose of fields like 'company', 'accounts', or 'horizon'. The description fails to add meaning beyond the minimal schema labels.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title 'Optimiseur de renouvellements' and description 'Returns a structured, audited deliverable' clearly indicate the tool optimizes renewals. The reference case adds context. Slight jargon (e.g., 'Gapup agent-payable C-suite expertise') but purpose is discernible.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 siblings. The description only mentions 'send the documented case fields' without explaining scenarios or prerequisites. Among 200+ sibling tools, no differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
repo_rate_arbitrage_scannerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| endDate | No | ||
| currency | No | ||
| startDate | No | ||
| minDifferential | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| opportunities | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds context about outputs ('structured arbitrage opportunities with rate differentials and confidence scores'), providing value 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no excess, front-loading the core function in the first sentence. Every sentence adds value and avoids redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description adequately outlines inputs and outputs. It lacks mention of the async pattern and does not elaborate on data sources, but these are minor given the tool's specialization.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description partially compensates for low schema coverage (20%) by mentioning 'optional date ranges and currency filters', covering 3 of 5 parameters. However, it omits async and minDifferential, and does not add format details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('scans') and resource ('arbitrage opportunities between repo rates (ECB) and short-term funding markets (Treasury Direct)'), distinct from siblings 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the target user ('CFOs') and high-level use case ('identify cost-effective funding strategies'), but does not provide explicit when-to-use or when-not-to-use guidance or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reputation_engineCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| brand | Yes | ||
| channels | Yes | ||
| industry | Yes | ||
| keywords | Yes | ||
| historicalCrises | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and openWorldHint. The description adds that the deliverable is 'audited' and that inputs are validated server-side, which provides some extra context but does not go into rate limits, auth needs, or other behavioral traits. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (3 sentences) and front-loaded with the name and purpose. However, it includes cryptic jargon ('Gapup agent-payable C-suite expertise (CMO)') and a specific reference case that may not be helpful for general understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 6 parameters, low schema coverage, and no output schema, the description is insufficient. It does not explain what the deliverable contains, how to use the async parameter, or the purpose of each input field. Annotations provide some context but not enough for a complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 17%, and only the 'async' parameter has a description in the schema. The tool description does not explain the meaning or constraints of the other 5 parameters (brand, keywords, channels, industry, historicalCrises). 'Send the documented case fields' is vague and does not add semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool is a 'Moteur de réputation' (reputation engine) that returns a 'structured, audited deliverable,' giving a clear verb-resource pair. However, it lacks precision about what the tool actually does with the inputs (e.g., monitors, calculates, analyzes reputation) and does not distinguish it from sibling tools like sentiment_news_pulse or 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.
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, no explicit context for usage, and no mention of when not to use it. The description only states inputs are validated server-side, which is not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
research_paper_qaBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_papers | Yes | ||
| year_range | No | ||
| focus_domain | Yes | all | |
| include_preprints | Yes | ||
| research_question | Yes | ||
| evidence_grade_required | Yes | standard |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, so the description does not need to state it. It adds behavioral context by describing the output as a 'structured, audited deliverable' with DOI-verified citations, and mentions server-side input validation. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a mix of French and English, somewhat disorganized. It begins with a brief phrase, then lists capabilities in a run-on manner, then provides sources and a reminder. While not overly long, it could be better structured for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, nested objects, no output schema), the description provides some context (sources used, example questions) but lacks details on output format, parameter interdependencies, and differentiation from similar tools like sci_literature_search.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the purpose or usage of most parameters (e.g., research_question, max_papers, evidence_grade_required). It only briefly mentions sending 'documented case fields', providing minimal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is for scientific literature synthesis, listing specific tasks like literature review, hypothesis evaluation, and contradiction mapping. It identifies the resource (scientific papers) and verb (synthesize, answer). However, it does not differentiate from similar siblings like 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage scenarios by listing example questions (e.g., 'Conduct a literature review on <topic>'), but does not explicitly state when to use this tool vs. alternatives or when not to use it. No exclusions or comparisons are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
retail_media_attribution_bridgeARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| endDate | Yes | End date for attribution window (YYYY-MM-DD) | |
| channels | No | Channels to include in analysis | |
| startDate | Yes | Start date for attribution window (YYYY-MM-DD) | |
| campaignIds | Yes | List of campaign identifiers to analyze | |
| confidenceThreshold | No | Minimum confidence score for included signals |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| attribution | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, openWorldHint, and idempotentHint. The description adds useful context about analyzing MMM signals and returning structured data with provenance and confidence scores, enhancing transparency 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with purpose, and avoids unnecessary words. Every sentence adds value, 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.
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, 3 required) and the presence of an output schema, the description covers key aspects: inputs summarized, output mentioned (structured data with provenance and confidence scores), and target audience specified. It is complete for an AI agent's selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the description's summary of inputs (campaign IDs, date ranges, channel filters) aligns with the schema. It does not provide additional detail beyond the schema, achieving the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: providing unified attribution insights for retail media and programmatic campaigns. It specifies the resources (FreeWheel Marketplace, Common Crawl) and distinguishes from siblings like programmatic_attribution_calibrator by focusing on cross-channel bridging.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description targets ad revenue operations teams and mentions bridging cross-channel performance gaps, which implies when to use it. However, it does not explicitly state when not to use it or provide direct alternatives, though sibling tools exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
retail_media_esg_complianceARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| domains | No | List of retail media network domains to audit | |
| checkESG | No | Enable ESG advertising standards compliance check | |
| checkGDPR | No | Enable GDPR cookie tracking compliance check | |
| networkIds | No | List of retail media network identifiers |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| summary | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, indicating safe, non-destructive behavior. The description adds that the tool returns structured compliance reports with warnings and source references, and crucially warns about the need for async:true to avoid timeout errors. This additional context about execution requirements enhances transparency 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loading the core purpose and then providing input/output details and an important execution requirement. Every sentence adds value with no redundant or vague phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 full parameter documentation, the description covers the essential aspects: input types, async requirement, output nature (compliance reports with warnings and source references), and target audience. However, it omits potential constraints like rate limits or maximum input sizes for domain lists, which could be relevant for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, but the description adds significant semantic value by stating it accepts domain lists or network identifiers, aligning with the 'domains' and 'networkIds' parameters. It also explicitly requires async:true, which is critical for this tool's execution and not indicated in the schema description for the async parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool audits retail media networks for ESG compliance by analyzing ad placements, tracking cookies, and verifying ethical advertising standards. It specifies the output type and target audience (ad_revenue_ops teams). However, it does not explicitly distinguish this tool from sibling ESG audit tools like 'esg_audit_multi' or 'manufacturing_esg_compliance_mapper', relying on the 'retail media' context for differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the tool is designed for ad_revenue_ops teams and requires async:true to avoid timeouts. It also states it accepts domain lists or network identifiers. However, it lacks explicit guidance on when to use this tool versus alternatives, such as other ESG compliance tools or audit tools for different domains.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
revops_architectBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| keyMetrics | Yes | ||
| objectives | Yes | ||
| revenueTeam | Yes | ||
| currentStack | Yes | ||
| horizonMonths | Yes | ||
| currentPainPoints | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and open-world behavior. The description adds that inputs are validated server-side, but no additional behavioral 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (3 sentences) and front-loaded with purpose. It is efficient but uses French, which may not be ideal for all users.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and 8 parameters with low coverage, the description is somewhat incomplete. It lacks details on return format and parameter semantics, though the general purpose is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 13%, and the description does not compensate. It says 'send the documented case fields' but provides no explanation of parameters despite having 8 complex parameters with nested objects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is an 'Architecte RevOps' that returns a structured, audited deliverable, with a reference case. It distinguishes itself from sibling tools by specifying CRO expertise and a structured output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for RevOps architecture but does not explicitly state when to use over alternatives. No when-not guidance or alternative tool names are provided, though the reference case hints at context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rfp_tender_architectCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| rfpType | Yes | ||
| rfpScope | Yes | ||
| budgetRange | Yes | ||
| deadlineISO | Yes | ||
| clientCompany | Yes | ||
| ourPositioning | Yes | ||
| compliancePoints | No | ||
| competitorsLikely | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, so tool is safe. Description adds that inputs are validated server-side, which is useful, but does not detail output format, side effects, or permissions. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is short (3 sentences) but mixes languages and unclear references. Could be more concise and structured, but no redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 9 parameters (7 required) and no output schema, the description is insufficient. It does not explain the output, how to interpret the reference case, or what the deliverable contains. Annotations provide openWorldHint but no further clarity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 11% with only 'async' described. The description does not explain any of the 9 parameters beyond 'send the documented case fields'. This 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Architecte d'appels d'offres' and 'Returns a structured, audited deliverable', implying RFP response creation. However, it lacks a specific verb and does not clearly distinguish from sibling tools like proposal_generator. The mixed French/English and jargon reduce clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 vs alternatives. The reference case provides a hint but no rules or exclusions. Lacks when-not-to-use or alternative tool mentions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rse_policy_builderBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| values | Yes | ||
| company | Yes | ||
| ambitions | Yes | ||
| targetLabels | No | ||
| currentInitiatives | No | ||
| targetStakeholders | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint and openWorldHint. The description adds that inputs are validated server-side and returns a deliverable. It does not discuss async behavior (present in schema) or more details about the return format. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences and conveys the core purpose efficiently. It is front-loaded with the title and purpose. Could slightly expand on parameter guidance without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 parameters, nested objects, no output schema) and low schema coverage, the description is incomplete. It omits details on how to construct the company object, what the deliverable looks like, and how to handle async. The reference case offers an example but is insufficient for full understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 13%, and the description does not document individual parameters. The phrase 'send the documented case fields' is vague. Required fields like company, values, ambitions, targetStakeholders are not elaborated, leaving the agent without guidance beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool builds a RSE policy (Sustainability) and returns a structured deliverable. The title and reference case add clarity. However, it does not explicitly differentiate from siblings like action_plan_esg or sustainability_report, though the policy-building focus is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for building a C-suite sustainability policy but does not specify when to use it versus alternatives. No when-not usage or sibling comparison is provided. The mention of 'Gapup agent-payable C-suite expertise' gives context but not explicit guidelines.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sabbatical_policy_comparatorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | Industry classification code (NAICS) | |
| peerGroup | No | List of peer company names for direct comparison | |
| companySize | Yes | Number of employees in the company | |
| currentPolicy | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| benchmark | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds output details (cost impact analysis, eligibility criteria, duration benchmarks) but does not disclose additional behavioral traits like performance, limitations, or the role of the async parameter. With annotations covering safety and idempotency, the description contributes moderate context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the core purpose and target users. Every sentence adds value: the first defines the tool, the second lists inputs and outputs. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description adequately covers the main purpose and typical use case for CHROs. However, it omits mention of the async parameter (present in schema) and the optional peerGroup input. Given the complexity (5 parameters, nested objects) and presence of an output schema, the description does not fully prepare the agent for all scenarios, especially asynchronous behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is high (80%+), with all parameters having descriptions in the input schema. The description reiterates the key inputs (company size, industry, current policy) but adds no new semantic detail beyond what the schema provides. It does not clarify the peerGroup parameter or the async parameter's behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool benchmarks sabbatical policies against peers using specific data sources (SHRM, Payscale, Mercer) and specifies the target user (CHROs) and outputs (cost impact analysis, eligibility criteria, duration benchmarks). It is distinct from sibling tools like executive_comp_peer_benchmark or comp_benchmark_geo_delta, which focus on compensation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Ideal for strategic HR planning and policy optimization,' providing implied context for when to use. However, it does not explicitly state when not to use or suggest alternatives. No exclusions or prerequisites are mentioned, leaving the agent to infer usage from the purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
safety_guardrail_breach_analyzerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| context | No | Contextual information about the prompt or conversation | |
| llmOutput | Yes | Raw text output from LLM to analyze for guardrail breaches | |
| severityThreshold | No | Minimum severity score to report (0-10 scale) | |
| includeMitigations | No | Whether to include mitigation recommendations |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| breaches | No | |
| warnings | No | |
| complianceScore | No |
Tool Definition Quality
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 those. It adds value by describing the output (compliance analysis with severity scoring and mitigation recommendations). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, immediately states the purpose, and uses no unnecessary words. It is well-structured and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 detail return values. It covers purpose, input, target user, and output summary. However, it omits mention of the async parameter and the context parameter, which are part of the input schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 minor context about input types (raw or structured) and output components, but it does not significantly deepen understanding beyond schema descriptions. The async and context parameters are not addressed in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Analyzes', the resource 'LLM guardrail breaches', and the specific standard 'IEEE 7000 ethical compliance standards'. It distinguishes from sibling tools like jailbreak_attempt_detector by referencing a specific ethical framework.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies the target user ('risk persona') and acceptable input formats ('raw LLM responses or structured breach reports'), providing clear context. However, it lacks explicit guidance on when not to use or alternatives among the numerous sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
safety_violation_incident_loggerCRead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| metadata | No | ||
| severity | Yes | ||
| timestamp | Yes | ||
| description | Yes | ||
| violationType | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| incidentId | No | |
| nistReference | No | |
| complianceCategory | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description claims the tool 'logs' violations, implying a write operation, but the annotation sets 'readOnlyHint: true', indicating the tool does not modify state. This is a direct contradiction. Additionally, no other behavioral traits (e.g., authentication, rate limits) are disclosed, and annotations already provide minimal context. The contradiction makes this score 1.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is 3 sentences, efficient, and structured: purpose, parameter list, output mention. It is concise but could be slightly more structured (e.g., bullet points for parameters). No wasted sentences, so a 4.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 4 required, output schema exists), the description provides basic context about output (NIST AI RMF categorization) but fails to mention error conditions, prerequisites, or the contradiction with annotations. The output schema is not detailed in the description, and the behavioral contradiction undermines trust. Completeness is inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (17%), yet the description only lists the parameter names ('violation type, severity, description, and timestamp') without adding syntax, format, or constraints beyond the schema. It does not explain the 'async' or 'metadata' parameters, which are part of the input schema. The addition is minimal, so a score of 2 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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, specifying the verb 'logs' and resource 'safety violations'. It also mentions targeting risk management personas and returns structured data based on NIST AI RMF guidelines. However, it does not differentiate from similar sibling tools like 'ai_act_incident_response' or 'safety_guardrail_breach_analyzer', so it scores a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says it is 'ideal for automated incident tracking and regulatory reporting workflows', implying usage context but providing no explicit guidance on when not to use this tool or alternatives. It lacks any exclusion criteria or comparison to sibling tools, resulting in a low score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sales_enablement_architectBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| gaps | Yes | ||
| async | No | If true, returns a job_id 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 | Yes | ||
| salesTeam | Yes | ||
| objectives | Yes | ||
| currentEnablement | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description adds that the tool returns a structured audited deliverable and that inputs are validated server-side. This provides useful behavioral context 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.
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 a concrete example. The reference case adds value without excessive length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, no output schema), the description is incomplete. It does not specify the deliverable's structure or how to interpret results, leaving significant gaps in context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 individual parameters beyond a generic 'send the documented case fields.' It adds minimal value to the schema's own documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a sales enablement architect that returns a structured deliverable, with a reference case demonstrating its function. It distinguishes from sibling tools like revops_architect by focusing on CRO-level expertise, though not explicitly differentiating.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lacks explicit guidance on when to use this tool versus alternatives. It implies strategic use through 'C-suite expertise' but provides no exclusion criteria or context for 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.
sales_pipeline_forecastCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| pipeline | Yes | ||
| historicalConversionByStage | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint and openWorldHint. The description adds that inputs are validated server-side and output is an audited deliverable, but does not discuss side effects, rate limits, or external data usage 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, contains a reference example for clarity, and avoids unnecessary detail. It is well-structured but could be more precise about input requirements.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, 5 parameters) and no output schema, the description is incomplete. It hints at output fields (commit/best-case/worst-case) but does not fully describe the return structure or interpretation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not explain individual parameters (e.g., company, pipeline, historicalConversionByStage) beyond mentioning 'documented case fields'. With 20% schema description coverage, the description fails to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides a sales pipeline forecast, returns a structured deliverable with confidence levels per deal, and gives a reference case. It distinguishes itself from many siblings but lacks a specific verb describing the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 target audience (CRO) and a reference case but does not compare with sibling tools or state prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sanctions_screener_multiCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| address | No | ||
| aliases | No | ||
| entity_name | Yes | ||
| entity_type | Yes | ||
| context_note | No | ||
| date_of_birth | No | ||
| jurisdiction_focus | Yes | all | |
| country_of_registration | No | ||
| adverse_media_lookback_days | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint=true, openWorldHint=true) are consistent. The description adds useful behavioral details: returns a structured, audited deliverable with evidence trail and composite risk score. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose, starting with a marketing tagline, and includes repetitive example questions. It could be more concise and front-loaded with essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and 10 parameters (4 required), the description lacks details on return format, error handling, and async behavior. The vague 'structured, audited deliverable' is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 10% (only async has description). The tool description does not explain individual parameters or their usage. Example questions hint at purpose but don't map to parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it screens entities against multiple sanctions lists (OFAC, EU, UK HMT, etc.) and returns a composite risk score. Example questions further clarify the purpose. However, it includes marketing fluff like "Gapup agent-payable C-suite expertise (RISK)" which slightly detracts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 vs alternatives like kyc_screener or kyc_screener_batch. The description provides example use cases but does not compare or exclude other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_playsCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| account | Yes | ||
| company | Yes | ||
| product | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, which cover the tool's safety profile. The description adds that inputs are validated server-side and that the tool returns a structured, audited deliverable. However, it does not disclose rate limits, error handling, or what happens with invalid input. Given the annotation coverage, the description provides modest additional 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short (4 sentences) and includes essential information: purpose, output type, and an example. However, the first sentence is cryptic ('Gapup agent-payable C-suite expertise (CRO)') and the reference case is detailed but not fully integrated. The structure is acceptable but could be more streamlined by focusing on general usage rather than a specific example.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has complex nested parameters with low schema coverage and no output schema. The description provides a reference case but lacks explanations of parameter semantics, required fields, or the structure of the deliverable beyond 'structured, audited.' Annotations cover readOnly and openWorld, but the description does not sufficiently complete the picture for an agent to reliably use the tool without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 individual parameters (company, account, product) beyond the general instruction to 'send the documented case fields.' The reference case gives a partial example but does not systematically clarify the meaning or usage of each nested field. This is insufficient 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: generating customer rescue plans ('Plans de sauvetage clients') and returning a structured, audited deliverable. It includes a concrete reference case (Kyriba) that illustrates the output. However, the cryptic phrase 'Gapup agent-payable C-suite expertise (CRO)' slightly reduces clarity, and there is no explicit differentiation from similar sibling tools like 'churn_defender' or 'renewal_optimizer', but the distinct purpose is still discernible.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. There is no mention of prerequisites, exclusions, or context for use. The reference case implies usage for clients at risk, but no decision framework is given. The tool's purpose is implied (rescue plans), but the lack of directional context for the agent limits usability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sci_literature_searchARead-onlyInspect
Recherche bibliographique multi-sources sur la litterature scientifique. Sources : OpenAlex (200M+ works) · Semantic Scholar · arXiv · PubMed · CrossRef. Modes : search | meta_analysis | citation_network | expert_finder. Keyless / free tier. Cache LRU 12h.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Mode de recherche. Defaut: search | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Keywords, titre, auteur, DOI (ex: 10.xxxx/xxxx accepte) | |
| domain | No | Domaine scientifique. Defaut: all | |
| date_to | No | Date ISO fin (YYYY-MM-DD) | |
| date_from | No | Date ISO debut (YYYY-MM-DD) | |
| max_results | No | 5-50. Defaut: 20 | |
| min_citations | No | Nombre minimal de citations |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| query | Yes | |
| papers | Yes | |
| status | Yes | |
| experts | No | |
| sources | Yes | |
| meta_analysis | No | |
| quality_score | Yes | |
| citation_network | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, which the description reinforces by describing it as a search tool. The description adds value by noting the keyless/free tier and 12-hour cache, providing behavioral details beyond the annotations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using a single sentence followed by a compact list of sources, modes, and key features. Every piece of information earns its place, with no redundant or irrelevant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 parameters, 2 enums, output schema exists), the description covers the high-level purpose, data sources, modes, and operational features (keyless, cache). It does not explain return values, but that is handled by the output schema. The async parameter is mentioned only in the schema, which is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 8 parameters have descriptions in the input schema (100% coverage), so the baseline is 3. The description adds high-level context about modes and sources but does not elaborate on individual parameters beyond what the schema already provides. It meets the baseline without significant enhancement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs multi-source scientific literature search (Recherche bibliographique multi-sources) and lists specific sources (OpenAlex, Semantic Scholar, arXiv, PubMed, CrossRef) and modes (search, meta_analysis, citation_network, expert_finder). This distinctly sets it apart from siblings, most of which are business or technical tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies the search modes and mentions keyless/free tier with LRU cache, providing context on when to use it. However, it does not explicitly state when not to use it or compare it to alternative tools like research_paper_qa or web_search_multilang, so guidance is clear but lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sec_filing_decoderBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| cik | No | ||
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | Yes | all | |
| ticker | No | ||
| filing_types | Yes | ||
| lookback_months | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and openWorldHint=true, which already signal safety and variability. The description adds that it 'returns a structured, audited deliverable' and that inputs are validated server-side. It does not contradict annotations, but adds little beyond purpose. No details on rate limits or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose, including multiple example questions and a reference case. The first sentence effectively states the purpose, but the subsequent examples could be more concise. Overall, it could be shortened without losing key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters (3 required), no output schema, and limited schema descriptions, the tool description lacks completeness. It does not explain how to use cik vs ticker, the meaning of focus values, or the async behavior. The examples give some context but leave gaps for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema parameter description coverage is only 17%, meaning most parameters lack descriptions in the schema. The tool description does not explain parameters like cik, ticker, filing_types, lookback_months, or focus beyond example usage. It mentions ticker and filing types in examples but no explicit details on values or defaults. The meaning of async is not clarified in description (though schema has a description).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool decodes SEC filings, providing red flags, KPI movements, and executive summaries. It gives specific example questions like 'Read the 10-K of <ticker>...' and a reference case. However, it does not explicitly differentiate from sibling tools like earnings_reviewer or ma_deal_screener, though the focus on filing types (10-K, 10-Q) implicitly distinguishes it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides example queries that imply when to use the tool (e.g., analyzing SEC filings for red flags, M&A clues). It gives use cases but no explicit guidance on when not to use it or alternatives. There is no mention of prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sentiment_news_pulseCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_name | Yes | ||
| entity_type | Yes | company | |
| sentiment_lens | Yes | reputation | |
| date_range_days | Yes | ||
| language_filter | Yes | en | |
| include_competitors | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with `readOnlyHint` (returns a deliverable) and adds context about being 'audited' and referencing a case (Velora). However, it does not disclose rate limits, what 'audited' means in practice, or any potential side effects 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a dense block of text with brand jargon ('Gapup agent-payable C-suite expertise') and repetitive questions. Each sentence does not earn its place; the example questions could be summarized in one line. It is not front-loaded with the most important information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters (5 required) and no output schema, the description fails to explain how parameters interact or what the deliverable includes. It provides usage context but lacks parameter details, return format, and behavioral depth, leaving the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 14%, yet the description does not explicitly map example questions to parameters. It mentions entity name, type, date range, etc., but lacks concrete mapping or constraints. The 'send the documented case fields' is insufficient, leaving parameter meaning unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it provides sentiment analysis, crisis detection, launch coverage, competitor comparison, and prioritization advice. The verb 'returns a structured deliverable' and example questions make the purpose clear, but there is no differentiation from sibling tools like 'reputation_engine' or 'press_influencer'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists example questions that imply when to use the tool (e.g., checking sentiment over 7 days, detecting crises). However, it lacks explicit guidance on when not to use it or what alternatives exist among siblings. The 'send the documented case fields' advice is vague.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo_cro_auditARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Fully-qualified URL to audit (e.g. https://stripe.com/pricing) | |
| mode | No | Audit scope — defaults to 'full' | |
| async | No | If true, returns a job_id 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_competitors | No | Optional list of competitor URLs to compare (max 5) |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| status | Yes | |
| sources | Yes | |
| audit_modes | Yes | |
| content_seo | Yes | |
| cro_signals | Yes | |
| quality_score | Yes | |
| technical_seo | Yes | |
| overall_scores | Yes | |
| recommendations | Yes | |
| performance_signals | Yes | |
| competitor_comparison | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, openWorldHint), the description adds valuable behavioral details: performance budget (8s per URL), cache TTL (1h), output format (0-100 scores per dimension, prioritized recommendations). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single comprehensive paragraph that front-loads the purpose followed by details and practical constraints. While thorough, it could be slightly more concise, but every sentence contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 rich annotations, the description covers all necessary aspects: purpose, scope, parameters, behavioral traits, performance constraints, and target audience. It is fully adequate 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds little beyond what the schema already provides. It mentions defaults (e.g., mode defaults to 'full') and describes async behavior, but these are minor additions. The baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it performs a 'Full SEO + CRO audit of any public URL' and lists specific technical, content, performance, and CRO areas. It clearly distinguishes itself from siblings like seo_keyword_research and competitive_deep_dive by focusing on URL-level audit across multiple dimensions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by mentioning optional competitor comparison and the ability to limit scope via the mode parameter. It also identifies target user personas. However, it does not explicitly state when to avoid this tool or suggest alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seo_keyword_researchARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| country | No | ISO 3166-1 alpha-2 country code for Google Suggest (e.g. 'US', 'FR', 'DE'). Defaults to 'US'. | |
| language | No | BCP-47 language code for suggestions (e.g. 'en', 'fr', 'de', 'es'). Defaults to 'en'. | |
| seed_keyword | Yes | The seed keyword or topic to research (e.g. 'invoice software', 'project management tool') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| country | Yes | |
| clusters | Yes | |
| language | Yes | |
| warnings | Yes | |
| all_keywords | Yes | |
| seed_keyword | Yes | |
| quality_score | Yes | |
| total_keywords | Yes | |
| top_opportunities | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, openWorldHint), the description discloses key behaviors: uses public Google Suggest, heuristic intent clustering, estimated bucketed volume, caching TTL 6h, and no fabricated numbers. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured paragraph that front-loads the main purpose, then adds details without redundancy. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 source, methodology, output components, limitations (estimated volume), and use cases. It is fully complete for an effective agent invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all four parameters described. The description adds context about the async parameter and default values for country and language, improving understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool performs SEO keyword research from a seed keyword, using Google Suggest, clustering by intent, and providing estimated search volume. It distinguishes itself from many sibling tools like competitive_deep_dive and content_discovery.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies the ICP (SEO managers, content strategists, etc.) and mentions use cases like content planning and topic discovery, but does not explicitly contrast with sibling tools. This is clear enough for most agents.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sharia_compliance_screenerARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Screening mode. company=full listed company screen, instrument=Sukuk/fund classification, sector_screen=industry halal/haram classification, financial_ratios=AAOIFI ratio check. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Entity to screen. Company name, ticker or ISIN (e.g. "Aramco", "AAPL", "tobacco", "XS1234567890"). | |
| standard | No | Sharia standard to apply. Default "AAOIFI" (most conservative, widely accepted by Islamic banks). |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| company | No | |
| signals | Yes | |
| sources | Yes | |
| instrument | No | |
| quality_score | Yes | |
| sector_screen | No | |
| standard_used | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating safe read operations. The description adds significant behavioral context: details on async mode with job polling, output fields (compliance_status, purification_pct, etc.), and the specific screening logic (e.g., AAOIFI ratios). This provides rich transparency 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the core purpose. It efficiently uses bullet points and clear sections for standards, modes, prohibited activities, and output. Every sentence adds value, 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 modes, multiple standards, async behavior), the description covers all necessary aspects: target audience, supported standards, mode explanations, prohibited activities, and output fields. Since an output schema exists, the description does not need to detail return values, making it complete for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds substantial meaning beyond the schema by explaining each mode in detail, describing the default standard (AAOIFI), and outlining prohibited activities. This enhances parameter understanding, but the schema already does a solid job.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as a Sharia compliance screening engine, listing specific use cases (company, instrument, sector_screen, financial_ratios) and target audience (Islamic banks, Sukuk issuers, etc.). It distinguishes itself from sibling tools by claiming 'Zero competing MCP on this vertical.' This provides a specific verb+resource and clear differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides detailed guidance on when to use each of the four modes and specifies supported standards. However, it does not explicitly state when NOT to use the tool or contrast it with potential alternatives. The claim of no competing tools implies it's the only choice for this vertical, but explicit exclusion criteria would improve the score.
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_detectorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| platform | Yes | Social media platform of the influencers | |
| influencerHandles | Yes | Array of up to 10 social media handles (e.g., ['@influencer1', 'user2']) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| results | Yes | |
| sources | Yes | |
| summary | No | |
| warnings | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint and idempotentHint true, indicating safe, idempotent reads. The description adds behavioral context by detailing analysis methods (Trends24, RSS feed anomalies) and return values. It does not contradict annotations and contributes beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (3 sentences plus keywords), front-loading the core action in the first sentence. Every sentence adds value: functionality, outputs, and target audience. Keywords provide additional searchability without bloating.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 3 parameters, full schema coverage, and an output schema, the description covers the essential aspects (limits, target audience, analysis methods). It could mention async handling but 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The description adds value by mentioning 'up to 10 social media influencers' (matching maxItems) and referencing specific data sources like Trends24 and RSS feeds, which contextualizes the parameters without repeating schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 up to 10 social media influencers for fake followers using specific methods (engagement velocity patterns, RSS feed anomalies). It specifies outputs (authenticity scores, follower growth spikes, suspicious activity flags) and target users (CMOs). The purpose is distinct from siblings like 'social_engagement_velocity_tracker'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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.' It implies context but does not explicitly state when not to use or name alternative tools. The sibling list includes 'social_engagement_velocity_tracker', but no exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sovereign_data_breach_impactARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | No | Industry sector of the affected organization | |
| records_lost | Yes | Number of records compromised in the breach | |
| jurisdictions | Yes | Jurisdictions where the breach has legal or financial impact | |
| detection_time_days | No | Time in days to detect the breach |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| total_cost_usd | No | Estimated total financial impact in USD |
| cost_per_record_usd | No | Cost per compromised record in USD |
| regulatory_fines_usd | No | |
| cyber_insurance_impact | No | |
| reputational_damage_usd | No | Estimated reputational damage cost in USD |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only and idempotent behavior. The description adds useful behavioral context by specifying the types of outputs (direct costs, regulatory fines, reputational damage, cyber insurance premium adjustments) and summarizing key inputs, complementing 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loading the main purpose and then listing inputs/outputs briefly. Every sentence adds value without redundancy, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema present), the description covers the essential context: use cases, key inputs, and output types. It does not explain interpretation of outputs or assumptions, but the output schema likely provides structure. Overall sufficient for practical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentions 'breach size, industry sector, and affected jurisdictions' which correspond to schema parameters, but does not add new semantic details beyond summarizing the schema. The async parameter is not mentioned, but this is acceptable given high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Estimates financial impact') and the specific resource ('data breach across three jurisdictions'). It explicitly identifies the target user (CFO strategic planning) and distinguishes from sibling tools by focusing on financial impact estimation, which is unique among the listed siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for usage, listing ideal scenarios such as 'cross-border risk assessment, financial contingency planning, and board-level reporting'. However, it does not explicitly state when not to use or compare to alternative tools, missing some exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sre_slo_breach_predictorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_hours | No | ||
| service_components | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| incident_reports | No | |
| breach_probability | No | |
| recommended_actions | No | |
| top_ttp_contributors | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as readOnlyHint=true, openWorldHint=true, idempotentHint=true, so the safety profile is clear. The description adds value by disclosing data sources (MITRE ATT&CK, GitHub Advisories, Cloudflare Radar), output elements (probability scores, TTPs, mitigations), and timeout behavior with async guidance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three well-structured sentences, no wasted words. Front-loaded with purpose, followed by usage context and a critical tip. Ideal length for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is moderately complex with 3 parameters and a presumed output schema. The description covers inputs, data sources, outputs, and async behavior. While output schema exists, the description still summarizes return values helpfully.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (33%), so the description must compensate. It explains service_components as 'critical components and reliability thresholds' and mentions async behavior. However, time_window_hours is only implied by the 24-hour horizon, and the description does not detail all parameters fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'predict' and resource 'potential SLO breaches', with a clear time horizon (24 hours). This is distinct from sibling tools, most of which focus on different domains like finance, security, or HR.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description targets a specific user role (CTO) and provides a clear scenario (predicting SLO breaches). It also gives a practical tip to use async to avoid timeouts. However, it does not explicitly state when not to use or list alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
strategic_options_analyzerCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| optionHypotheses | Yes | ||
| strategicContext | Yes | ||
| founderConstraints | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and openWorldHint. The description adds context about returning an audited deliverable and server-side validation, which is useful but does not cover async behavior or result retrieval. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise with two sentences and a reference case, but the mix of French and English may reduce clarity. The example is not essential, and the structure could be better organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, nested objects, no output schema, async option), the description is insufficient. It does not explain the return format, how to retrieve results when async is true, or the structure of the deliverable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20%, but the description does not explain any parameter semantics beyond a generic reference to 'documented case fields'. It fails to clarify the meaning or usage of parameters like 'company', 'optionHypotheses', or 'async'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as analyzing strategic options and returning a structured, audited deliverable. It references a specific case (Aircall) and mentions CSO expertise, but does not explicitly differentiate from sibling tools like 'market_entry_strategist' 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.
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 input validation and a reference case but lacks clear context for selection among many strategic analysis siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
supplier_esg_auditCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| suppliers | Yes | ||
| targetScore | No | ||
| auditCriteria | Yes |
Tool Definition Quality
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', but does not disclose other behavioral traits like processing time, authentication needs, or error handling. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, mostly front-loaded with the purpose. However, the phrase 'Gapup agent-payable C-suite expertise' is marketing fluff that reduces conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 parameters, nested objects, and no output schema, the description is too sparse. It does not explain the deliverable structure, return format, or how results are obtained, leaving the agent under-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%, yet the description provides no explanation for parameters like company, suppliers, or auditCriteria. It references 'documented case fields' in general terms, adding no value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 deliverable, with a concrete reference case. However, it does not differentiate from siblings like 'esg_audit_multi' or 'vendor_esg_blacklist_monitor', which may overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool instead of alternatives. The description only says to send documented case fields, but lacks context on prerequisites, use cases, or exclusions.
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_dashboardARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| supplierIds | No | List of supplier identifiers to analyze | |
| baseCurrency | Yes | Base currency code (ISO 4217) for exposure calculation | |
| riskThreshold | No | Percentage threshold for high-risk exposure flagging | |
| targetCurrencies | Yes | Target currency codes (ISO 4217) to compare against base |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | |
| status | Yes | |
| sources | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, openWorldHint=true, idempotentHint=true. Description adds context by naming data sources (World Bank LPI, live FX rate APIs) and output structure (risk indicators, exchange rates, supplier impact analysis), enhancing transparency beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four clear, front-loaded sentences with no fluff. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of output schema and annotations, the description sufficiently covers inputs, outputs, data sources, and intended audience. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with good descriptions of all 5 parameters. Description mentions key inputs (supplier IDs, base currency, target currencies) but adds no additional meaning beyond what schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states specific verb+resource (provides FX exposure dashboard) and target persona (COO). Differentiates from sibling supply chain tools like supplier_esg_audit by focusing on currency risk across suppliers and regions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly states intended use case for COO tracking currency risk. Does not explicitly state when not to use or point to alternative tools like fx_rate for simple rate lookups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sustainability_reportCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| pillars | Yes | ||
| stakeholders | Yes | ||
| targetLabels | No | ||
| existingLabels | No | ||
| audienceProfile | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds that inputs are validated server-side, which is a behavioral insight. However, it does not disclose other traits like idempotency, response size, or potential delays, but given annotations cover the core safety, the score 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short (3 sentences), but includes extraneous marketing phrases and a reference case that do not aid agent understanding. The core message is clear but could be more concise without losing informativeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nested required parameters and no output schema, the description is insufficient. It does not describe the return format, what constitutes a 'structured, audited deliverable,' or how the output relates to inputs. The reference case provides a partial example but lacks comprehensive coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 13%, yet the description fails to explain any parameter meanings or usage. It merely instructs to 'send the documented case fields' without elaborating on company, pillars, stakeholders, or audienceProfile. This severely hinders correct parameter value selection.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 sustainability report, identifying the verb (return) and resource (report). However, it does not explicitly differentiate from similar tools like sustainability_reporting_pilot, and the inclusion of a reference case and marketing language adds minor ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, such as sustainability_reporting_pilot. No explicit when-to-use or when-not-to-use conditions are given, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sustainability_reporting_pilotCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | ||
| company | Yes | ||
| dataInputs | Yes | ||
| materiality | Yes | ||
| targetFrameworks | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint=true, openWorldHint=true) already convey key behavioral traits. The description adds that inputs are validated server-side and returns a deliverable, which is consistent but does not disclose additional nuances like rate limits or error behavior. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at four sentences, each providing distinct information: tool name/type, output, reference case, and input validation. It is front-loaded with the key purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multiple nested objects, many parameters, no output schema), the description is insufficient. It does not explain the return format, how to structure the 'dataInputs' or 'materiality', or how to interpret results. The annotations and sibling tools demand more guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Description coverage of the input schema is only 17% (only the 'async' parameter has a description). The description does not explain any other parameters, nested objects, or required fields. It merely says 'send the documented case fields,' providing no added meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is a sustainability reporting pilot that returns a structured, audited deliverable, and references a CSRD case. However, the purpose is not precisely defined; it mixes French and English and does not clearly differentiate from sibling tools like 'sustainability_report' or '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.
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. There is no mention of use cases, prerequisites, or exclusions. The description only provides a reference case but does not help an agent 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.
syndicated_loan_covenant_breach_alertARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| loanId | Yes | Unique identifier for the syndicated loan | |
| currency | No | ISO currency code for financial values | |
| reportingPeriod | Yes | Time period for covenant compliance check | |
| covenantThresholds | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| breaches | No | |
| warnings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds context beyond annotations: uses Tradeweb data, returns breach alerts with market context and severity. Annotations already declare read-only and idempotent, so 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with core purpose. No redundant information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, description sufficiently covers inputs and output structure. Mentions structured alerts with market context and severity. Complete for a monitoring tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 80% of parameter descriptions; description does not add semantic detail beyond what schema provides. Nested covenantThresholds properties lack descriptions, but overall schema is informative.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it monitors syndicated loan covenants for breaches using Tradeweb market data, targeting CFOs. This distinguishes it from sibling tools like bond_covenant_monitor which focus on bonds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Designed for proactive compliance risk identification, but no explicit when-not-to-use or alternatives mentioned. Context is clear from sibling comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
syndicated_loan_pricing_benchmarkARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| tenor | Yes | Loan tenor (e.g., '5Y', '3Y') | |
| region | No | Region for benchmarking (e.g., 'US', 'EU') | |
| currency | Yes | Currency code (e.g., 'USD', 'EUR') | |
| loanAmount | Yes | Loan amount in millions | |
| creditRating | Yes | Borrower credit rating (e.g., 'BBB', 'BB+') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| benchmarks | No |
Tool Definition Quality
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 and output types without contradicting annotations. It does not discuss side effects or auth needs but these are implied to be safe.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is three sentences, front-loaded with purpose, then inputs/outputs, then use case. Every sentence adds value; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Has output schema so return values are documented. Description covers what the tool does, inputs, outputs, and use case. Could add more detail on interpreting benchmarks, but overall complete for a read-only tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description doesn't need to add much. It mentions input categories (loan amount, tenor, etc.) but no additional detail beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides peer benchmarking for syndicated loan pricing, names specific data sources (Tradeweb, FRED), and lists outputs (spread, yield, fee comparisons). It is distinct from sibling tools like competitor_pricing_radar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'Ideal for quick validation of loan competitiveness or negotiation preparation,' providing clear use context. However, it does not specify when not to use this tool or mention alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
talent_contract_risk_mapperARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| jurisdiction | Yes | State or country jurisdiction (e.g., 'California', 'Germany') | |
| contract_text | Yes | Full text of the employee contract or clause section to analyze | |
| employee_role | No | Job title or role classification (e.g., 'Software Engineer', 'Executive') | |
| effective_date | No | Contract effective date (YYYY-MM-DD) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| risk_summary | No | |
| suggested_revisions | No | |
| conflicting_statutes | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, and open-world behavior; the description adds context about external sources (USPTO, CourtListener, EUR-Lex) and output contents (risk levels, conflicting statutes, revisions), enhancing transparency 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three focused sentences: target user, core analysis with clauses and data sources, and use cases. No fluff, front-loaded with purpose, and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity, annotations (readOnly, openWorld, idempotent), full schema coverage, and output schema existence, the description provides sufficient context for usage and expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions already cover all 5 parameters with high detail (100% coverage). The description does not add new meaning beyond what's in the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes employee contracts for specific clauses (non-compete, IP assignment, confidentiality) and compares against labor laws, returning risk levels and suggestions. This specificity distinguishes it from siblings like contract_risk_scanner.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions ideal use cases (contract reviews, compliance audits, policy updates) and targets CHROs, but does not explicitly contrast with sibling tools or state when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
talent_intelligenceARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analysis mode: salary_benchmark=compensation data, skills_taxonomy=ESCO/O*NET mapping, job_market_trends=market growth and demand, adjacent_roles=career path recommendations. | |
| role | No | Job title (required for salary_benchmark, job_market_trends, adjacent_roles). Examples: "Senior Software Engineer", "Compliance Officer", "Data Scientist", "CFO". | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| skill | No | Skill to classify (required for skills_taxonomy mode). Examples: "Python", "transformer architecture", "GDPR", "Kubernetes", "leadership". | |
| country | No | ISO 2-letter country code. Default: US. Examples: US, FR, DE, GB, SG. | |
| seniority | No | Seniority level. Default: senior. Affects salary benchmark ranges. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| sources | Yes | |
| quality_score | Yes | |
| adjacent_roles | No | |
| skills_taxonomy | No | |
| salary_benchmark | No | |
| job_market_trends | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds valuable details: data is stable labour market data, cash-only, 24h cache TTL, and mention of an async parameter for slow queries. No rate limits or auth details beyond optional API key, but sufficient given annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured: a concise opening line followed by clear bullet points for each mode. Information is front-loaded with purpose and then details. Every sentence adds value (data sources, caveats, usage guidance), no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 (inferred), the description adequately covers all necessary context: mode-specific data sources, parameter constraints, cache behavior, and optional API key. The tool's complexity is fully addressed without missing critical information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with descriptions for all 6 parameters. The description adds semantic value by explaining the four mode options and their specific parameter requirements (e.g., role, skill, country, seniority). It enhances understanding of how parameters relate to modes beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides HR tech intelligence with four distinct modes (salary_benchmark, skills_taxonomy, job_market_trends, adjacent_roles). Each mode is explained with specific data sources (BLS OES, ESCO, O*NET, Levels.fyi) and use cases, differentiating it from sibling tools like comp_benchmark_geo_delta or global_salary_inflation_adjuster.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context: four modes with bullet points detailing when each is relevant, caveats like cash-only salary data, cache TTL, and optional ONET_API_KEY. However, it does not explicitly compare to sibling tools or state when not to use this tool over alternatives like comp_benchmark_geo_delta.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
talent_legal_dashboardARead-onlyIdempotentInspect
Generates a real-time legal risk dashboard for CHROs, covering contracts, intellectual property, and labor law compliance. Inputs include jurisdiction, employee count, and risk thresholds; outputs include risk scores, actionable alerts, and source citations. Ideal for proactive legal risk management and compliance monitoring. Pass async:true to avoid timeout.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| includeIP | No | ||
| jurisdiction | Yes | ||
| employeeCount | Yes | ||
| riskThreshold | No | ||
| includeLaborLaw | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| alerts | No | |
| status | Yes | |
| sources | No | |
| warnings | No | |
| riskScore | No | |
| lastUpdated | No |
Tool Definition Quality
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 noting the tool is 'real-time,' warns about potential timeouts via async, and describes output types (risk scores, alerts, citations). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (3 sentences + async tip), well-structured with the primary action first, followed by inputs/outputs, ideal use case, and a practical note. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and an output schema, the description covers the main purpose, target user (CHROs), key inputs, and output types without needing to replicate schema details. The async note adds practical completeness. Minor omission: no mention of the boolean parameters' default values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17% (only async documented). The description groups parameters as 'jurisdiction, employee count, and risk thresholds' and implies includeIP/includeLaborLaw through the coverage areas (contracts, IP, labor law), but does not explain each parameter's meaning, defaults, or constraints. Partial compensation but insufficient for low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a 'real-time legal risk dashboard for CHROs' covering contracts, IP, and labor law compliance. It includes specific inputs (jurisdiction, employee count, risk thresholds) and outputs (risk scores, alerts, citations), differentiating it from narrower sibling tools like talent_contract_risk_mapper or talent_litigation_exposure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it is 'ideal for proactive legal risk management and compliance monitoring' and provides an async usage tip to avoid timeout. However, it does not explicitly state when to use this tool versus alternatives or when not to use it, leaving room for ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
talent_litigation_exposureARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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_code | Yes | NAICS industry code (e.g., '541511' for IT services) | |
| employee_count | No | Current number of employees | |
| lookback_years | No | Number of years to analyze | |
| company_location | Yes | State or region where company operates (e.g., 'CA', 'New York') |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| warnings | Yes | |
| avg_settlement | No | Average settlement amount in USD |
| exposure_score | Yes | Normalized risk score (0-100) |
| historical_trend | No | |
| top_risk_factors | No | |
| lawsuit_frequency | No | Lawsuits per 1000 employees per year |
| industry_benchmark | No | Industry average exposure score |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds behavioral details about async usage and output for risk-aware invocation, providing additional value 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four concise sentences front-load the purpose, list inputs and outputs, state ideal uses, and include a crucial async tip. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers purpose, inputs, outputs, and async behavior. An output schema exists (not shown but indicated), so return values are addressed. It is complete enough for a moderately complex tool with good annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 5 parameters have descriptions in the schema (100% coverage). The description adds context for the 'async' parameter but does not provide significant new meaning beyond what the schema already offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool estimates litigation exposure risk for CHROs using specific inputs and outputs. It names the target user and use cases, making the purpose unambiguous and distinct 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear use cases ('legal risk assessment, HR strategy planning, board-level reporting') but does not explicitly exclude scenarios or mention alternative tools. The context is sufficient for most decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
talent_poaching_riskARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| location | No | Geographic location filter (e.g., 'San Francisco, CA') | |
| department | Yes | Department filter (e.g., 'Engineering', 'Sales') | |
| min_tenure_months | No | Minimum tenure in months to include in analysis | |
| benchmark_job_title | No | Specific job title for compensation benchmarking |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| risk_assessment | No | |
| department_avg_risk | No | |
| benchmark_comparison | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and open-world behavior. The description adds value by disclosing data sources (LinkedIn activity, BLS benchmarks) and output nature (ranked list, risk scores, suggestions). This provides useful behavioral context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences plus keywords, front-loading the main purpose. Every sentence adds value, and there is no redundant information. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, output schema exists), the description covers the tool's purpose, data sources, and output. It could be more complete with usage guidelines or limitations, but it is sufficient for most agents.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already describes all parameters. The description gives overall context but does not elaborate on individual parameters beyond what the schema provides. Thus, baseline of 3 is maintained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes employee poaching risk using LinkedIn activity and compensation data, targeting CHROs. It specifies the output: a ranked list with risk scores and retention actions. However, it does not differentiate from sibling tools like 'talent_intelligence' or 'comp_benchmark_geo_delta', so a 4 is appropriate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions ideal use for proactive talent retention strategies, implying context. However, it lacks explicit guidance on when to use this tool versus alternatives or when not to use it. No exclusions or cross-references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tariff_arbitrage_finderARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| annualVolume | No | ||
| currentHsCode | Yes | ||
| countryOfOrigin | Yes | ||
| currentDutyRate | No | ||
| productDescription | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| opportunities | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds behavioral context by explaining the analysis approach (against WTO TFA and USA Trade Online data) and outputs (duty savings, alternative HS codes, compliance considerations). This adds value beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each sentence serves a purpose: role/purpose, method, inputs/outputs. No redundant information. Front-loaded with the primary goal. Efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 exists), the description adequately covers the core purpose and inputs/outputs. However, it omits details about async capability and the output schema, which is provided separately. It is sufficient but not exhaustive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17% (only async param described). The description lists inputs ('product description, current HS code, country of origin, and annual import volume') but does not explain patterns, constraints, or optional params like currentDutyRate and async. This provides minimal added meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool's purpose: 'identify tariff reclassification opportunities to reduce import costs.' It specifies the user role (COO) and the data sources (WTO TFA, USA Trade Online). The name and description differentiate it from sibling tools like tariff_impact_simulator by focusing on reclassification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a COO wants to reduce import costs via tariff reclassification, but it does not explicitly state when to use this tool versus alternatives (e.g., tariff_impact_simulator) or provide exclusion criteria. No guidance on prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tariff_impact_simulatorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| hsCode | Yes | ||
| productValue | Yes | ||
| shippingCost | No | ||
| countryOfOrigin | Yes | ||
| currentTariffRate | Yes | ||
| proposedTariffRate | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| costImpact | No | |
| currentDuty | No | |
| proposedDuty | No | |
| dutyDifference | No | |
| currentLandedCost | No | |
| proposedLandedCost | No | |
| costImpactPercentage | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. Description adds value by disclosing external data sources (WTO TFA, US Census) and output structure (cost breakdown, duties, taxes). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. Purpose stated first, followed by inputs and outputs. Highly efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present (though not shown), description lists expected outputs. Combined with annotations, it covers the tool's behavior adequately. Missing async handling details but not critical for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (14% only for async), but the description names key parameters and explains their role in the model (e.g., 'product value, shipping cost'). This compensates for missing schema descriptions, though async parameter is omitted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'model' and resource 'tariff changes affect landed costs', clearly distinguishing it from siblings like tariff_arbitrage_finder. Inputs and outputs are enumerated, making purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description states role ('As a COO') and scenario but does not explicitly mention when to avoid or compare with alternatives. No exclusion criteria or sibling differentiation provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tax_compliance_multiARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Tax mode to invoke. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Mode-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'). | |
| country | No | ISO 3166-1 alpha-2 country code. Required for gst when query is ambiguous. Used in transfer_pricing_benchmark for country-specific OECD adjustments. | |
| transaction_type | No | Transaction type for signal generation. 'digital' triggers GST/sales-tax digital goods warnings. |
Output Schema
| Name | Required | Description |
|---|---|---|
| gst | No | |
| mode | Yes | |
| status | Yes | |
| signals | Yes | |
| sources | Yes | |
| oss_ioss | No | |
| sales_tax | No | |
| vat_lookup | No | |
| quality_score | Yes | |
| transfer_pricing | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only and idempotent behavior. The description adds significant behavioral context: returns P0/P1/P2 compliance signals with threat levels, cache TTL of 24h, and the asynchronous option via 'async' parameter. It also mentions optional key for UK VAT, which is a behavioral nuance not covered by 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured paragraph with numbered modes for clarity. It is dense but efficient, front-loading the purpose and covering all essential aspects (modes, inputs, key requirements, cache, output signals) without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 modes, 5 parameters, output schema exists), the description covers all user-facing aspects: mode details, query format requirements, optional country parameter, async capability, key requirements, cache TTL, and output signal classification. The output schema handles return structure, so no further detail needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The description adds value by explaining the meaning of each mode and providing examples for the 'query' parameter (e.g., 'FR40303265045' for vat_lookup). It also clarifies the 'country' parameter's role in gst and transfer_pricing_benchmark, going beyond the schema's generic description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides multi-jurisdiction tax compliance data for international SaaS, cross-border marketplaces, and expat services, with five distinct modes enumerated (vat_lookup, sales_tax, gst, oss_ioss_eligibility, transfer_pricing_benchmark). Each mode is explicitly linked to a specific use case, and the tool is differentiated from siblings by its comprehensive coverage and keyless access.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies five modes and their input requirements, implying when to use each (e.g., 'vat_lookup — validate EU VAT numbers live'). It also notes the optional HMRC_VAT_API_KEY for UK validation and states 'Keyless — no API key required', providing practical usage guidance. However, it does not explicitly exclude alternatives or contrast with sibling tools, missing a full when-not scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tax_optimizationBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| ipAssets | No | ||
| activities | Yes | ||
| financials | Yes | ||
| jurisdictions | Yes | ||
| currentTaxOptimizations | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and openWorldHint=true, indicating a safe read operation with external data access. The description adds that inputs are validated server-side and returns a structured deliverable. However, it does not disclose specifics like permission requirements, rate limits, or behavior on invalid inputs. Given the annotations cover the safety profile, the description adds marginal but acceptable 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short and front-loads the purpose and target audience. It includes a concrete reference case and mentions server-side validation. However, the phrase 'Gapup agent-payable C-suite expertise (CFO)' is somewhat jargon-heavy but still concise. No wasted sentences, but could be slightly tighter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high complexity (7 parameters, nested objects, no output schema) and low schema coverage, the description is incomplete. It does not describe the output format ('structured, audited deliverable' is vague), nor does it explain the significance of the reference case or how the deliverable is structured. The agent lacks crucial context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the parameters beyond 'send the documented case fields.' Most properties in the input schema lack descriptions, and the tool description adds no further meaning. For a tool with 7 parameters including nested objects, this is insufficient for the agent to understand what data to provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description indicates the tool performs tax optimization ('Optimisation fiscale') and returns a structured audited deliverable. It references a specific case (Pennylane) and targets C-suite expertise (CFO). While the verb is implied rather than explicit, it is clear that the tool analyzes and produces a tax optimization report. It does not explicitly differentiate from sibling tools like tax_compliance_multi or ma_tax_efficiency_mapper, but the focus on CFO-level optimization is somewhat distinctive.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description suggests usage for tax optimization by CFOs (C-suite expertise) but provides no direct guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It does not mention conditions or contexts where this tool is preferred, leaving the agent to infer usage from the purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
term_sheet_negotiationCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| round | Yes | ||
| company | Yes | ||
| termSheetClauses | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states the tool returns a deliverable and validates inputs server-side, adding some context beyond the readOnlyHint annotation. However, it lacks details on performance, side effects, or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
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 adds some useful context but could be considered unnecessary fluff. Overall, it is concise but not minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complex nested input schema and no output schema, the description is incomplete. It does not describe the deliverable format, scoring interpretation, or what the output looks like, leaving the agent with significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has low description coverage (25%) with only the async parameter documented. The description does not explain the meaning of company, round, or termSheetClauses, nor their nested fields. It only says 'send the documented case fields,' which is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs term sheet negotiation analysis and returns a structured deliverable, with a specific reference case. However, it does not distinguish this from sibling tools like deal_coach or cap_table_strategist, which could be similar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only mentions 'Gapup agent-payable C-suite expertise' and a reference case, but no explicit when-to-use or 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.
tool_recommendARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Optional ISO 639-1 language hint (fr, en, de, zh, es …). Used for language-aware boosting. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| domain | No | Optional domain hint to boost tools in this category. | |
| intent | Yes | Free-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_results | No | Max number of recommendations returned (1-10). Default 5. | |
| include_chain | No | Whether 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
| Name | Required | Description |
|---|---|---|
| intent | Yes | |
| status | Yes | |
| sources | No | |
| not_covered | No | |
| quality_score | Yes | |
| recommendations | Yes | |
| suggested_chain | No | |
| alternative_paths | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, openWorldHint), the description adds important behavioral context: 'Pure compute — $0.01/call, no external fetch', mentions async mode, and references pre-designed chains. It could be improved by noting any limitations, but adds significant value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, well-structured, and front-loaded with the core functionality. Every sentence adds value, covering purpose, usage, domains, cost, and chains without extraneous text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (170+ tools, domains, chains, async, output schema), the description is remarkably complete. It covers when to use, domains, cost, async behavior, and hints at output features, leaving no major gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with good descriptions for each parameter. The description does not add new parameter semantics beyond what the schema provides; it reinforces the intent parameter's role but doesn't explain parameters like lang, async, domain, max_results, include_chain in more depth.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: a cross-tool recommendation system that returns appropriate tools from a catalogue given a free-text intent. It distinguishes itself from siblings by being the go-to tool for navigating the full set of tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises '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 and implying alternatives (other tools) when the intent is known.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trade_finance_eligibilityARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| industrySector | Yes | ||
| annualTradeVolumeUSD | No | ||
| counterpartyCountryCode | Yes | ||
| counterpartyCreditRating | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| eligibility | No | |
| financingTerms | No | |
| countryRiskScore | No | |
| maxFinancingAmountUSD | No | |
| recommendedInstruments | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, open-world, and idempotent behavior. The description adds value by detailing return values (risk scores, eligibility flags, financing terms) and data sources, which enhances transparency 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (4 sentences) and well-structured, starting with the core purpose, then inputs, outputs, use cases, and keywords. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, the description covers the main aspects: purpose, inputs, outputs, and use cases. It could mention processing time or limitations, but overall it provides sufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 20% schema description coverage, the description compensates partially by naming two key inputs and their roles. However, it omits the annualTradeVolumeUSD and counterpartyCreditRating parameters, leaving ambiguities for the agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 ('Evaluates') and resource ('trade finance eligibility'). It distinguishes itself from sibling tools by mentioning specific use cases (letters of credit, ECA guarantees) and data sources (World Bank, BIS).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, citing ideal applications like letters of credit and export credit agency guarantees. However, it does not explicitly state when not to use it or compare it 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_mediaARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | YouTube URL, podcast RSS feed URL, or direct MP3/MP4 URL. Example: "https://www.youtube.com/watch?v=jNQXAC9IVRw" | |
| lang | No | ISO 639-1 language hint (e.g. "en", "fr", "de"). Default "auto". | |
| async | No | If true, returns a job_id 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_max | No | Maximum number of chapters. Default 8. | |
| output_format | No | Transcript format. Default "json". | |
| include_summary | No | Include extractive summary. Default true. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| status | Yes | |
| signals | Yes | |
| sources | Yes | |
| summary | No | |
| chapters | Yes | |
| segments | Yes | |
| key_topics | Yes | |
| transcript | Yes | |
| source_type | Yes | |
| lang_detected | Yes | |
| quality_score | Yes | |
| duration_seconds | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds substantial behavioral context: pipeline steps (TF-IDF fallback, language detection), caching (24h TTL), SLA (≤15s), async option, and output formats. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with bullet points and sections, front-loading the main purpose and pipeline details. It is somewhat lengthy but each clause provides necessary information without redundancy. Minor trimming could improve conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multiple source types, fallbacks, output formats, async support) and the presence of an output schema, the description covers all critical behavioral aspects: source handling, SLA, cache, language detection, and fallback logic. It is fully adequate for agent decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 6 parameters with descriptions. The description adds context about the async parameter and polling via job_result, but does not provide additional semantic nuance beyond what the schema offers. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs transcription and chapterization of long-form media, listing specific sources (YouTube, podcasts, direct audio/video) and target use cases (content marketing, podcast publishers, etc.). It is a specific verb+resource that effectively distinguishes itself from sibling tools, none of which are directly comparable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides detailed usage guidance for each media source (YouTube keyless captions, Podcast RSS, direct media requiring Whisper API) and mentions fallback mechanisms. It lacks explicit when-not-to-use or alternative tool references, but the context is clear enough for an agent to decide based on source and requirements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
treasury_optimizerBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| horizon | No | ||
| constraints | Yes | ||
| cashPosition | Yes |
Tool Definition Quality
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 validates inputs server-side, which provides marginal value beyond annotations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences but includes a verbose reference case in French and English. It could be more concise and focused on helping the agent understand the tool's purpose and usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has complex nested parameters with no output schema. The description only says 'structured, audited deliverable' without detailing return values or how inputs map to results. This is incomplete given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (20%, only async has a description). The description does not explain the meaning of the 5 parameters except via a vague reference case. It fails to compensate for the low schema coverage, leaving the agent uncertain about fields like company, cashPosition, and constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is an 'Optimiseur de trésorerie' that returns a structured audited deliverable, with a specific reference case. However, it does not differentiate from sibling tools like working_capital or capital_strategy, which are also financial optimization tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for CFO-level treasury optimization via a reference case, but lacks explicit guidance on when to use versus alternatives. The sibling list is large and no differentiation is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trend_watcherARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| focus | No | Optional context (geography, language target, comparator window, etc.) | |
| sector | Yes | Sector to monitor (e.g. 'B2B SaaS productivity', 'EU fintech', 'climate-tech hardware') | |
| keywords | Yes | 3-8 keywords describing the watch perimeter |
Output Schema
| Name | Required | Description |
|---|---|---|
| kpis | No | 3-5 headline KPI bubbles |
| trends | Yes | 5-12 trend cards for the sector |
| recommendations | No | Prioritised strategic recommendations |
| executiveSummary | Yes | Board-ready sector overview prose |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and no destruction. The description adds behavioral details: returns a structured set of 5-12 trend cards with specific fields (momentum score, 3-month/12-month outlook, etc.). It does not contradict annotations and provides useful context about the 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is reasonably concise and front-loaded with the main purpose. However, the closing sentence 'Delivered by Manue...' is marketing fluff that does not add functional value. Removing it would improve conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity, existing annotations (readOnly, idempotent, non-destructive), and the presence of an output schema, the description fully covers what an agent needs: purpose, when to use, parameter guidance, and output structure. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 paraphrasing the two required params ('sector to monitor' and 'keywords defining the watch perimeter') and clarifying the optional 'focus' parameter as 'geography, language target, etc.' This aids understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Monitor emerging trends, regulatory shifts and adoption signals for a given market sector.' It specifies the output format (5-12 trend cards with scores, outlooks, etc.) and explicitly differentiates from siblings by listing when to use ('what is heating up in a market, wants to time a product roadmap...'). This is specific and distinguishes it from other market analysis tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 with three concrete scenarios, helping the agent select it over siblings. However, it does not provide when-not-to-use guidance or mention alternative tools, which would strengthen it further.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ugc_moderation_classifierARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language override. If omitted, language is auto-detected. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| content | Yes | Text content to moderate (comment, review, post, chat message). | |
| policies | No | Policies to check. Default: all 9 policies. | |
| content_type | No | Type of content. Affects recommended_action heuristic. Default: comment. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| signals | Yes | |
| sources | Yes | |
| violations | Yes | |
| lang_detected | Yes | |
| quality_score | Yes | |
| age_appropriate | Yes | |
| content_preview | Yes | |
| policies_checked | Yes | |
| recommended_action | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds significant behavioral context beyond annotations: statelessness (no storage/logging), auto language detection, async mode, output details (severity, confidence, matched patterns, etc.), and no API key requirement. Annotations already declare readOnlyHint=true and idempotentHint=true, but description enriches transparency with 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is well-structured with a concise opening line, bulleted policy list, language enumeration, and output summary. It is front-loaded with key information. However, it is somewhat lengthy (several paragraphs), and some repetition (e.g., 'No API key required' appears twice). A slightly more condensed version could improve conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema exists), the description covers all aspects: input requirements (content, optional lang, policies, async, content_type), behavior (stateless, no storage, async polling), and output (severity, confidence, etc.). The existence of an output schema reduces the need to detail return values, but the description already provides ample context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Despite 100% schema coverage, description adds meaningful context: each policy is listed with examples (e.g., 'hate — hate speech, slurs, dehumanization (50+ terms × 12 languages)'), languages explicitly enumerated, async parameter explained with usage guidance, and content_type's effect on recommended_action heuristic described. This far exceeds the schema's brief descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description explicitly states it is a multi-language UGC content moderation tool that detects policy violations in text across 9 policies and 12 languages. The verb 'detects' combined with concrete policy list leaves no ambiguity about its function, and it clearly distinguishes itself from sibling tools by focusing on moderation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for social platforms, marketplaces, and comment systems by stating 'Multi-language UGC content moderation for marketplaces, social platforms and comment systems.' It also specifies that no external API calls are needed and no API key is required. However, it does not explicitly contrast with similar tools like 'jailbreak_attempt_detector' or provide when-not-to-use scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upsell_hunterBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| horizon | No | ||
| product | Yes | ||
| accounts | Yes | ||
| targetUpsellEur | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, indicating a safe, non-destructive operation without complex constraints. The description adds that inputs are validated server-side and it returns a structured deliverable, but does not disclose further behavioral traits (e.g., rate limits, processing time, side effects). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise (3 sentences) but mixes French and English, and includes a dense reference case that may confuse some agents. It is not front-loaded with the most critical information and could be better structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the input schema (6 parameters, nested objects, no output schema), the description is insufficient. It does not explain the output format, how to handle results, or provide examples beyond the brief case. An agent cannot confidently use this tool without additional information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 'documented case fields' but does not explain the meaning or usage of each parameter. It provides a high-level example (company, product, accounts) but lacks detail needed for correct invocation, especially for nested objects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: identifying upsell opportunities ('Chasseur d'upsell') and returning a structured, audited deliverable. It includes a concrete reference case that illustrates the type of output. The tool is distinct from its many siblings, as none specifically target upsell hunting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 does not mention prerequisites, exclusion criteria, or comparison to other tools. The reference case hints at context but does not define clear usage boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
usdc_x402_payments_intelARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analytics mode: facilitator_stats=network-wide settlements | endpoint_intel=per-URL analytics | agent_caller_profile=per-wallet analytics | price_radar=price distribution by category | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| category | No | Tool category for price_radar mode. Defaults to all. | |
| period_days | No | Lookback window in days (5-90, default 30) | |
| endpoint_url | No | MCP endpoint URL for endpoint_intel mode (e.g. https://mcp.gapup.io/mcp) | |
| wallet_address | No | EVM wallet address for agent_caller_profile mode (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| sources | Yes | |
| price_radar | No | |
| quality_score | Yes | |
| endpoint_intel | No | |
| facilitator_stats | No | |
| agent_caller_profile | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, openWorldHint=true, and destructiveHint=false. The description adds critical behavioral details: cache TTL (30 min LRU), source timeout (8s), fallback behavior (CDP API vs RPC scan), and data source uniqueness. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with bulleted modes and front-loaded purpose. It is comprehensive but slightly verbose; every sentence adds value for a complex tool. Could be tightened slightly, but effectiveness justifies the length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 modes, multiple data sources, caching, env var), the description covers all necessary context: network, contract address, data sources, fallback, cache, timeout, and optional API key. An output schema exists, so return values are not required in the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The tool description does not add significant meaning beyond what the schema provides; it reiterates mode names but no per-parameter enrichment. Baseline of 3 is appropriate since schema already carries the load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as providing real-time analytics on x402 protocol USDC micropayments, detailing four distinct modes (facilitator_stats, endpoint_intel, agent_caller_profile, price_radar) and unique data sources. It differentiates itself from siblings like x402_liquidity_monitor and x402_payment_flow_analyzer by focusing on aggregated intelligence with proprietary telemetry.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly guides usage by explaining each mode's purpose (e.g., 'facilitator_stats — network-wide settlements', 'endpoint_intel — per-URL analytics'). However, it lacks explicit 'when-not-to-use' or direct comparisons with sibling tools, which would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vendor_esg_blacklist_monitorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Reporting year (default: current year) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| vendorId | No | Optional identifier (e.g., LEI, DUNS) | |
| vendorName | Yes | Legal name of the vendor to check |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| vendorId | No | |
| warnings | Yes | |
| griAligned | No | |
| vendorName | Yes | |
| violations | No | |
| blacklisted | Yes | |
| esgRiskScore | No | |
| cdpDisclosureScore | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, indicating a safe, idempotent query. The description adds detail about the response data (CDP score, GRI alignment, regulatory flags) and mentions the async parameter behavior, providing useful context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (4 sentences) and front-loaded with the tool's core function. The keyword list is slightly redundant but does not detract significantly. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, the description sufficiently explains what the tool returns. It covers the main use case and data points, making it complete for a query tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are well-documented. The description reinforces that vendorName is the legal name and vendorId is an identifier (e.g., LEI, DUNS), but adds minimal semantics 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'check if a vendor is blacklisted for ESG non-compliance using CDP and GRI data.' It specifies the action, resource, and data sources. The sibling list includes other vendor risk tools, but this tool's focus on ESG blacklist is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides usage context: 'Ideal for vendor due diligence, risk assessment, and sustainability reporting.' It implies when to use the tool but does not explicitly compare with 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.
vendor_esg_diversity_scannerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Reporting year to check (default: current year) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| supplierId | No | CDP or GRI identifier for the supplier (e.g., CDP company ID) | |
| supplierName | Yes | Exact or partial name of the supplier to scan |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| reportLinks | No | URLs to relevant ESG reports |
| supplierName | Yes | |
| complianceScore | Yes | Percentage compliance with diversity disclosure standards |
| diversityDisclosures | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint. The description adds value by specifying data sources ('CDP open data and GRI standards') and output details ('compliance gaps, missing data flags, source references'). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each adding value: target user, action/input, output/use case. Front-loaded with 'For COOs' and efficient wording with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Has output schema, so description doesn't need to detail return values. It mentions the key outputs (structured assessment, gaps, flags, references) and data sources, which is sufficient for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 reinforces using 'supplier name or identifier' (matching supplierName and supplierId) but does not add new semantics beyond what the schema already provides. The async parameter is not mentioned.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs ('scans', 'identify', 'returns') and clearly states it targets diversity disclosure gaps in ESG reports from GRI or CDP. It distinguishes from sibling tools like 'supplier_esg_audit' or 'vendor_risk_assessor' by focusing specifically on diversity metrics and missing data flags.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly targets COOs and states ideal use cases ('vendor risk assessment', 'ESG compliance tracking'). However, it does not provide when-not-to-use or mention alternative tools, which would improve differentiation given many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vendor_managementCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| vendors | Yes | ||
| objectives | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the async option and server-side validation provide some additional context. However, the description does not elaborate on what the deliverable contains, how long the analysis takes, or any specific behavioral 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise at four sentences but adds a lengthy reference case with specific numbers that may not be generalizable and could confuse non-French readers. The structure front-loads a vague purpose but wastes words on a case example instead of core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of nested objects, no output schema, and 200+ siblings, the description is insufficient. It does not specify the deliverable format, what the tool returns, or how to differentiate from sibling tools like procurement_spend_optim or vendor_risk_assessor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25%, yet the description compensates poorly. It merely says 'send the documented case fields' without explaining any of the three required parameters (company, vendors, objectives) or their nested properties. The async parameter is documented in the schema but not in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states it's for vendor management and mentions a reference case showing savings identification, but lacks a clear verb specifying the exact action (e.g., analyze, audit, optimize). With 200+ siblings including vendor_esg_blacklist_monitor and vendor_risk_assessor, the description does not clearly distinguish this tool's core purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (COO)' implies executive-level use but does not specify criteria for choosing this over similar vendor tools. There is no 'when not to use' or comparison to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vendor_risk_assessorCRead-onlyInspect
É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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| vendors | Yes | ||
| riskFramework | No | ||
| assessmentPurpose | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that it returns a 'structured, audited deliverable' and that inputs are validated server-side. Annotations already declare readOnlyHint=true and openWorldHint=true, so the core behavioral traits are covered. The description provides minor additional context but 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise, with key information front-loaded. The reference case is useful but adds some verbosity. The mix of French and English may reduce clarity for English-only agents. Overall, it is efficiently structured but could be tighter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 format, how results relate to inputs, or prerequisites. The reference case is anecdotal, not general guidance. The agent would need additional context to use this tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 parameters, relying on 'send the documented case fields' which is vague. For a complex nested-object schema, this leaves the agent without sufficient semantic context to use parameters correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it evaluates vendor risk and returns a structured deliverable. The verb 'Évaluateur de risque' and reference case give context. However, jargon like 'Gapup agent-payable C-suite expertise' and lack of explicit distinction from sibling tools like vendor_management or supplier_esg_audit prevent 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.
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 phrase 'send the documented case fields' implies sending required parameters but offers no context on selection criteria or exclusions. Sibling tools cover similar domains, yet no differentiation is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vertical_ai_agent_governanceARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| target_roles | No | ||
| workforce_size | Yes | ||
| ai_adoption_level | No | ||
| include_benchmarks | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| skill_gap_analysis | No | |
| integration_roadmap | No | |
| collaboration_metrics | No | |
| governance_recommendations | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnly, openWorld, and idempotent hints. The description adds context about potential timeout and advises async usage, plus mentions data sources (O*NET, Gartner). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the main purpose, then listing inputs, outputs, and data sources. It is concise but could perhaps be slightly tighter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters and an output schema, the description covers main inputs and outputs but not all parameters. With output schema present, return values need not be detailed, but parameter list is not fully explained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%. The description mentions industry, workforce_size, and ai_adoption_level, but omits async, target_roles, and include_benchmarks. Partial compensation but incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a 'comprehensive vertical AI agent workforce integration plan for CHROs', specifying a specific verb and resource. It distinguishes itself from siblings like 'ai_governance_full_report_async' by being vertical-specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists required inputs and outputs, and advises using async for large datasets to avoid timeout. However, it does not explicitly say when to use this tool versus alternatives among sibling AI governance tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vuln_exploitability_forecastARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| cveId | Yes | ||
| cloudProvider | No | ||
| includeDetails | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| cveId | Yes | |
| status | Yes | |
| sources | Yes | |
| warnings | Yes | |
| epssScore | No | |
| lastUpdated | No | |
| cloudExposure | No | |
| epssPercentile | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already specify readOnlyHint, openWorldHint, idempotentHint. The description adds context about return values (exploitability likelihood, affected cloud services, threat intelligence) and async behavior. No contradictions; description enhances transparency 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, each adding value: purpose, input, output, sources, async. No redundant text. Front-loaded with key purpose. Efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 params and an output schema (exists but not shown). Description covers main purpose, input, output nature, and async option. It omits cloudProvider and includeDetails, but overall provides sufficient context given the output schema availability. Minor gaps prevent a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (25%). The description adds meaning for cveId (example format) and async (purpose), but fails to explain cloudProvider (enum) and includeDetails (boolean with default). This leaves half the parameters undocumented, requiring compensation that is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool assesses exploitability risk of CVEs using EPSS scores and cloud asset exposure data, with a specific verb ('assess') and resource ('CVEs'). It distinguishes from siblings like cve_security_lookup by focusing on exploitability and cloud exposure, though not explicitly naming alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives implicit usage guidance (input CVE ID, pass async:true to avoid timeout) and mentions sources. However, it does not explicitly differentiate from sibling tools like cve_security_lookup or vuln_patch_priority_engine, nor does it state when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vuln_patch_priority_engineARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| cveIds | Yes | List of CVE identifiers to analyze (e.g., ["CVE-2021-44228", "CVE-2023-3824"]) | |
| maxResults | No | Maximum number of prioritized CVEs to return (default: 10) | |
| awsServices | No | AWS service types affected by these CVEs (e.g., ["EC2", "RDS", "Lambda"]) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| prioritizedCves | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as readOnly, idempotent, and openWorld. The description adds value by detailing data sources (NVD, OpenCVE, AWS pricing) and outputs (ranked order, risk scores, cloud impact), providing 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the value proposition. It efficiently covers input, output, and data sources. Minor redundancy (e.g., 'As a CTO' could be omitted) but overall well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema details shown, the description adequately covers inputs, outputs, and data sources. It explains what the tool returns (ranked patching order) and its ideal use cases, making it sufficiently complete for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining that cveIds and awsServices are used together for prioritization, and that maxResults controls output count. This contextualizes the parameters beyond their schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'prioritize unpatched CVEs by combining exploitability scores (EPSS) with cloud asset criticality.' This specific verb-resource pair differentiates it from sibling tools like cve_security_lookup, which is a basic lookup, and vuln_exploitability_forecast, which focuses on scoring alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description positions the tool as a solution for CTOs needing quick prioritization of unpatched CVEs, ideal for 'vulnerability management and cloud security posture improvement.' While it implies when to use it, it does not explicitly state when not to use it or name alternative tools, but the context is clear enough for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
weather_climate_intelARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | 'forecast' (14 days), 'historical' (date range since 1940), 'climate_risk' (long-term physical risk score) | |
| async | No | If true, returns a job_id 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_to | No | ISO date YYYY-MM-DD — end of date range (required for historical/climate_risk) | |
| metrics | No | Weather metrics to include. Default: all metrics. | |
| location | Yes | Geographic location. Provide either {city, country?} or {lat, lon}. | |
| date_from | No | ISO date YYYY-MM-DD — start of date range (required for historical/climate_risk) |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | |
| status | Yes | |
| sources | Yes | |
| forecast | No | |
| location | Yes | |
| historical | No | |
| climate_risk | No | |
| quality_score | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant context beyond annotations, including keyless external API usage, SLA (≤25s p95), cache durations, and the async option. It explains the data pipeline (Open-Meteo, Open-Elevation, FEMA, NOAA). No contradiction with annotations (readOnlyHint=true, openWorldHint=true).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is comprehensive but somewhat verbose. It is well-structured with numbered modes and clear sections (sources, SLA, cache). Every sentence adds value, but given the complexity, the length is justified. Could be slightly more terse without losing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers all necessary aspects: usage modes, input parameters, data sources, performance expectations, caching behavior, and the existence of an output schema. For a tool with 6 parameters, nested objects, and three modes, this provides complete guidance for proper invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters have schema descriptions (100% coverage). The description adds meaning by explaining how the 'mode' parameter affects behavior, clarifying location options (city vs lat/lon), and specifying that metrics default to all. This enriches the schema's information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides 'Physical climate intelligence' and enumerates three distinct modes: forecast, historical, climate_risk. Each mode is described with specific use cases, sources, and output characteristics. This specificity distinguishes it effectively 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly outlines when to use each mode (forecast 14-day, historical since 1940, climate_risk long-term). It provides context such as SLA, cache policies, and data sources. While it doesn't include explicit 'when not to use' statements, the detailed mode descriptions implicitly guide selection.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | The question to answer | |
| includeText | No | Include the full text of each cited source (default false) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It accurately discloses that the tool returns answer text plus sources and uses live web data. However, it doesn't mention potential latency, non-determinism, or any operational caveats beyond what the schema hints at via 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core behavior and immediately followed by usage guidance. Every word earns its place; no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explicitly states what the tool returns (answer text plus cited sources), which compensates for the lack of an output schema. However, with no annotations and only a brief description, it doesn't cover potential edge cases or limitations (e.g., source quality, timeouts), leaving some gap for a complete picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides thorough descriptions for all three parameters (query, async, includeText), so schema coverage is 100%. The tool description adds no additional parameter-level meaning beyond connecting query to the question being answered.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb ('Get'), resource ('a direct, cited answer to a question'), and scope ('grounded in live web sources'). It distinguishes from siblings like web_search by emphasizing conclusion vs. list of links.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says when to use ('when you want a conclusion rather than a list of links'), providing an implicit contrast with search tools. However, it doesn't name the alternative sibling tool explicitly, 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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | The URLs to extract | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| summary | No | Also return a short summary of each page | |
| highlights | No | Also return the most relevant excerpts |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It accurately states the core behavior (extract full text) and optional features (highlights, summary). However, it does not discuss error handling, what happens with inaccessible URLs, rate limits, or the structure of the return value, leaving some 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: the first states the primary action, the second gives usage context. Every word earns its place, and the key purpose is front-loaded. No filler or redundant detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward tool with 4 well-documented parameters, the description covers the essential purpose and use case. There is no output schema, but the output is implied by 'full text of specific URLs'. It could mention async behavior or return format, but it is not vitally incomplete for an extraction tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 4 parameters have descriptions in the schema, so baseline is 3. The description mentions 'optional highlights and a summary' which mirrors the schema's 'summary' and 'highlights' parameters, adding no new semantic value. It does not clarify any parameter nuances beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Extract' and resource 'full text of specific URLs', with optional highlights and summary. It clearly distinguishes itself from search tools by stating 'Use when you already know which pages you need, rather than searching for them.' This makes the purpose unambiguous and well-differentiated from siblings 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly provides a usage condition: 'Use when you already know which pages you need, rather than searching for them.' This tells the agent when to choose this tool over search-based alternatives, though it doesn't name specific sibling tools. It is clear, actionable, and addresses the primary decision point.
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).
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | (register) HTTPS/HTTP endpoint that will receive POST callbacks. Must return 2xx within 10s. | |
| mode | Yes | register — 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. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| events | No | (register, optional) Events to subscribe to. Defaults to all events if omitted. | |
| secret | No | (register, optional) A secret string used to sign deliveries with HMAC-SHA256. Store it safely — verify X-Gapup-Signature header on your receiver. | |
| webhook_id | No | (revoke / test / history) The webhook_id returned from register. | |
| caller_hash | No | Optional caller identity override. If omitted, uses the internal session hash. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behaviors: soft-delete for revoke, HMAC-SHA256 signature for security, test mode, and history of last 20 fires. Annotations are consistent (non-readonly, non-destructive).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loads purpose, and efficiently lists modes, events, and security in a structured manner without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 7 parameters and multiple modes, the description covers behavior, security, events, and usage flow. The presence of an output schema further reduces the need to detail return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds extra context (e.g., async for slow tools, security details, soft-delete). While schema already describes each parameter, the description integrates them into a coherent workflow.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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, listing specific events and modes. It distinguishes itself from sibling tools by focusing on webhook callback management.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explains when to use webhooks ('Instead of polling every 5s') and details each mode (register, list, revoke, test, history). However, it could be more explicit about when not to use it, but the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_searchAInspect
Neural and keyword web search over the live web. Returns ranked results with title, URL, publication date and author, optionally with the page text. Sub-second on repeat queries (5-minute cache).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Search mode (default auto) | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | The search query | |
| category | No | Restrict results to one kind of page | |
| numResults | No | How many results (default 10) | |
| includeText | No | Include the page text in each result (default false) | |
| excludeDomains | No | ||
| includeDomains | No | ||
| startPublishedDate | No | ISO-8601 date; only pages published after it |
Tool Definition Quality
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 credibly discloses the return format (title, URL, publication date, author) and performance traits (sub-second on repeat queries, 5-minute cache), which are valuable beyond the schema. It does not cover edge cases like errors or rate limits, but for a read-only search tool the disclosed behavior is sufficient to 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise: two sentences covering purpose, output, and performance. Every clause adds value, with no redundant phrasing or repetition of schema information. It is front-loaded with the core function and then provides the most important details without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 9 parameters and no output schema, so the description needs to explain return values, which it does. It describes the core use case and result format, and the schema covers the remaining parameters in detail. It does not mention asynchronous behavior or all search modes, but the description plus schema is fairly complete for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema descriptions cover 78% of parameters, providing solid baseline understanding. The description adds marginal value by mapping 'neural and keyword' to the type parameter and 'optionally with the page text' to includeText, but it does not explain other parameters like category, numResults, or domain filters. Given the high schema coverage, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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: 'Neural and keyword web search over the live web.' It explicitly states the output (ranked results with title, URL, publication date, author, optional page text), making the tool's purpose unmistakable. This distinguishes it from sibling tools like web_answer and web_contents by focusing on ranked search results.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: it is a web search tool that returns ranked results, and can optionally include page text or be restricted by category/domain. However, it does not explicitly mention when to prefer this tool over alternatives like web_search_multilang or sci_literature_search, nor does it state exclusion criteria. This is clear context without explicit alternatives, meriting a 4.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_search_multilangARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | 2-letter language code. If omitted, auto-detected from query characters and lexical markers. | |
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| query | Yes | Search query in any language | |
| country | No | ISO-3166-1 alpha-2 country code for geographic bias (e.g. FR, DE, JP, BR). Optional. | |
| max_results | No | Maximum number of results to return (default 10). |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| status | Yes | |
| results | Yes | |
| sources | Yes | |
| by_engine | Yes | |
| lang_used | Yes | |
| country_used | No | |
| quality_score | Yes | |
| total_unique_results | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, indicating safe read-only behavior. The description adds significant behavioral context: aggregates from multiple sources, deduplicates results, and ranks by cross-engine consensus. It also notes that Brave/Bing/Searx are blocked and mentions proxy configuration. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sentences, but slightly verbose. It includes some extraneous details like 'Phase 2 #7' which may not be necessary. Overall, it is appropriately sized and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multi-source, multi-language, async, blocked engines), the description covers usage, sources, supported languages, constraints (blocked engines), and async polling mechanism. An output schema exists, so return values need not be explained. It is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining auto-detection of language from query characters, the async parameter's purpose (polling via job_result), and the country code for geographic bias. These details go beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a multi-language, multi-source web search that goes beyond Anglo-centric results. It lists specific languages (15) and sources (Mojeek, Wikipedia, DDG, HN), and distinguishes itself from general search tools by its multilingual focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'Use when you need non-English search results, when DDG fails, or for geographically-biased queries.' This gives clear context for when to use the tool. It does not explicitly state when not to use, but the positive guidance is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
win_loss_decoderBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| deals | Yes | ||
| company | Yes | ||
| product | Yes | ||
| topCompetitors | No | ||
| primaryChallenge | No | ||
| salesCycleTargetDays | No |
Tool Definition Quality
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 the output is an audited deliverable, which is useful but does not disclose async behavior (despite an async parameter) or rate limits. It provides moderate additional context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (4 sentences) and front-loaded with the purpose. The reference case is a nice touch but could be omitted without losing core meaning. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 parameters, nested objects, no output schema), the description is too brief. It does not describe the return format or expected behavior for the async parameter, leaving significant gaps for the agent to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (14%), yet the description does not explain any parameters beyond a vague 'send the documented case fields'. It fails to compensate for the lack of schema descriptions, leaving the agent unclear on what each field means.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes Win/Loss deals and returns a structured deliverable. However, it does not explicitly distinguish itself from sibling tools like deal_coach or competitive_deep_dive, which could also analyze deals. The reference to C-suite expertise adds specificity but not differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for win/loss analysis but provides no explicit guidance on when to use it versus alternatives, nor does it mention when not to use it. The context is clear but lacks exclusion criteria 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.
workflow_orchestratorARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| params | No | Optional overrides passed to sub-tools. Keys depend on workflow (e.g., country, sector, role, drug, technology, wallet_address, acquirer). | |
| target | Yes | The entity to analyze. A company name for most workflows; location for climate_property_assessment; role+country for talent_market_brief. | |
| workflow | Yes | Named workflow to execute. Each workflow chains 3-7 tools sequentially. | |
| skip_failed_steps | No | Default true: continue on step failure. Set false to abort on first error. |
Output Schema
| Name | Required | Description |
|---|---|---|
| target | Yes | |
| outputs | Yes | |
| summary | Yes | |
| workflow | Yes | |
| overall_status | Yes | |
| steps_executed | Yes | |
| total_duration_ms | Yes | |
| estimated_cost_usd | Yes | |
| consolidated_signals | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behavioral traits beyond annotations: 1h LRU cache per (workflow, target), 60s global timeout with partial results on timeout, and return structure (steps_executed, consolidated signals, cost, raw outputs). Annotations provide readOnlyHint=true and openWorldHint=true, which the description does not contradict.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well-organized: it starts with the core function, lists all workflows with step details, then return format, cache, budget, and usage. Some details (e.g., full step names) could be trimmed, but it remains efficient and front-loaded with purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity as a meta-orchestrator with 5 parameters, an output schema, and no return structure in the output schema, the description fully covers workflow definitions, return structure, caching, timeout behavior, and usage guidance. It is complete and actionable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, providing a baseline of 3. The description adds meaningful context: workflow lists the enum values and step counts, target explains per-workflow semantics, params notes optional overrides, async describes job_id behavior, skip_failed_steps states default. This goes beyond the schema's descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies it as a meta-tool that chains multiple MCP tools into named workflows. It lists 10 predefined workflows with specific steps and constituent tools, and describes the composite output. This distinguishes 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'Use when an agent needs a composite deliverable without orchestrating tools manually.' This provides clear guidance on when to use. It does not explicitly mention when not to use, but the context implies alternatives are manual orchestration of individual tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
working_capitalCRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id 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 | Yes | ||
| industry | No | ||
| challenges | Yes | ||
| financials | Yes | ||
| topCustomers | No | ||
| topSuppliers | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and openWorldHint=true. The description adds that inputs are validated server-side, which is common, and does not contradict annotations. However, it does not elaborate on behavioral traits like side effects, authorization, or latency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but includes marketing fluff (e.g., 'Gapup agent-payable C-suite expertise (CFO)', reference case). While front-loaded with purpose, it could be more concise and direct.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 parameters, nested objects, no output schema, the description lacks essential context. It does not describe the deliverable's structure, success conditions, or how to interpret the output, leaving significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 14% (low). The description does not explain any parameters beyond saying 'send the documented case fields', providing no added semantics. Parameters have minimal schema descriptions, but the tool description should compensate for low coverage, which it fails to do.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is a 'BFR Optimizer' for CFO-level working capital optimization, which is clear. It mentions returning a structured deliverable and provides a reference case. However, it does not explicitly differentiate from sibling tools like 'working_capital_esg_impact_rater' 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.
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 references CFO expertise and a case study, but does not state prerequisites, exclusions, 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.
working_capital_esg_impact_raterBRead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| region | Yes | Primary geographic exposure (e.g., 'EU', 'APAC') | |
| sector | Yes | Industry sector (e.g., 'manufacturing', 'energy') | |
| currency | No | Reporting currency (ISO 4217 code, e.g., 'USD', 'EUR') | |
| esgRiskScore | Yes | Aggregate ESG risk score (0-100) | |
| workingCapitalRatio | No | Current working capital ratio (current assets / current liabilities) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| impactRating | No | ESG impact on working capital efficiency (-100 to +100) |
| esgFactorBreakdown | No | |
| liquidityRiskIndicator | No | IMF SDR-aligned liquidity risk score (0-1) |
| workingCapitalAdjustment | No | Projected adjustment to working capital ratio (%) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds context about data sources (IMF SDR, BIS) and output types, but does not disclose rate limits, caching, or other behavioural traits. It is consistent with 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, each adds value. Front-loaded with the purpose ('assess how ESG factors influence working capital efficiency'). No wasted words. Appropriate length given the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and an output schema, the description covers the key aspects: inputs, outputs, and data sources. It is complete enough for an AI agent to understand the tool's role, though it could briefly mention the output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters have descriptions in the schema. The tool description adds meaning by listing some inputs (sector, region, esgRiskScore) and mentioning output concepts like DSO and liquidity risk, but does not describe parameters not mentioned (async, currency, workingCapitalRatio). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool's purpose clearly: assesses how ESG factors influence working capital efficiency using specific data sources (IMF SDR, BIS). It lists inputs and outputs, but does not differentiate from sibling tools like 'working_capital' or 'esg_audit_multi', so it is not a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description addresses a CFO persona and lists inputs, but provides no guidance on when to use this tool versus alternatives. Siblings like 'working_capital' and 'esg_audit_multi' exist, and no exclusions or context for selection are given.
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_optimizerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| baseCurrency | Yes | ISO 4217 code of the company's functional currency (e.g., 'USD', 'EUR') | |
| riskAppetite | No | Company's risk tolerance for currency fluctuations | balanced |
| timeHorizonDays | No | Planning horizon in days (default: 90) | |
| targetCurrencies | Yes | ISO 4217 codes of currencies to hedge against (e.g., ['EUR', 'GBP', 'JPY']) | |
| workingCapitalAmounts | Yes | Working capital amounts in each target currency (e.g., { EUR: 5000000, GBP: 3000000 }) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | No | |
| warnings | No | |
| recommendations | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations: it analyzes real-time ECB and FRED rates, implying external data access. Annotations declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, which align. No mention of async behavior or error handling, but safety profile is clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured paragraph with no wasted words. It front-loads the purpose and audience in the first sentence, and efficiently covers inputs and outputs. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains inputs (required parameters), process (analyzes rates, recommends strategies), and outputs (hedge ratios, cost savings, risk metrics). With an output schema available and 100% schema coverage, the description is nearly complete. Minor omission: optional parameters (riskAppetite, timeHorizonDays) are not mentioned, but defaults exist.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions for all 6 parameters. The description merely restates the required inputs ('base currency, target currencies, working capital amounts') without adding new semantics. It does not enhance understanding beyond the schema, so baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 FX rates to recommend hedging strategies for CFOs. It specifies the audience (CFOs managing multinational working capital) and key outputs (forward contracts, natural hedge opportunities, cost-benefit analysis). This distinguishes it from sibling tools like 'working_capital' and 'treasury_optimizer'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly targets CFOs managing multinational working capital, indicating when to use the tool. However, it does not provide when-not-to-use guidance or compare to alternatives like 'treasury_optimizer' or 'working_capital'. The context is clear but lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x402_liquidity_monitorARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| exchanges | No | List of exchanges to monitor (defaults to all 12 if empty) | |
| depthLevels | No | Liquidity depth levels to analyze (percentage from mid-price) | |
| slippageThreshold | Yes | Maximum acceptable slippage percentage (0-100) |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| midPrice | No | Current x402-USDC mid-price |
| warnings | Yes | |
| priceImpact | No | |
| liquidityDepth | Yes | |
| slippageAlerts | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, openWorld, and idempotent behavior. The description adds value by detailing outputs (liquidity depth, price impact, warning flags) and the real-time nature. It does not contradict annotations, but could further clarify data freshness or caching.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences: purpose, inputs/outputs, and keywords. It is mostly concise, though the final keywords line adds marginal value. It fronts the core information effectively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (real-time monitoring across 12 exchanges) and that both input schema and output schema are fully described, the description adequately covers purpose, usage context, and high-level behavior. No critical gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The description merely repeats 'slippage thresholds and exchange selection' without adding new meaning or usage details beyond the schema, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('monitors'), the resource ('x402-USDC liquidity depth across 12 exchanges'), and the outputs ('slippage alerts and depth analysis'). It distinguishes this tool from siblings like x402_payment_flow_analyzer by focusing on liquidity depth monitoring for CFO risk assessment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states it is 'essential for optimizing trade execution and managing liquidity exposure' and implies usage for liquidity risk assessment, but it does not explicitly compare to alternative tools or specify when not to use it. Among numerous siblings, more explicit guidance would be beneficial.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x402_payment_flow_analyzerARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| depth | No | Hops to trace in payment flow | |
| txHash | No | USDC transaction hash to trace | |
| address | Yes | Ethereum wallet address to analyze | |
| includeRiskScore | No | Include counterparty risk scoring |
Output Schema
| Name | Required | Description |
|---|---|---|
| flowId | No | Unique identifier for this payment flow analysis |
| status | Yes | |
| sources | No | |
| warnings | No | |
| riskScore | No | Counterparty risk score (0-100) |
| complianceFlags | No | |
| exposureSummary | No | |
| transactionPath | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations (readOnlyHint, openWorldHint, idempotentHint) by disclosing use of Chainalysis and TRM Labs public APIs, the nature of outputs (risk scores, flow diagrams, compliance flags), and the async behavior. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: the first states purpose and inputs/outputs, the second covers usage scenarios and a performance tip. No wasted words, and key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 sufficiently covers its purpose, inputs, outputs, and use cases. An output schema exists, so return values are documented. The description provides enough context for selection among siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 meaning beyond the schema's parameter descriptions; it only briefly mentions input types in the purpose statement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes USDC payment flows involving x402 addresses for counterparty risk, transaction tracing, and regulatory exposure. It specifies input types and outputs (risk scores, flow diagrams, compliance flags), distinguishing it from related siblings like x402_payment_fraud_detector or x402_liquidity_monitor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description notes ideal use cases (due diligence, fraud detection, compliance reporting) and provides an async tip to avoid timeouts. However, it does not explicitly state when not to use this tool or mention alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x402_payment_fraud_detectorBRead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| async | No | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts. | |
| walletAddress | No | ||
| includeHistory | No | ||
| amountThreshold | No | ||
| transactionHash | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| sources | Yes | |
| warnings | Yes | |
| riskScore | Yes | |
| isSuspicious | Yes | |
| sanctionsMatch | No | |
| fraudIndicators | No | |
| transactionHistory | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the description carries less burden. The description adds value by noting the async parameter to avoid timeouts, but it does not elaborate on other behavioral aspects like response size or error handling. The tool is non-destructive, which aligns 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise at three sentences. It starts with the purpose, then inputs and outputs, then target audience, and ends with an important note about async usage. The structure is logical and front-loads key information, though the async note could be more prominent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 safety annotations, the description provides adequate but not thorough context. It covers the main inputs and async behavior, but omits details on includeHistory and amountThreshold. It is sufficiently complete for a risk assessment tool but could be more informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (20%), but the description explains that the tool takes a transaction hash or wallet address, covering two key parameters. It does not mention includeHistory or amountThreshold. The async parameter is well-described in the schema itself. The description partially compensates for low schema coverage but not entirely.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 x402-USDC payment transactions for fraud patterns using on-chain forensics. It specifies inputs (transaction hash or wallet address) and outputs (risk scores, suspicious indicators, historical patterns). While it doesn't explicitly differentiate from siblings like x402_liquidity_monitor or usdc_x402_payments_intel, the focus on fraud detection and on-chain forensics provides implicit distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the tool is 'designed for risk management teams to quickly assess payment legitimacy,' giving some usage context. However, it does not provide explicit when-to-use or when-not-to-use guidance, nor does it compare with alternative tools. The usage is implied but not fully specified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Alicense-qualityCmaintenance250+ AI-powered MCP tools: research, write, code, translate, scrape, sentiment, vision, RAG, agent memory, marketplace, trading signals, and more. 15 models across 7 providers. Pay-per-use via API key or x402 USDC micropayments.2MIT
- Alicense-qualityAmaintenance62 real-time data tools for AI agents via MCP. Finance, crypto, FMCSA, sanctions, courts, weather, vehicles, cybersecurity. One bearer token, one bill. Free tier available.MIT
- AlicenseCqualityBmaintenanceOne MCP install that lets your AI agents discover and pay (x402 micropayments, USDC on Base + Solana) for 66 specialized real-time intelligence APIs - finance, crypto, insurance, immigration, legal, markets and more. 68 tools, pey-per-query, no subscription.69272Apache 2.0
- Flicense-qualityBmaintenanceAI research on companies and industries — one MCP tool per research domain.
Your Connectors
Sign in to create a connector for this server.
social_engagement_velocity_trackerATracks 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.
Output Schema
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, openWorldHint, idempotentHint. Description adds output context (metrics, trends, insights) but does not disclose potential limitations, rate limits, or data freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences front-loading purpose and inputs/outputs. The keywords list is slightly superfluous but does not harm clarity. Efficient for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 (not shown but mentioned), the description adequately covers the tool's functionality. Could mention pagination or real-time aspects more explicitly, but sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (33%) but description explains the inputs: platform handles/subreddits and time range, adding meaning beyond the schema. The async parameter is already explained in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool tracks hourly social engagement velocity across three specific platforms, with inputs and outputs enumerated. It distinguishes itself from sibling marketing tools by specifying the exact metrics and use case.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides ideal use cases ('real-time marketing performance monitoring and competitive benchmarking') but lacks explicit when-not-to-use or alternatives. No comparison to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.