Skip to main content
Glama

Search Courses

search_courses
Read-onlyIdempotent

Search Stymie's live US golf-course directory by name, state, city, ZIP code, access type, or hole count. Returns course location, access, holes, architect, scorecard availability, ratings, and exact mileage for ZIP searches.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
zipNo5-digit ZIP code for proximity search (50 mile radius)
cityNoCity name
pageNoPage number
typeNoCourse type filter
holesNoNumber of holes
limitNoResults per page (max 50)
queryNoCourse name search (partial match)
stateNo2-letter state code, e.g. "NJ"

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered. The description adds value by noting the 'live' nature of the data, listing return fields (location, access, holes, architect, scorecard availability, ratings), and explicitly stating that exact mileage is only for ZIP searches. This goes beyond annotations without contradicting them.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the verb 'Search', and efficiently packs both search dimensions and return fields. No filler or redundant phrasing.

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

Completeness5/5

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

Given 8 optional parameters with 100% schema coverage and strong annotations, the description covers the essential aspects: what is searched, what is returned, and the special ZIP-mileage behavior. Pagination is documented in the schema, so the description is complete enough for an agent to select and invoke the tool correctly.

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

Parameters4/5

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

Schema description coverage is 100%, giving a baseline of 3. The description adds meaningful mappings from search dimensions to parameters (name, state, city, ZIP, access type, hole count) and clarifies that ZIP searches produce exact mileage, enriching the semantics of the zip parameter beyond the schema's raw description.

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

Purpose5/5

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

The description specifies the verb and resource: 'Search Stymie's live US golf-course directory' by name, state, city, ZIP, access type, or hole count. It clearly distinguishes this from sibling tools like get_course (single course) and find_nearby_courses (proximity focus), especially by noting directory-wide search and ZIP-specific mileage.

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

Usage Guidelines4/5

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

The description clearly implies when to use this tool: when searching the golf-course directory by various criteria, and it highlights that ZIP searches produce exact mileage. It does not explicitly state when not to use it or name alternatives, so it falls short of a perfect 5, but the context is sufficiently clear.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.9/5.0
Disambiguation3/5

find_nearby_courses and search_courses overlap significantly, both returning courses near a location with mileage, and search_stymie adds another ambiguous entry point. However, each tool has a distinct specialization (exact distance vs. general search, cross-collection discovery).

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (build_, find_, get_, search_), making the API predictable and easy to navigate.

Tool Count4/5

13 tools is a reasonable size for a golf data server covering courses, equipment, architects, trips, and reviews. The slight overlap between search tools could be consolidated, but the count is not excessive.

Completeness3/5

The domain is well-covered for read-only data (courses, scorecards, reviews, equipment, architects), but tee times are a placeholder and trip building relies on external verification. This leaves notable gaps in functionality that agents must work around.

Resources