Soundcheck Live Event Quotes
Server Details
Price any live event: parties, weddings, conferences, concerts. Instant estimates, no login.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- soundchecklive/soundcheck-plugin
- GitHub Stars
- 0
TDQS
Scored across 15 tools
Every tool targets a distinct resource or workflow step: UEF schema/validation/analysis, place/org lookup, inventory/position normalization and search, pricing/market/quoting, and booking/sponsorship submission. Even paired tools like get_place vs search_places are clearly separated by exact-id lookup vs name-based search.
All tool names follow a consistent snake_case verb_noun convention (analyze_event_to_uef, list_positions, quote_event, request_booking). The verb stems vary by action but are predictable and never mixed with camelCase or inconsistent styles.
At 15 tools, the set sits at the upper edge of the ideal range but each tool earns its place in the event quoting and booking workflow. The count feels slightly heavy for a quotes-focused server, but the breadth is justified by the need to handle UEF parsing, catalog lookups, normalization, pricing, and lead submission.
The server covers the full front-end workflow: parse messy event details, validate against UEF, understand roles and gear, generate quotes, check real market pricing, and submit booking/sponsorship requests. Minor gaps include no explicit quote retrieval/status tool and no UEF update/delete operation, though quote_event's quote_id refinement handles iteration.
Available Tools
15 toolsanalyze_event_to_uefAnalyze event text to UEFARead-onlyInspect
Turn messy live-event material (pasted festival pack, email, rundown, or notes) into a Universal Event Format (UEF) draft plus missing_fields, open_questions, and confidence. Call this when the user pasted event details and you need a structured draft before staffing or booking. Analyze only: no login, no organization, nothing is saved or committed, and dates/venues are never invented (absent facts stay null and appear in missing_fields). Requires AI gateway on the server; if unavailable the tool returns a clear error instead of being omitted from tools/list. Optional hint: event type, locale, or format (text|csv|unknown). File upload (content_base64) is a follow-up — paste text for now.
| Name | Required | Description | Default |
|---|---|---|---|
| hint | No | optional event type, locale, or format hint (text|csv|unknown); freeform hints are prepended to the source text | |
| text | No | messy pasted event pack / email / rundown / notes to analyze into UEF | |
| raw_input | No | legacy alias for text (normalize_event_data compatibility) | |
| format_hint | No | legacy alias for hint when the value is text|csv|unknown |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint=true and destructiveHint=false, and the description adds substantial behavioral context: 'nothing is saved or committed,' dates/venues are never invented, absent facts stay null and appear in missing_fields, and the AI gateway requirement with a clear error fallback. 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?
Four sentences, front-loaded with purpose and usage, then behavioral guarantees and operational caveats. Each sentence earns its place, though the hint sentence partially duplicates schema 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 description covers input types, output fields, safety guarantees, error behavior, and prerequisites, and an output schema exists so return values need not be spelled out. An agent has enough context to invoke 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 description coverage is 100%, so the baseline is 3. The description mentions the optional hint and format values but largely repeats what the schema already documents; it does not add meaningful new 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?
States a specific verb and resource: 'Turn messy live-event material ... into a Universal Event Format (UEF) draft plus missing_fields, open_questions, and confidence.' It clearly distinguishes this from booking/staffing tools by saying 'before staffing or booking' and emphasizing 'Analyze only.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 'Call this when the user pasted event details and you need a structured draft before staffing or booking.' It also instructs 'paste text for now' and notes that file upload is a follow-up. However, it does not name sibling tools like validate_uef or normalize_* as 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.
get_placeGet public place by idARead-onlyInspect
Look up one entry from the seeded public industry places catalog by stable id (e.g. venue_red-rocks-amphitheatre). Not org-private CRM data; returns not found when the id is absent from the seed.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | stable catalog id, e.g. venue_red-rocks-amphitheatre |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only and non-destructive, so the description adds meaningful behavioral context: the data comes from a seeded public catalog, it is not org-private CRM data, and an absent id returns not found. This goes beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The core lookup behavior is front-loaded, followed by a useful data-scope caveat. 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?
For a single-parameter, read-only lookup with an output schema and closed-world annotations, the description covers data source, id stability, scope exclusions, and not-found behavior. Nothing essential is 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?
Schema description coverage is 100% and the schema already documents id as a 'stable catalog id' with the same example. The description reinforces the example and data-source context but does not add new parameter-level 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?
States a specific verb and resource: 'Look up one entry from the seeded public industry places catalog by stable id.' It clearly distinguishes itself from search_places by emphasizing a single lookup by stable id, not a 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 establishes when to use this tool: retrieving a specific known place by stable id. It also clarifies an exclusion ('Not org-private CRM data') and notes the closed-world behavior, though it does not explicitly name search_places as the alternative for lookup by criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_public_orgGet public organizationARead-onlyInspect
Look up a Soundcheck organization's public profile by its slug or id (name, description, genre, website, public contact + social links). Use this to confirm an org exists before submitting a booking or sponsorship request.
| Name | Required | Description | Default |
|---|---|---|---|
| identifier | Yes | the organization's public slug or id |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds the specifics of what a public profile contains and its confirmation purpose, but does not disclose error handling, rate limits, or any edge-case behavior. Given annotations, this is adequate but not rich; it adds some 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?
Two sentences with no wasted words. The main action and return details are front-loaded, followed by a clear usage directive. Every part 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?
The tool is simple (single required parameter), has a rich output schema, and annotations cover read-only behavior. The description tells the agent exactly what it returns and why to call it, which is sufficient for correct invocation. No critical missing information for this straightforward read operation.
Complex tools with many parameters or behaviors need more documentation. 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%, and the schema already describes 'identifier' as 'the organization's public slug or id.' The description repeats this same information ('by its slug or id') without adding new meaning, such as format constraints, examples, or behavior when the identifier is invalid. It meets the baseline for full schema coverage but adds no 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 states a specific verb ('Look up'), a clear resource ('Soundcheck organization's public profile'), and enumerates the fields returned (name, description, genre, website, contact, social links). It also positions the tool against sibling actions like request_booking/request_sponsorship by mentioning the confirmation use case, making it distinct from get_place or search_places.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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: 'Use this to confirm an org exists before submitting a booking or sponsorship request.' This gives clear contextual guidance. However, it does not explicitly name alternative tools or state when not to use it, though the mention of booking/sponsorship implicitly distinguishes it from those actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_uef_schemaGet UEF schemaARead-onlyInspect
Return the Universal Event Format (UEF) JSON Schema for EVENT imports (schema_version 1.0), plus minimal and festival-style examples and a docs URL. Use as a schema textbook before drafting or editing UEF — no login, no AI, nothing is saved. Pair with validate_uef to check a draft locally.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it readOnly and non-destructive, but the description adds valuable behavioral depth beyond that: 'no login, no AI, nothing is saved'. This discloses statelessness and privacy-relevant behavior, which is exactly the kind of context that helps an agent predict 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?
Two sentences carry all essential information: return payload, version, examples, docs link, usage timing, side-effect guarantees, and the pairing with validate_uef. It is front-loaded with the core deliverable and contains no fluff or repeated schema info.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 zero-input, read-only reference tool with an output schema defined, the description covers everything an agent needs: what it returns, when to call it, what side effects it doesn't have, and how it relates to a sibling validation tool. There are no missing pieces 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?
There are zero parameters locked in the schema, and schema coverage is 100%, so there is nothing for the description to explain about inputs. Per the baseline for zero-parameter tools, a 4 is appropriate; the description doesn't need to spend space on 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 names a specific verb ('Return') and a precise resource ('Universal Event Format (UEF) JSON Schema for EVENT imports (schema_version 1.0)'), and it further scopes the deliverable to include examples and a docs URL. This distinguishes it from generic schema tools and from siblings like validate_uef. The phrase 'schema textbook' clarifies its specific role clearly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 it: 'before drafting or editing UEF'. It also points to a complementary alternative, validate_uef, for checking a draft locally, giving the agent clear routing guidance. No ambiguity remains about when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_positionsList crew positionsARead-onlyInspect
List the standard crew positions/roles used to staff a live event (e.g. audio engineer, lighting, stagehand, performer), grouped by section. Use this to understand what roles a live event needs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the behavioral detail that results are 'grouped by section,' which is useful context. It does not contradict annotations and provides additional structure beyond what annotations convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. The action ('List') and resource ('standard crew positions/roles') are front-loaded, followed by concrete examples and a usage hint. Every word 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 no parameters and an output schema exists, the description fully covers what the tool does and when to use it. The grouping behavior is mentioned, and no additional operational details (e.g., pagination, error handling) are needed for a read-only list endpoint.
Complex tools with many parameters or behaviors need more documentation. 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 tool has zero parameters, and the schema description coverage is 100% (trivially). Per the baseline rule, a score of 4 is appropriate since the description does not need to explain parameters. It also adds no misleading 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 lists standard crew positions/roles for live events, with specific examples (audio engineer, lighting, stagehand, performer) and mentions grouping by section. This is a specific verb+resource with a clear purpose. It implicitly differentiates from sibling 'normalize_positions' by focusing on listing rather than transforming.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context: 'Use this to understand what roles a live event needs.' It tells the agent when to invoke the tool but does not explicitly mention when not to use it or name alternative tools. Since the purpose is unambiguous and there are no parameters, this is adequate guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_quote_packagesList quote packages and ratesARead-onlyInspect
Use this when someone asks how an event quote was priced, or wants typical live-event production rates (tech hours, gear, add-ons, how prices differ by city). Browse the public Soundcheck pricing catalog behind quote_event: event profiles, production tiers with their tech-hour and per-day gear rates, add-on packages, metro market indexes, and the rules (overtime, logistics, attendance scale, deposit steps, estimate band). SYNTHETIC and illustrative — published so a quote can be checked line by line, not a price list any organization charges.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds meaningful behavioral context beyond those annotations: the catalog is 'SYNTHETIC and illustrative,' published for line-by-line quote checking, and explicitly not a price list any organization charges. This prevents a critical misuse of the data.
Agents need to know what a tool does to the 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 wasted words: first the trigger conditions, then the catalog contents, then the synthetic-data warning. The most decision-relevant information is front-loaded, and 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 no parameters, a read-only annotation profile, and the presence of an output schema, the description is complete for an agent to select and invoke the tool correctly. It explains what the tool returns conceptually, why it exists, and the critical caveat that the data is synthetic, leaving no obvious gap for correct 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?
The tool has zero parameters and the schema is empty, so there are no parameter semantics to document. The description compensates by clarifying what content the tool exposes—event profiles, production tiers, add-ons, market indexes, and rules—which gives the agent a useful mental model of the catalog scope.
Input schemas describe structure but not intent. Descriptions should explain 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 use case—'when someone asks how an event quote was priced, or wants typical live-event production rates'—and names the resource: the public Soundcheck pricing catalog behind quote_event. It clearly differentiates this browsing/listing tool from the quote_event tool it supports, and the SYNTHETIC caveat removes ambiguity about the data's real-world 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?
The description explicitly states when to use the tool: to check how a quote was priced or to find typical production rates by city. It also identifies quote_event as the related tool whose catalog this browses. However, it does not explicitly name alternative siblings like lookup_market_pricing or state a direct 'use X instead' rule, so guidance is strong but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_market_pricingLook up market pricingARead-onlyInspect
Return real market price ranges for live-event services (DJ, live band, audio, lighting, video, stage crew, photography, production packages, performance fees) in a city, state, or country, with the evidence behind each range. Every number comes from recorded evidence: published vendor rates and industry rate cards with source URLs, plus Soundcheck booking actuals that are only ever released as aggregates backed by at least 3 distinct organizations — never a single org, never a named customer. No price is ever invented or modelled: when the evidence is missing the tool returns coverage "none" with a null range and no numbers at all, and walks market to region to country looking for real data first. Each category comes back with low/typical/high plus min and max, a basis block counting the evidence, up to 10 citable evidence rows, and a plain-English explanation. event_type, guest_count and duration_hours are accepted and echoed in the explanation but do not narrow the evidence yet.
| Name | Required | Description | Default |
|---|---|---|---|
| market | No | city market to price, e.g. "Chicago, IL"; falls back to region then country | |
| region | No | US state name or two-letter code, e.g. "IL"; used when the market has no evidence | |
| country | No | ISO-3166 alpha-2 country code; defaults to US | |
| event_date | No | event civil day as YYYY-MM-DD | |
| event_type | No | event type such as wedding or festival; echoed back, does not filter yet | |
| guest_count | No | expected guest count; echoed back, does not filter yet | |
| pricing_unit | No | restrict evidence to one pricing unit; otherwise the dominant unit is reported | |
| duration_hours | No | expected service duration in hours; echoed back, does not filter yet | |
| service_categories | Yes | what to price, 1-6 entries from: DJ, LIVE_BAND, AUDIO_PRODUCTION, LIGHTING, VIDEO, STAGE_CREW, PHOTOGRAPHY, PRODUCTION_PACKAGE, PERFORMANCE_FEE |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes far beyond the readOnlyHint and destructiveHint annotations: it explains the evidence policy (only published rates and aggregate booking actuals from at least 3 organizations), the no-invention guarantee, the coverage 'none' behavior with null ranges, the fallback walk from market to region to country, and the exact output structure. This is exemplary behavioral disclosure.
Agents need to know what a tool does to the 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 every sentence earns its place: purpose, evidence provenance, missing-data behavior, fallback logic, output shape, and parameter caveats. It is front-loaded with the core purpose and structured so an agent can quickly extract the key invariants.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 9-parameter tool with an output schema, the description covers everything needed to invoke it correctly: what inputs mean, how fallback works, what null results mean, what the response contains (low/typical/high, basis, up to 10 evidence rows), and which parameters currently do not filter. No critical behavioral detail is 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?
Schema description coverage is 100%, so the schema already documents all 9 parameters, including enums and fallback semantics. The description adds some context—notably that event_type, guest_count, and duration_hours are echoed but do not narrow evidence—but this largely repeats what the schema already states, so it meets the baseline without exceeding it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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: 'Return real market price ranges for live-event services' in a defined geography, with an explicit list of categories (DJ, live band, audio, lighting, etc.). This clearly distinguishes it from siblings like quote_event or search_inventory, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 clear context for when to use the tool: when the agent needs evidence-backed market pricing for live-event services, with a defined fallback chain from market to region to country. It does not explicitly name alternatives or exclusion conditions, but the purpose is specific enough that usage intent is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
normalize_inventoryNormalize inventory linesARead-onlyInspect
Map free-text gear lines onto the public Soundcheck inventory catalog. Returns mapped[] (input, inventory_id, name, category, confidence) and unmapped[] (input + suggestions). Deterministic alias matching (e.g. SM58 → mic_shure_sm58). Does not read or write organization inventory stock. Use search_inventory to browse the taxonomy.
| Name | Required | Description | Default |
|---|---|---|---|
| lines | No | gear lines to normalize (e.g. ["SM58", "2x passive DI", "moving head"]). Empty/whitespace lines are skipped. Max 64 lines, 200 chars each. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
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 behavioral detail: it confirms no read/write on org stock, specifies deterministic alias matching with an example, and describes the output shape. 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 with no fluff: purpose, output, behavior, and alternative. The core purpose is front-loaded, and each sentence earns its place 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?
With an output schema present, return values are covered. The description provides all necessary context for correct invocation: what it maps, how matching works, what it doesn't touch, and where to go for taxonomy browsing. Nothing critical is missing 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 100%, and the schema already documents the lines array with constraints (maxLength, maxItems, empty/whitespace skipping). The description adds a usage example but does not provide meaning beyond what the schema states, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Map free-text gear lines') and the target resource ('public Soundcheck inventory catalog'), with a concrete example of alias matching. It also distinguishes itself from search_inventory by explicitly naming it as the browsing tool, 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 provides explicit guidance on when not to use the tool ('Does not read or write organization inventory stock') and names an alternative ('Use search_inventory to browse the taxonomy'). It doesn't cover all siblings, but the key distinction is made, giving an agent a clear decision path.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
normalize_positionsNormalize crew positionsARead-onlyInspect
Map free-text crew role strings (slang, abbreviations, informal titles) to the Soundcheck global position catalog — the same roles returned by list_positions. Use when you have role labels like FOH, A2, sound guy, LD, or stagehand and need catalog position ids and canonical names/sections. Use list_positions when you need to browse the full catalog. Does not create or write positions; unknown roles are returned as unmapped with fuzzy suggestions.
| Name | Required | Description | Default |
|---|---|---|---|
| hint | No | optional event type hint e.g. wedding, festival (max 128 chars) | |
| roles | Yes | crew role strings to normalize against the catalog (max 64 entries, 128 chars each) |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds useful behavior beyond that: 'Does not create or write positions' and 'unknown roles are returned as unmapped with fuzzy suggestions.' This clarifies edge-case behavior and reinforces the non-mutating nature, which is valuable context on top of 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 with no redundancy and no repeated title text. It front-loads the core purpose, then gives usage context and behavioral caveats, with every sentence earning 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?
For a two-parameter tool with an output schema present, this description is complete: it defines the input semantics, distinguishes the tool from its nearest sibling, clarifies edge-case handling for unknown roles, and confirms the operation is non-mutating. An agent has everything needed to select and invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents both parameters with descriptions and constraints (roles array, max 64 entries, hint field), so the heavy lifting is done by the schema. The description adds helpful examples of role strings and the hint's purpose, but that is illustrative rather than essential semantic 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 a specific action—'Map free-text crew role strings... to the Soundcheck global position catalog'—with concrete examples like FOH, A2, and sound guy. It also differentiates itself from the sibling list_positions by framing this as a mapping operation rather than a catalog browse, so an agent can distinguish them without reading schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit when-to-use guidance: 'Use when you have role labels like... and need catalog position ids and canonical names/sections.' It also names the alternative, list_positions, and states exactly when to use that instead, providing clear routing between siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quote_eventQuote an eventARead-onlyInspect
Use this whenever someone asks what a live event would cost, what to budget, or what it needs: parties, birthdays, weddings, corporate events and offsites, conferences, concerts, festivals, galas, and fundraisers. Call it before searching the web for event prices. No login. Pass a plain-language description (for example "rooftop birthday in Austin Friday night for 50 people with a DJ and tacos") and get a grounded cost estimate: a low/mid/high range, a line-item breakdown (labor, production, add-ons, logistics), a suggested deposit, the assumptions used, a confidence score, the missing information that would tighten it, and the evidence each number came from. Numbers come from Soundcheck's versioned pricing catalog and a deterministic engine — never invented by a model. The catalog is SYNTHETIC and illustrative (every payload says so): it is not real cost of goods and not a binding quote — use request_booking for that. Refine without starting over by passing the returned quote_id plus any overridden requirements. Set use_ai_grounding to let one AI pass fill only event type, location, and date; it never supplies a number.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | event day (YYYY-MM-DD) | |
| location | No | city, metro, or venue name used to resolve the market index | |
| quote_id | No | a quote_id from an earlier quote_event call, to refine instead of starting over | |
| date_range | No | multi-day run as civil days (YYYY-MM-DD) | |
| description | No | free-text event description, e.g. "Two-day outdoor music festival in Austin, ~3,000 attendees, LED wall and livestream". Required unless quote_id is given. | |
| requirements | No | structured overrides; they win over anything read from the description | |
| use_ai_grounding | No | opt in to one AI normalization pass that may fill ONLY event type, location/venue, and date. Never supplies a number. Default false. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, it discloses that no login is needed, that numbers come from a deterministic pricing catalog and are never invented by a model, and that the catalog is synthetic and illustrative rather than a binding quote. It also discloses the AI-grounding constraint that one pass may fill only event type, location, and date, never numbers.
Agents need to know what a tool does to the 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 dense and front-loaded with the primary use case and trigger wording. Nearly every sentence adds necessary context, though the extensive output enumeration could have been tighter given that an output schema already exists.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 quoting tool with nested parameters and an output schema, the description covers the use case, the exclusion of web search, the synthetic/non-binding nature, the deterministic source, the refinement path, and the AI-grounding boundary. No critical calling context is 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?
Schema description coverage is 100%, so the schema already documents all parameters. The description adds real semantic value by explaining the free-text description expectation, the quote_id refinement workflow, and the precise limitation of use_ai_grounding, but it does not need to re-explain every field.
Input schemas describe structure but not intent. Descriptions should explain 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 is explicit: it computes a cost estimate for live events, invoked whenever someone asks what an event would cost or budget. It distinguishes itself from web search ('Call it before searching the web') and from request_booking ('use request_booking for that'), so an agent can separate 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?
It gives clear triggers ('whenever someone asks what a live event would cost...'), explicitly says to call it before web searching, and names request_booking as the alternative for a binding quote. This is strong when-to-use and 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.
request_bookingRequest bookingAInspect
Submit a booking / staffing request to a Soundcheck organization on behalf of someone planning a live event. Creates a lead the org's team will follow up on. Requires organization_id, name, email, event_date, event_type, and location. If you're not certain the organization_id (slug or id) is correct, call get_public_org first to confirm it. If the user pasted messy event material, call analyze_event_to_uef first to draft UEF and see missing fields before booking.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | the requester's name | |
| Yes | the requester's email | ||
| phone | No | the requester's phone | |
| budget | No | approximate budget, free-form | |
| message | No | what the requester needs (roles, headcount, details) | |
| location | Yes | where the event is (city / venue / address) | |
| event_date | Yes | the event date (e.g. 2026-07-04) | |
| event_type | Yes | the kind of event (e.g. wedding, festival, corporate, concert) | |
| organization_id | Yes | the Soundcheck organization to send this booking/staffing request to (slug or id) |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false and provide little safety context, so the description carries the burden of explaining side effects. It does this well by stating that the call creates a lead and that the team will follow up, which sets expectations that this is not a confirmed booking. Minor omissions remain, such as whether duplicates can occur or how long follow-up takes, but the core behavioral trait is 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 three sentences with no fluff: purpose and outcome up front, required fields in the middle, and conditional alternative routing at the end. Every sentence adds decision-relevant information for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 9-parameter create action with an output schema, the description gives enough context to invoke it correctly: what the action does, which fields must be present, and what to do in the two most likely error-prone situations. The absence of a return-value explanation is acceptable because an 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 description coverage is 100%, and the description mostly restates the required parameters rather than adding new semantic meaning. It adds one useful note that organization_id accepts either a slug or an id, but that is already present in the schema, so the description does not exceed the baseline substantially.
Input schemas describe structure but not intent. Descriptions should explain 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 action ('Submit a booking / staffing request') and a concrete resource ('to a Soundcheck organization'), and clarifies the outcome ('Creates a lead the org's team will follow up on'). It distinguishes this from siblings by calling out the lead-generation nature rather than quoting, sponsorship, or inventory actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 names alternatives and their triggering conditions: call get_public_org first if organization_id is uncertain, and call analyze_event_to_uef first if the user pasted messy event material. This is clear routing guidance that tells an agent when not to call this tool directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_sponsorshipRequest sponsorshipAInspect
Submit a sponsorship inquiry to a Soundcheck organization. Creates an inbound sponsor lead the org will follow up on. Requires organization_id, name, and email.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | the prospective sponsor's name | |
| Yes | the sponsor contact email | ||
| phone | No | the prospective sponsor's phone | |
| message | No | additional sponsorship details or context | |
| website | No | the sponsor's website or company URL | |
| organization_id | Yes | the Soundcheck organization to approach (slug or id) | |
| estimated_budget | No | approximate sponsorship budget, free-form | |
| sponsorship_interest | No | what they want to sponsor / their interest |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only mark readOnly, openWorld, idempotent, and destructive as false; the description adds a meaningful behavioral consequence by saying the call 'Creates an inbound sponsor lead the org will follow up on.' This discloses state-changing behavior and follow-up expectation beyond what the annotation booleans convey, though it omits details like duplicate handling or required permissions.
Agents need to know what a tool does to the 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 tight sentences that front-load the primary action, then add the key outcome and required inputs. There is no filler, repetition, or 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?
With a complete input schema and an output schema available, the description provides enough operational context: what the tool does, what it creates, and what inputs are mandatory. It could go slightly further by noting that optional fields are accepted for richer sponsor context, but that information is readily available 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?
Parameter schema coverage is 100%, so the schema fully documents all eight fields. The description only repeats that organization_id, name, and email are required, which is already in the schema; it adds no new semantic context about the optional fields or their relationships.
Input schemas describe structure but not intent. Descriptions should explain 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 object: 'Submit a sponsorship inquiry to a Soundcheck organization.' It then clarifies the effect ('Creates an inbound sponsor lead the org will follow up on'), which makes the tool's role unmistakable and distinct from siblings like request_booking or quote_event.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 clear context for a sponsorship-inquiry scenario and lists required fields, so an agent can infer when to call it. However, it does not explicitly mention alternatives, exclusions, or conditions that would route the agent away from this tool, leaving usage guidance somewhat implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_inventorySearch inventory typesARead-onlyInspect
Search the public Soundcheck live-event gear taxonomy (microphones, DI boxes, consoles, movers, cables, stands, backline, wireless, etc.). Optional query filters by name, alias, id, or category. Returns catalog version + types with stable inventory ids — not org stock levels, serials, quantities, or pricing. Use normalize_inventory when mapping free-text gear lists.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | optional search string (e.g. SM58, DI, mover, XLR). Omit or empty to list the full public catalog. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as read-only and non-destructive, and the description adds useful context beyond that: the tool is public, returns catalog version and stable inventory ids, and explicitly excludes org-specific data. It does not mention rate limits or pagination, but the read-only annotation lowers the burden, and the added exclusions are valuable.
Agents need to know what a tool does to the 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 earning its place: scope, query behavior, return/exclusion summary, and sibling routing. The most important information is front-loaded, and there is no repetition of schema or annotation 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 simple read-only search tool with one optional parameter and an output schema, the description is complete: it defines scope, query semantics, return contents, exclusions, and the relevant alternative. Nothing an agent needs to invoke it correctly is 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 already documents the single optional query parameter with examples, so the baseline is 3. The description adds meaning by specifying that the query filters by name, alias, id, or category, and that omitting or emptying the query lists the full catalog—details not fully captured in the 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 names a specific verb ('Search') and resource ('public Soundcheck live-event gear taxonomy') with concrete examples of gear types. It also explicitly distinguishes what the tool does not return (org stock levels, serials, quantities, pricing), making its purpose unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear when-to-use guidance: search the public taxonomy, optionally filter by name/alias/id/category, or omit the query for the full catalog. It also names the alternative tool, normalize_inventory, and the condition for using it (mapping free-text gear lists), which is explicit routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_placesSearch public places catalogARead-onlyInspect
Search a seeded public industry catalog of well-known venues and hotels (not a complete world database; not org-private Soundcheck venues). Returns matching places from the seed by name, alias, or id. Unknown names return empty results with optional catalog name suggestions — never invented addresses or geo.
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | optional city filter (case-insensitive substring) | |
| type | No | optional place type filter | |
| query | Yes | name, alias, or id to search for (max 200 characters) |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint/openWorldHint annotations, it discloses concrete behavior: unknown names return empty results with optional catalog name suggestions and it never invents addresses or geo. This is exactly the kind of non-obvious behavior an agent needs to know.
Agents need to know what a tool does to the 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 tightly written sentences: scope, return behavior, and failure behavior. No filler, and the most important scoping caveats are front-loaded before the return semantics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 combination of description, full schema coverage, output schema, and annotations covers purpose, scope, parameter semantics, return behavior, and failure behavior. Nothing critical is missing for an agent to invoke this 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%, so the schema already fully documents query, city, and type. The description adds 'by name, alias, or id', but that largely restates the schema's query description rather than adding new semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Search') and a specific resource ('seeded public industry catalog of well-known venues and hotels'), and immediately distinguishes itself from a complete world database and org-private Soundcheck venues. This makes it easy for an agent to tell it apart from sibling tools like get_place or search_inventory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear scope and exclusions: it is seeded, public, not complete, and not org-private. This tells the agent when not to use it, though it does not explicitly name alternative tools or state 'use get_place when you have an ID'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_uefValidate UEFARead-onlyInspect
Validate a UEF document (object or JSON string) against the public EVENT-focused rules: required target_type and events[].title / events[].event_date (YYYY-MM-DD), structural checks for source/venue/customer/members, and schema_version 1.0 alignment. Returns valid, errors (error|warning), missing_required catalog paths, and schema_version. Deterministic local workbook — no AI, no org write, no invented fixes. Input is capped at 256 KiB for both object and string forms.
| Name | Required | Description | Default |
|---|---|---|---|
| uef | Yes | UEF document as object or JSON string |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | true on success (including confirmation_required prompts) |
| data | No | tool payload (API/composite/confirmation object); object, array, or primitive JSON |
| error | No | when ok is false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and destructiveHint, and the description adds meaningful behavior beyond those: deterministic execution, purely local work, no AI assistance, no invented fixes, and a 256 KiB input cap. It also pre-states the output categories, so the agent knows 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?
Three sentences, all information-dense, with the primary purpose first followed by the return contract and constraints. There is no filler, no repetition of the schema, and 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 a single parameter and an existing output schema, the description covers purpose, accepted input forms, size limit, validation scope, and result fields. Nothing an agent needs to select or invoke the tool correctly is 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 already documents `uef` as an object or JSON string, and the description reinforces this while adding the 256 KiB cap for both forms. It also explains what the document is validated against, adding context beyond the schema's generic 'UEF document' phrasing.
Input schemas describe structure but not intent. Descriptions should explain 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 — 'Validate a UEF document' — and narrows the scope to 'public EVENT-focused rules,' naming required fields and the return contract. This clearly distinguishes it from siblings like analyze_event_to_uef and get_uef_schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 implies usage through 'Deterministic local workbook — no AI, no org write, no invented fixes,' which signals a safe, side-effect-free validation context. However, it does not explicitly state when to prefer this tool over alternatives or when not to use it, leaving some routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
15 tool updates
- First observed
analyze_event_to_uef - First observed
get_place - First observed
get_public_org - First observed
get_uef_schema - First observed
list_positions - First observed
list_quote_packages - First observed
lookup_market_pricing - First observed
normalize_inventory - First observed
normalize_positions - First observed
quote_event - First observed
request_booking - First observed
request_sponsorship - First observed
search_inventory - First observed
search_places - First observed
validate_uef
Related MCP Connectors
Event registration at scale: events with photos, waitlists, virtual queues, and dynamic pricing.
Instant private jet charter price estimates and confirmed live quotes, worldwide.
- JoinwaysOAuthapp.joinways
Event venue CRM — manage inquiries, quotes, events and availability from any AI agent
- PalanerOAuthcom.palaner
200,000+ real, local, future events, ranked for the signed-in person. Free to connect.
Related MCP Servers
- AlicenseAqualityDmaintenanceSearch 8,000+ corporate event venues across 40+ cities. Tools for venue search by capacity/category, pricing guides, expert advice articles, and inquiry handoff. Read-only, PII-redacted, UTM-attributed.74 npmMIT
- AlicenseNot gradedqualityCmaintenanceAI-native corporate gifting and event infrastructure for Fortune 500, enabling search of a 70,000+ SKU catalog, event program generation with live P&L, and wholesale quotes.MIT
- AlicenseAqualityBmaintenanceProvides music events, concerts, music festivals, nightclubs and other events information.172MIT
- AlicenseAqualityAmaintenanceMCP server for W-2 event staffing across 300+ US and Canadian markets. Five read-only lookups (city coverage, staffing roles, all-inclusive W-2 rate ranges, lead-time guidance, and state-by-state compliance) plus an opt-in request_quote tool that submits a structured staffing request to TempGuru for a human-reviewed quote. No authentication required; connect with the URL alone.1257 npm2MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.