Skip to main content
Glama

Server Details

Discover Lake Michigan charter captains & boats, check availability, get quotes, and book.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

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

MCP client
Glama
MCP server

Full call logging

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

Tool access control

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

Managed credentials

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

Usage analytics

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

100% free. Your data is private.
Tool DescriptionsA

Average 4/5 across 10 of 10 tools scored. Lowest: 3.2/5.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct and clearly defined purpose. There is no overlap between tools like check_availability, create_booking, and get_quote; they serve separate functions.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., check_availability, create_boat_rental, search_captains). This makes the tool set predictable and easy to navigate.

Tool Count5/5

10 tools is an ideal count for this domain. Each tool addresses a core functionality (search, profiles, availability, booking, quoting) without unnecessary bloat.

Completeness4/5

The tool set covers all key operations for the charter/rental platform: searching, viewing profiles, checking availability, getting quotes, and booking. Minor gaps exist (e.g., no tool to update or cancel a booking) but these are not essential for the primary use case.

Available Tools

10 tools
check_availabilityCheck AvailabilityA
Read-only
Inspect

Check a captain's or boat's availability. Provide exactly one of captainSlug or boatId. Omit date to get available dates for the next 90 days; provide both date (YYYY-MM-DD) and durationHours to get bookable time slots for that date.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNo
boatIdNo
captainSlugNo
durationHoursNo
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description doesn't need to restate safety. It adds behavioral context by explaining the two query modes (dates vs time slots) and the date range for omitting date. No contradictions. A 4 is given because it doesn't mention any potential limits or behavior like pagination, but it's quite transparent.

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

Conciseness5/5

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

Two sentences, no filler. First sentence states purpose and exclusivity constraint; second explains two usage modes. Every word earns its place, making it easy to read and understand quickly.

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

Completeness4/5

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

Given no output schema and 4 parameters (0 required), the description covers the essential usage scenarios. It explains input conditions and return types conceptually ('available dates', 'bookable time slots'). A 4 because it doesn't specify the exact format of returned data or any edge cases (e.g., what if no availability?), but it's sufficient for an agent.

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

Parameters4/5

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

Schema coverage is 0%, so description must compensate. It adds meaning to all parameters: date format as YYYY-MM-DD, mutual exclusivity of boatId and captainSlug, and the conditional use of durationHours with date. It could elaborate on the semantics of durationHours (e.g., minimum or step), but overall provides significant value.

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

Purpose5/5

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

The description clearly states the tool checks a captain's or boat's availability. It uses a specific verb ('Check') and resource ('availability'), and the distinct query mode (dates vs time slots) differentiates it from sibling tools like create_booking or get_boat.

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

Usage Guidelines5/5

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

Provides explicit instructions on parameter usage: 'Provide exactly one of captainSlug or boatId', 'Omit date to get available dates for the next 90 days', 'provide both date (YYYY-MM-DD) and durationHours to get bookable time slots'. This covers when and how to use the tool effectively.

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

create_boat_rentalCreate Boat RentalAInspect

Book a bareboat boat rental and get a Stripe Checkout link for the charterer to complete payment. Requires captainChoiceRightAcknowledged: true (the charterer affirms their right to choose their own captain). Optionally attach a partner/affiliate code.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYes
emailYes
phoneYes
boatIdYes
lastNameYes
firstNameYes
partySizeYes
startTimeYes
durationIdYes
partnerCodeNo
pricingTierIdYes
specialRequestsNo
captainChoiceRightAcknowledgedYes
Behavior4/5

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

Annotations indicate mutation and non-destructive behavior. The description adds key behavioral context: it returns a Stripe Checkout link and requires a specific boolean flag. However, it does not disclose whether the booking is confirmed immediately or if further steps are needed, which is a minor gap.

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

Conciseness5/5

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

The description is two sentences long, with the core purpose front-loaded. It includes the most critical behavioral notes without extraneous text.

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

Completeness2/5

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

Given 13 parameters, no output schema, and no differentiation from siblings, the description is incomplete. It omits parameter details for most fields, does not explain the booking lifecycle, and lacks guidance on prerequisites like availability checks.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It only adds meaning for captainChoiceRightAcknowledged (required flag) and partnerCode (optional code). The remaining 11 parameters have no additional semantics beyond their schema definitions, leaving a significant gap.

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

Purpose5/5

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

The description clearly states the verb 'Book', the resource 'bareboat boat rental', and the key output 'Stripe Checkout link'. It distinguishes from sibling tools like check_availability or create_booking by specifying the bareboat context and payment flow.

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

Usage Guidelines3/5

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

The description mentions a required flag (captainChoiceRightAcknowledged) but does not provide explicit guidance on when to use this tool versus alternatives like create_booking or get_quote. The usage context is implied but not clearly differentiated.

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

create_bookingCreate BookingAInspect

Book a charter with a captain and get a Stripe Checkout link for the charterer to complete payment. Optionally attach a partner/affiliate code to credit a referrer.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYes
emailYes
phoneYes
harborIdYes
lastNameYes
firstNameYes
partySizeYes
startTimeYes
durationIdYes
captainSlugYes
partnerCodeNo
pricingTierIdYes
specialRequestsNo
Behavior4/5

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

Annotations confirm non-readonly/non-destructive. Description adds that it returns a Stripe Checkout link and optionally attaches a partner code. Missing details on side effects like email notifications, but sufficient for core behavior.

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

Conciseness5/5

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

Single sentence front-loading the core action and optional capability. No wasted words; every part earns its place.

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

Completeness2/5

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

Tool has 13 parameters, no output schema, and low context. Description does not cover prerequisites (e.g., captain availability), return structure beyond checkout link, or required fields beyond what schema enforces. Incomplete for an agent to use confidently.

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

Parameters2/5

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

With 0% schema description coverage, the description must explain parameter meanings. It only mentions captainSlug and partnerCode implicitly. Other critical parameters like date, startTime, pricingTierId are not elaborated, leaving the agent to infer.

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

Purpose5/5

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

The description states 'Book a charter with a captain and get a Stripe Checkout link' which is a specific verb+resource+outcome. It clearly distinguishes from sibling tools like check_availability (query) and create_boat_rental (different resource).

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

Usage Guidelines4/5

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

The description implies use when booking a charter with a captain, but does not explicitly state when not to use (e.g., when quoting or checking availability). It provides clear context 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.

get_boatGet BoatA
Read-only
Inspect

Get a boat's full profile by id, enriched with a rating summary and the most recent reviews.

ParametersJSON Schema
NameRequiredDescriptionDefault
boatIdYes
Behavior4/5

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

Annotations declare readOnlyHint=true, so no behavioral surprises. The description adds value by specifying enrichment details beyond the schema, indicating the returned profile includes ratings and reviews.

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

Conciseness5/5

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

Single sentence, front-loaded with verb and resource, no extraneous words. Every part earns its place.

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

Completeness5/5

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

For a simple retrieval tool with one parameter and no output schema, the description is sufficient. It tells the agent what the tool does and what the response contains.

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

Parameters3/5

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

Schema coverage is 0%, but there is only one parameter (boatId). The schema already documents the parameter name and constraints, and the description does not add further semantics. The parameter is self-explanatory.

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

Purpose5/5

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

The description clearly states the verb 'Get', the resource 'boat's full profile', and specifies enrichment details like rating summary and recent reviews. This distinguishes it from sibling tools like search_boats or check_availability.

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool vs alternatives. Usage is implied as retrieving a specific boat's profile, but 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.

get_captainGet CaptainA
Read-only
Inspect

Get a captain's full profile by tenant slug, enriched with a rating summary and the most recent reviews.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes
Behavior4/5

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

Annotations already indicate readOnly and non-destructive. The description adds value by specifying that the response includes a 'rating summary and most recent reviews', giving insight into the return content. No other behavioral details (permissions, rate limits) are needed given simplicity.

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

