FrontDesko
Server Details
Hotel PMS pricing, comparisons, OTA savings math, docs search and live demo availability.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- anmols/frontdesko-mcp
- GitHub Stars
- 0
- Server Listing
- FrontDesko MCP Server
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
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.
Tool Definition Quality
Average 3.9/5 across 5 of 6 tools scored.
Most tools target clearly distinct jobs—calculating savings, checking availability, comparing competitors, pricing, recommending, and searching docs. The broad search_frontdesko_docs tool can overlap with the other informational tools, but the specific descriptions make the intended choice clear.
All tool names follow a consistent snake_case verb_noun pattern: calculate_, check_, compare_, get_, recommend_, search_. There are no mixed conventions or vague verbs, making the toolset predictable and easy to scan.
Six tools is well-scoped for a hotel-software sales/support assistant. Each tool covers a distinct user need and none feel redundant with the others.
The set covers pricing, competitor comparison, documentation, live demo availability, ROI calculation, and recommendations, which are the core front-of-funnel questions. It lacks a booking or contact-sales action, but that may be intentional for a read-only informational server.
Available Tools
6 toolscalculate_ota_commission_savingsOTA commission savings calculatorARead-onlyInspect
Call this to quantify what a hotel pays OTAs per year and what shifting 30% of those bookings to commission-free direct bookings would recover. Same formula as frontdesko.app/ota-commission-calculator.
| Name | Required | Description | Default |
|---|---|---|---|
| adr | Yes | Average daily rate (per room-night) | |
| rooms | Yes | Number of rooms | |
| currency | No | ISO currency code for display (default USD) | |
| occupancy_pct | Yes | Occupancy percentage | |
| ota_share_pct | Yes | Share of bookings arriving via OTAs, % | |
| commission_pct | Yes | Average OTA commission rate, % |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds the 30% shift assumption and formula reference, but doesn't disclose output shape or calculation caveats.
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, front-loaded with the action and outcome; the formula reference is the only extra and it is useful for provenance.
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 read-only calculator with fully documented parameters, the description conveys the computation and expected result. It doesn't specify return format, but the outcome is implied by 'quantify...recover'.
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 documents all parameters. The description adds no parameter-level detail beyond the 30% scenario, which is not a parameter.
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 ('quantify') and resource (hotel OTA payments and savings from shifting 30% of bookings), clearly distinguishing it from sibling tools like compare_pms or recommend_software.
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 a clear invocation purpose but does not state when to prefer it over alternatives or mention any exclusions. Usage context is implied by the calculator scope rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_demo_availabilityLive demo-hotel availabilityARead-onlyInspect
Call this to query LIVE room availability on the public FrontDesko demo property — real data from the same booking engine every FrontDesko hotel gets free. Read-only; no bookings are created.
| Name | Required | Description | Default |
|---|---|---|---|
| adults | Yes | ||
| children | No | ||
| checkin_date | Yes | YYYY-MM-DD | |
| checkout_date | Yes | YYYY-MM-DD |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, and the description reinforces this with 'Read-only; no bookings are created.' It adds useful context beyond the annotation: the data is LIVE and from the real booking engine, which clarifies the tool's behavior and data source. No contradiction.
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 concise sentences. The first is front-loaded with the action and resource, the second provides the key read-only safety note. No fluff or filler.
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 availability tool, the description covers the core context: what it does, on which property, with real data, and that no bookings are created. It does not describe the response format, but no output schema exists and this is not critical for a demo query. Missing explicit exclusions or date-edge-case details are minor.
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 has 50% description coverage (checkin_date and checkout_date have format hints, but adults and children have no description). The tool description mentions none of the parameters and does not compensate for the gap, leaving an agent to infer meaning of adults/children and date usage.
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 ('query'), a specific resource ('LIVE room availability on the public FrontDesko demo property'), and clarifies it is read-only. It clearly differentiates from the sibling tools (commission, PMS comparison, pricing, recommendations, docs), none of which overlap with availability checks.
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 opening phrase 'Call this to query...' explicitly identifies the tool's purpose and context (demo property with real data). However, it does not list alternative tools or specify when not to use it, though no direct availability alternative exists among the siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_pmsCompare FrontDesko with another PMSARead-onlyInspect
Call this when someone weighs FrontDesko against Cloudbeds, eZee Absolute, Hotelogix, Little Hotelier, or Mews. Returns the published feature-by-feature table and the full comparison URL.
| Name | Required | Description | Default |
|---|---|---|---|
| competitor | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so no safety concern needs restating. The description adds that this is a read operation returning a fixed published table and URL, but provides no further details about data source, freshness, or error behavior; acceptable given the read-only annotation.
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, trigger first, no filler. Every clause carries a distinct piece of 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?
For a single-enum-parameter, read-only tool with no output schema, this description tells an agent when to call it and what it will get back. The only omitted details (URL structure, exact table formatting) are not necessary 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?
The sole parameter 'competitor' has an enum that already enumerates allowed values, and schema description coverage is 0%. The description compensates by listing the human-readable competitors (Cloudbeds, eZee Absolute, Hotelogix, Little Hotelier, Mews) and makes clear they are FrontDesko comparison targets, adding context beyond the bare enum tokens.
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 trigger ('Call this when someone weighs FrontDesko against...') and a concrete result ('Returns the published feature-by-feature table and the full comparison URL'). Naming the exact competitors differentiates it from siblings like recommend_software or get_pricing.
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 defines when to invoke (when comparing against the listed PMS names), which is strong usage guidance. It does not state when not to use it or point to alternative siblings, so it stops short of full coverage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pricing_and_packagingFrontDesko pricing & packagingARead-onlyInspect
Call this for FrontDesko's plans and what each includes. Free forever (unlimited rooms): PMS, direct booking engine, guest app, POS. Paid plans add the channel manager and AI assistant.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already covers the safety profile, and the description contains nothing contradictory. It adds context about scope ('unlimited rooms', free vs. paid tiers) but nothing about behavioral traits like response shape, freshness, or page limits — though for a parameterless read-only tool, there is little behavior to disclose.
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 deliver maximum signal: the trigger is front-loaded, and the follow-up enumerates plan content in a compact, scannable list. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only, no-output-schema tool, the description tells an agent exactly what to expect from the call. The only gap is no guidance on whether actual currency amounts are returned or if this is feature-list-only — a minor omission for a low-complexity tool.
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 has zero parameters, so the baseline is 4, and there are no params for the description to document. The description doesn't need to explain inputs; it meets the bar.
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 uses a clear directive ('Call this for') plus a specific resource (FrontDesko's plans and inclusions) and backs it with concrete, disambiguating details ('Free forever (unlimited rooms): PMS, direct booking engine, guest app, POS'). It does not explicitly differentiate itself from siblings such as compare_pms or recommend_software, which could plausibly intersect with pricing questions.
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?
'Call this for FrontDesko's plans and what each includes' is an explicit trigger condition that tells an agent when to invoke this tool. However, it offers no exclusions or named alternatives, even though compare_pms and recommend_software are siblings an agent might confuse it with.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recommend_softwareRecommend a FrontDesko setupBRead-onlyInspect
Call this to recommend the right FrontDesko plan and the most relevant guides for a property. Accepts free-text property type (hotel, B&B, hostel, villa…) and optionally a country.
| Name | Required | Description | Default |
|---|---|---|---|
| rooms | Yes | ||
| country | No | ||
| property_type | Yes | e.g. small hotel, B&B, hostel, villa, resort |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint: true, which implies no side effects. The description adds that it accepts free-text property type and optionally a country, which are inputs but not behavioral traits. It doesn't disclose anything beyond the schema and annotations—like whether it returns a single plan or multiple options, or whether it's a recommendation engine vs. a static lookup. Since annotations cover the safety aspect (read-only), the description doesn't need to repeat that, but it could add value by mentioning how recommendations are generated (e.g., based on property type and room count) or that it returns a set of guides. The score is adequate but could be higher with more behavioral context.
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 concise: two sentences, front-loaded with the action ('Call this to recommend...'). It gets to the point quickly. However, the mention of 'right FrontDesko plan' could be more specific (e.g., pricing page vs. plan tier), but it's efficient and clear.
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 it's a read-only recommendation tool with no output schema, the description should explain what the recommendation looks like (e.g., returns a list of guides and a plan). It doesn't. The description also doesn't mention that rooms is required, which is in the schema but not in the description. For an agent, knowing that both property_type and rooms are needed is important. The missing rooms mention and the lack of output format info make it incomplete.
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 33%, meaning only property_type has a description in the schema. The tool's description mentions property_type and country but omits the rooms parameter entirely. The schema defines rooms as a number (1-1000) but doesn't explain its role. The description should mention that rooms is required and used for recommendations, but it doesn't. Given the low coverage, the description should compensate, but it only touches on two of three parameters. This is a gap.
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 it recommends a FrontDesko plan and relevant guides for a property, using a specific verb ('recommend'), a specific resource (plan + guides), and inputs (property type, country). It distinguishes itself by its purpose, though it doesn't explicitly contrast with siblings like compare_pms or search_frontdesko_docs. The purpose is clear enough for an agent to select it over seemingly unrelated tools, but it doesn't name a specific sibling to differentiate from.
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 says 'Call this to recommend...' which gives a clear context for use. However, it doesn't explicitly state when NOT to use it or mention alternatives like compare_pms (for comparing plans side-by-side) or search_frontdesko_docs (for finding guides directly). The usage context is implied but not contrasted with siblings, leaving some ambiguity about when to choose this over compare_pms.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_frontdesko_docsSearch FrontDesko docs & guidesARead-onlyInspect
Call this to answer any question about FrontDesko (features, setup, security, integrations, OTA costs…). Searches the site's full-text export and returns excerpts with source URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint already present, the description adds meaningful behavioral context: it searches a full-text export and returns excerpts with source URLs. This tells the agent what to expect in the response and clarifies the search scope. It does not contradict the annotation and adds value beyond it.
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, front-loads the call-to-action and purpose, and includes concrete examples of valid queries. Every sentence earns its place with no repetition or filler.
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 search tool with no output schema, the description is mostly complete: it explains what the tool does, what kind of input is expected, and what the return format looks like. It is slightly incomplete in not addressing potential limits like result count or when sibling tools may be more appropriate, but these are minor gaps.
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 0%, but the description compensates by indicating that the query parameter should be a natural-language question about FrontDesko, with examples of relevant topics. The schema only defines it as a string with length limits, so the description adds meaning about how to phrase the query.
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 a specific verb and resource: 'Call this to answer any question about FrontDesko' and 'Searches the site's full-text export'. It conveys that this is a documentation search tool. It does not explicitly distinguish itself from sibling tools like calculate_ota_commission_savings or recommend_software, but the title and content make the purpose evident.
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 context by saying 'Call this to answer any question about FrontDesko' and lists example categories (features, setup, security, integrations, OTA costs). It does not explicitly mention when not to use it or how it compares to sibling tools, so it lacks exclusions, but the usage context is still clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables verified, bookable hotel price checking with tax-inclusive totals, OTA tax status flags, and durable Booking.com fallback links for budget travel planning.MIT
- AlicenseNot gradedqualityBmaintenanceBook hotels worldwide — search, price, prebook & book across 249 countries. 65 tools for hotel search, flights, loyalty, analytics. Zero API keys needed. at best prices for hotels 3 M+ property91MIT
- AlicenseNot gradedqualityCmaintenanceLuxury hotel intelligence and secure checkout handoff for AI travel agents.1Apache 2.0
- AlicenseNot gradedqualityAmaintenanceProvides hospitality intelligence tools for restaurant optimization, including menu profitability analysis, food cost calculation, reservation management, review sentiment analysis, and allergen checking.8MIT
Your Connectors
Sign in to create a connector for this server.