Skip to main content
Glama

fresha_venue

Read-only

Get one Fresha venue's public profile: name, the venue's own description, canonical page URL, country and currency, business type, full postal address with coordinates, average rating with its rating count and badge, published opening hours per day, gallery images and the venue's own service menu. Each menu service carries its own retail price in the venue's currency and its shortest and longest duration in seconds, so this is the only Fresha tool that returns a price and every price is the provider's own menu price, never a quote or a booking price. Pass a slug from fresha_search_venues; an unknown slug is a not-found rather than an empty success. Opening hours are the venue's own rendered ranges such as 9:30 AM - 7:00 PM, not machine times, and is_bookable is the venue's flag rather than an availability claim. No staff identity, professional profile, review text, reviewer name, time slot, booking or payment data is returned.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "slug": "<slug>"
    },
    "name": "fresha_venue"
  }
}

Input Schema

NameRequiredDescriptionDefault
slugYesRequired venue slug: the last path segment of the venue's fresha.com page, also returned as venues[].slug by fresha-search-venues. An unknown slug is a not-found.

Output Schema

NameRequiredDescriptionDefault
dataYesThe tool result payload (shape varies per tool; see each tool's docs resource).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations supply only readOnlyHint and openWorldHint; the description adds substantially beyond them. It discloses error semantics (not-found vs. empty success), data provenance (every price is the venue's own menu price, never a quote or booking price), interpretation caveats (opening hours are rendered ranges like 9:30 AM - 7:00 PM, not machine times; is_bookable is a venue flag, not an availability claim), and an explicit exclusion list covering staff, reviews, time slots, and payment data.

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?

Dense but front-loaded: the payload enumeration comes first, then interpretation caveats, then exclusions, so a skimming agent gets the essentials immediately. It loses a point for a single undifferentiated paragraph and mild repetition — the unknown-slug-is-not-found rule appears in the description and again in the schema, and the price caveat is stated twice.

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?

Output schema exists, so return values needn't be explained, yet the description still tells the agent how to read the tricky ones — currency-relative prices, second-based durations, rendered hour strings, and the bookable flag's limits. Combined with the not-found rule and the negative-space list, nothing an agent needs to invoke this correctly or interpret the response is missing.

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 single parameter already documents itself as the last path segment of the venue page, the venues[].slug return path, and the not-found behavior. The description restates the same provenance and error facts, so it adds confirmation rather than new meaning — baseline 3 is right when the schema does the heavy lifting.

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?

Opens with a specific verb and resource ("Get one Fresha venue's public profile") and then enumerates the actual payload: address with coordinates, rating plus count and badge, per-day hours, gallery, and the venue's own service menu with price and duration. Naming the sibling it takes input from (fresha_search_venues) and claiming sole price-returning status separates it from the rest of the catalog.

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 an explicit entry condition ("Pass a slug from fresha_search_venues") and states what to expect when the input is wrong ("an unknown slug is a not-found rather than an empty success"), which prevents a common retry-loop mistake. It also scopes the tool's unique territory by declaring it the only Fresha tool that returns a price, which tells the agent when to reach for this rather than a sibling.

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.