Conciseness5/5

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

Single sentence of 16 words, no filler. Front-loaded with the main action and key identifier. Every word adds value.

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

Completeness4/5

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

For a simple retrieval tool with one parameter and no output schema, the description adequately conveys the purpose and return content (profile, rating, reviews). Could mention absence of side effects, but annotations cover that.

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

Parameters2/5

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

Schema coverage is 0% with no parameter description in schema. The description mentions 'by tenant slug' but does not explain what a slug is, its format, or constraints beyond the schema's minLength. This provides only minimal context for the single parameter.

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

Purpose5/5

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

The description clearly states the verb 'get', the resource 'captain's full profile', and the identifier 'by tenant slug'. It also mentions what is included ('rating summary and most recent reviews'), distinguishing it from sibling tools like search_captains or get_boat.

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool versus alternatives like search_captains. The description implies its use for retrieving a specific captain's full profile, but does not mention exclusions or conditions.

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

get_quoteGet QuoteA
Read-only
Inspect

Get a non-binding price quote (in cents) for a charter or rental, matching what checkout would charge. Provide exactly one of captainSlug or boatId, plus durationId, pricingTierId, and partySize. Optionally pass a partnerCode to preview a discount. Returns currency, totalCents, depositCents, balanceCents, and (when a code is given) a discountPreview.

ParametersJSON Schema
NameRequiredDescriptionDefault
boatIdNo
partySizeYes
durationIdYes
captainSlugNo
partnerCodeNo
pricingTierIdYes
Behavior4/5

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

Annotations declare readOnlyHint=true, consistent with 'non-binding' in description. Description adds that quote matches checkout and specifies return fields, which is beyond annotations.

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

Conciseness5/5

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

Three sentences, each adding value. Front-loaded with purpose, no redundancy.

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

Completeness4/5

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

Given 6 parameters and no output schema, description covers purpose, parameter requirements, and return fields. Missing nuance like availability prerequisite, but adequate.

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

Parameters3/5

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

Schema coverage is 0%, so description must compensate. It explains the mutual exclusivity of captainSlug/boatId and optional partnerCode, but lacks detailed semantics for individual parameters like durationId or pricingTierId.

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

Purpose5/5

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

Description clearly states the tool gets a non-binding price quote for charter/rental, matching checkout. It distinguishes from siblings like create_booking (booking action) and check_availability (availability check).

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

Usage Guidelines4/5

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

Explicitly instructs to provide exactly one of captainSlug or boatId plus required parameters, and optionally partnerCode. Does not state when not to use, 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.

list_harborsList HarborsA
Read-only
Inspect

List active harbors, each with a count of active captains and listed boats operating there.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false, and the description adds behavioral context by specifying what data is included (active captains and listed boats). No contradictions, and it provides useful detail beyond the annotations.

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

Conciseness5/5

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

A single, front-loaded sentence that is entirely relevant and contains no wasted words. Every part earns its place.

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

Completeness4/5

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

Given no parameters and no output schema, the description provides a strong understanding of the tool's return value. Could be slightly more detailed about potential pagination or ordering, but is complete enough for a simple list tool.

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

Parameters4/5

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

With zero parameters, baseline is 4. The description correctly adds meaning by specifying the output includes counts, which is semantically relevant.

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

Purpose5/5

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

The description clearly states a specific verb ('List') and resource ('active harbors') with additional detail about counts of captains and boats, distinguishing it from sibling tools like search_boats or search_captains.

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

Usage Guidelines3/5

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

The description implies usage for getting an overview of harbors with activity stats, but does not explicitly specify when to use this tool versus alternatives or provide exclusion criteria.

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

pingPingB
Read-only
Inspect

Health check

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description's 'Health check' is consistent and adds no contradiction. However, it does not provide additional behavioral context such as expected response or idempotency aspects.

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

Conciseness5/5

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

The description is extremely concise at two words, front-loading the core purpose. Every word earns its place with no fluff.

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

Completeness3/5

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

Given the tool's simplicity (no parameters, basic annotations), the description is minimally adequate. However, it omits any mention of return values or output format, which could be helpful for an agent expecting a specific response.

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

Parameters4/5

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

There are 0 parameters with 100% schema coverage, so the description does not need to explain parameters. A baseline of 4 is appropriate as no compensation is needed.

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

Purpose3/5

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

The description 'Health check' vaguely indicates the tool tests connectivity or service status, but it lacks specificity about what exactly is checked. It does not differentiate from the sibling tool 'check_availability' which could have a similar purpose.

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

Usage Guidelines2/5

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

No usage guidance is provided. The description does not indicate when to use this tool versus alternatives like 'check_availability' or any prerequisites or conditions.

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

search_boatsSearch BoatsA
Read-only
Inspect

Search listed boats, optionally filtered by harbor, type, minimum capacity, and max hourly price, with sorting and pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
sortNoname
typeNo
limitNo
harborNo
maxPriceNo
minCapacityNo
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds behavioral context about optional filters, sorting, and pagination. However, it does not clarify the openWorldHint=false (implying a closed set of boats) or any 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.

Conciseness5/5

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

The description is a single, well-structured sentence that efficiently communicates the tool's purpose and key features. No redundant or extraneous information.

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

Completeness3/5

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

Given no output schema, the description should mention what is returned (list of boat summaries) and note pagination specifics (default limit 20, max 50). It also omits any mention of error handling or empty results. For a search tool with 7 parameters, more detail would improve completeness.

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

Parameters3/5

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

With 0% schema description coverage, the description carries the burden. It names most parameters (harbor, type, minCapacity, maxPrice, sorting, pagination) but does not explain enum values, constraints (e.g., maxPrice minimum 0), or defaults (like sort default 'name'). This is adequate but not thorough.

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

Purpose5/5

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

The description clearly states the verb 'Search' and the resource 'boats', and specifies the optional filters (harbor, type, minimum capacity, max hourly price) as well as sorting and pagination. This distinguishes it from sibling tools like get_boat (single boat) or list_harbors (harbor listing).

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

Usage Guidelines3/5

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

The description implies usage for searching and filtering boats, but does not explicitly state when to use this tool versus alternatives (e.g., check_availability for availability, get_boat for details). No guidance on when not to use it or prerequisites.

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

search_captainsSearch CaptainsA
Read-only
Inspect

Search bookable charter captains, optionally filtered by harbor, with sorting and pagination. Returns a paginated list with starting price and rating.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
sortNorating
limitNo
harborNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, indicating a safe read operation. The description adds the return structure (starting price and rating) but does not disclose additional behavioral traits like rate limits or data freshness. With strong annotation coverage, the description provides marginal extra transparency.

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

Conciseness5/5

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

Two sentences, concise and front-loaded with the core purpose. Every sentence adds value without redundancy.

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

Completeness4/5

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

Given no output schema, the description adequately explains the return format (paginated list with price and rating). Parameters are simple and well-defined in the schema. The description covers the essential aspects, though it could mention that harbor is optional or that sort defaults to rating. Overall, it is complete for a search tool with good annotations.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for meaning beyond the schema. However, the schema itself is self-explanatory with types, defaults, and enums (e.g., page, sort, limit, harbor). The description does not add any parameter-specific details, leaving the agent to rely solely on the schema. This is insufficient for a tool with 4 parameters.

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

Purpose5/5

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

The description clearly states the tool searches for bookable charter captains, with optional filtering by harbor, sorting, and pagination. It explicitly mentions the return format (paginated list with starting price and rating), distinguishing it from sibling tools like get_captain (single) and search_boats (boats).

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

Usage Guidelines4/5

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

The description implies usage for searching multiple captains with filters, but does not explicitly state when to use this tool versus alternatives like get_captain or check_availability. However, the sibling tools list provides context, and the description is sufficiently clear for typical use cases.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources