Skip to main content
Glama

American Ghost Walks

Server Details

Read-only AGW ghost tours: search by city, open departures, details, and official booking links.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.3/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct role: search_tours finds tours, get_tour_details returns full tour information, get_availability checks one tour/date, and get_booking_link provides the external booking handoff. The only mild overlap is that search_tours can include open departures when dates are supplied, but the descriptions make its boundary with get_availability clear.

Naming Consistency5/5

All names use consistent snake_case verb_noun structure: get_availability, get_booking_link, get_tour_details, and search_tours. The get_ prefix is used consistently for retrieval tools, and search_ is appropriately used for discovery.

Tool Count5/5

Four tools are well-scoped for a tour discovery and booking-handoff server: search, details, availability, and booking link each earn their place. There are no redundant tools, and the surface is not so thin that agents would be forced to guess.

Completeness5/5

The tools cover the full guest-facing lifecycle: finding tours, inspecting details and policies, checking specific availability, and handing off to the official booking page. Booking and payment are intentionally external via get_booking_link, so there is no obvious missing operation for this server's purpose.

Available Tools

4 tools
get_availabilityCheck tour availabilityA
Read-onlyIdempotent
Inspect

Open departure times and booking status for one tour on one date, from the American Ghost Walks booking system. Times are local to the tour. Check this before telling a guest a time is open; if it says availability is unknown or lists no times, send the guest to the booking link instead of guessing.

NameRequiredDescriptionDefault
dateYesSingle local calendar date to check, as YYYY-MM-DD (e.g. '2026-11-08'). Must be today or a future date in the tour's time zone.
tourYesTour identifier from search_tours.tour_id (preferred slug, e.g. 'madison-ghost-walks-capitol-square'), or the exact tour name.
party_sizeNoOptional number of guests (integer 1-50). When set, only departures that can fit this party are listed as open.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare the safe read-only, idempotent nature, so the description adds useful context beyond them: times are local to the tour, availability may be unknown, and the agent should not guess when no times are listed. It does not describe return structure or permission requirements, but it covers the key behavioral caveat for this tool.

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

Conciseness5/5

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

The description is front-loaded with the core purpose and local-time caveat, then immediately gives operational guidance and a fallback. Every sentence contributes to correct tool selection or invocation.

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

Completeness4/5

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

With no output schema, the description identifies the key return content (open departure times and booking status) and warns about unknown or empty results. It is complete enough for an agent to choose and call the tool, though a fuller return-shape description would make it stronger.

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

Parameters3/5

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

The schema has 100% description coverage for tour, date, and party_size, so the description does not need to duplicate parameter details. It reinforces the one-tour/one-date scope and local-time meaning, but adds little beyond the schema.

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

Purpose5/5

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

The description states a specific verb and resource: retrieving open departure times and booking status for one tour on one date from the American Ghost Walks booking system. It clearly scopes the operation to a single tour/date pair, which distinguishes it from siblings like search_tours and get_tour_details.

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

Usage Guidelines5/5

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

It gives explicit when-to-use guidance: check this before telling a guest a time is open. It also names the alternative behavior when availability is unknown or no times are listed: send the guest to the booking link instead of guessing.

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

get_tour_detailsGet tour detailsA
Read-onlyIdempotent
Inspect

Full details for one tour: description, stops, meeting spot with map link, duration, difficulty, FAQ, important info, cancellation/weather/age/pet policies and rating. Use for questions like 'how much walking is it?', 'can kids come?' or 'where do we meet?'. Answer only from what this returns; if it doesn't cover a question, give the phone number.

NameRequiredDescriptionDefault
tourYesTour identifier from search_tours.tour_id (preferred slug, e.g. 'old-san-juan-ghost-walk'), or the exact tour name.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety and determinism are covered structurally. The description contributes the substantive behavior that matters — the closed-corpus constraint ('answer only from what this returns') and the phone-number fallback. It does not describe error behavior for an unknown tour slug, so it adds value but not rich context beyond annotations.

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

Conciseness4/5

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

Three sentences, front-loaded with the payload inventory, then usage intents, then the grounding constraint. The field enumeration is long but each item is a distinct answerable topic an agent would otherwise have to guess at. Little waste.

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

Completeness5/5

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

With no output schema and a single parameter, the description carries the full burden of describing the return payload, and it does so by naming each content section. Combined with the grounding rule and the fallback path, an agent has everything needed to call it and to handle an incomplete answer.

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

Parameters3/5

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

Schema description coverage is 100% and already explains that 'tour' takes a slug from search_tours.tour_id or an exact name, including an example. The description adds nothing about the parameter, so the schema does all the work and baseline 3 applies.

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

Purpose4/5

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

Opens with a specific verb+resource ('Full details for one tour') and enumerates exactly what comes back — description, stops, meeting spot with map link, duration, difficulty, FAQ, policies, rating. That makes it clearly distinguishable from search_tours by scope (one tour vs. search results), though the description itself never names the sibling tools; the linkage appears only in the schema's reference to search_tours.tour_id.

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?

Gives concrete example intents ('how much walking is it?', 'can kids come?', 'where do we meet?') that map directly onto the returned fields, and adds an explicit exclusion/fallback: answer only from what this returns, otherwise give the phone number. This tells the agent both when to use it and what to do when it is insufficient.

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

search_toursSearch American Ghost Walks toursA
Read-onlyIdempotent
Inspect

Find American Ghost Walks ghost and history walking tours by city, optionally with a date range and party size. Returns tour ids, names, descriptions, duration, meeting spot and price, plus open departures when dates are given. Call with no city to list every city and tour. Use a tour id from the results with the other tools.

NameRequiredDescriptionDefault
cityNoCity or area name to filter tours. Examples: 'Chicago', 'Old San Juan', 'Viejo San Juan', 'Twin Cities', 'LA', 'Saint Paul'. Omit this field entirely to list every city and tour (do not pass an empty string).
end_dateNoLast local calendar date to check, as YYYY-MM-DD. Must be on or after start_date and at most 14 days after it. Defaults to start_date when omitted.
party_sizeNoNumber of guests (integer 1-50). When set with dates, departures that cannot fit this party are omitted.
start_dateNoFirst local calendar date to check for open departures, as YYYY-MM-DD (e.g. '2026-11-08'). Requires city.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely useful behavior: the empty-city enumeration mode and the fact that departures are only returned when dates are supplied. It does not cover result ordering, pagination or the empty-result case.

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

Conciseness5/5

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

Four short sentences, zero filler, and the primary capability plus return payload are front-loaded before the edge-case guidance. Every sentence carries information an agent can act on.

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

Completeness4/5

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

With no output schema, the description correctly takes on the job of describing the return payload (ids, names, descriptions, duration, meeting spot, price, departures). It is nearly complete for a 4-param search tool; only pagination and no-results behavior are unaddressed.

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

Parameters3/5

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

Schema coverage is 100%, and the schema already documents the city examples, the 14-day end_date window, the 1-50 party size range and that start_date requires city. The description's parameter statements (date range, party size, no-city listing) largely restate that, so the baseline 3 applies.

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

Purpose4/5

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

The description opens with a specific verb and resource ("Find American Ghost Walks ghost and history walking tours") and states the filtering axes (city, date range, party size). It hints at the sibling relationship by saying to reuse a tour id "with the other tools," but never names get_availability, get_tour_details or get_booking_link, so the agent still has to infer which sibling follows.

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?

Clear usage context is given: call with a city to filter, call with no city to enumerate everything, and add dates/party size to surface open departures. What's missing is an explicit contrast — nothing says when to skip this tool and go straight to get_availability or get_tour_details instead.

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.

  1. 4 tool updates
    • First observedget_availability
    • First observedget_booking_link
    • First observedget_tour_details
    • First observedsearch_tours

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Remote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    18 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources