Skip to main content
Glama

Server Details

Remote MCP for TehProf Booking: browse resources & availability, create & cancel reservations.

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.2/5 across 8 of 8 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct purpose: reservation CRUD, availability checking, and tenant/resource listing. No overlap or ambiguity exists among the 8 tools.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern in snake_case. Verbs like cancel, check, create, get, and list are appropriately used for their actions.

Tool Count5/5

With 8 tools, the set is well-scoped for a reservations system. It covers key operations without being overly numerous or sparse.

Completeness4/5

Core operations (create, cancel, read, list, check availability) are present, along with supporting tools for resources and branding. Missing an update tool, but the lifecycle is largely complete.

Available Tools

8 tools
cancel_reservationAInspect

[Requires API key with the matching scope] Cancel a reservation by UUID. Requires the reservations:write scope and the reservation must belong to the key tenant (idempotent — cancelling an already-cancelled booking succeeds).

ParametersJSON Schema
NameRequiredDescriptionDefault
reservation_idYesReservation UUID to cancel.
Behavior4/5

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

With no annotations, the description reveals important behaviors: scope requirement, tenant constraint, and idempotency. It does not mention side effects like notifications, but the core effect is clear.

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 concise sentence that packs essential information: prerequisites, action, and a key behavioral trait (idempotency). No redundant words.

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?

The description adequately covers prerequisites and idempotency, but lacks mention of the return value or confirmation of success/failure. Given the tool's simplicity and no output schema, this is a minor gap.

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 covers the single parameter with a description ('Reservation UUID to cancel.'). The description adds no additional semantics beyond the schema, so baseline 3 is appropriate.

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 'Cancel a reservation by UUID', specifying the action and the identifier. This distinguishes it from sibling tools like 'create_reservation' or 'list_reservations'.

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?

It explicitly requires the reservations:write scope and notes the reservation must belong to the key tenant. It also mentions idempotency for already-cancelled reservations. While it doesn't explicitly exclude other tools, the context is sufficient for correct usage.

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

check_availabilityAInspect

Get free time slots for a resource on a given date. Returns bookable slots considering existing reservations. No API key required.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYesDate in YYYY-MM-DD.
resource_idYesResource UUID (from list_resources).
duration_minutesNoSlot duration in minutes (5-1440, default 60).
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses the read-only nature ('Get free time slots'), that it considers existing reservations, and that no API key is required. It does not detail rate limits or pagination, but the provided traits are sufficient for a simple lookup 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?

Two sentences, no fluff. The first sentence immediately states the core purpose, and the second adds a qualification and a bonus fact. Every word 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 the tool's simplicity (3 parameters, no output schema), the description covers the key aspects: what it returns, how to use resource_id, and that no auth is needed. It lacks explicit output format details, but for an availability check, the purpose is clear enough.

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%, so the schema already documents each parameter's meaning. The description adds minimal extra parameter context (e.g., 'Resource UUID (from list_resources)') but mostly repeats what is in the schema. Baseline 3 is appropriate.

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 purpose: 'Get free time slots for a resource on a given date.' It uses a specific verb ('Get') and resource ('free time slots'), and distinguishes from siblings like create_reservation and cancel_reservation. The mention of 'No API key required' adds useful context.

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 checking availability before creating a reservation, but does not explicitly state when to use vs. alternatives, nor does it exclude any cases. The context is clear enough, but lacks explicit guidance like 'Use this before create_reservation'.

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

create_reservationAInspect

[Requires API key with the matching scope] Create a reservation. Requires an API key with the reservations:write scope; the booking is bound to the key tenant and the resource must belong to it. Provide either check_in_date+check_out_date (overnight/rental) OR start_at+end_at ISO datetimes (time-slot).

ParametersJSON Schema
NameRequiredDescriptionDefault
notesNoFree-text notes (max 1000 chars, optional).
end_atNoSlot end ISO datetime.
localeNoLocale ru/en/kk (optional, default ru).
start_atNoSlot start ISO datetime (alternative to check_in_date).
guest_nameYesGuest full name (2-200 chars).
guest_emailNoGuest email (optional).
guest_phoneYesGuest phone, 6-15 digits with optional +.
resource_idYesResource UUID to book.
check_in_dateNoRental check-in date YYYY-MM-DD.
check_out_dateNoRental check-out date YYYY-MM-DD.
idempotency_keyNoOptional client-generated key (e.g. a UUID) to make retries safe. Repeating the call with the same key returns the original reservation instead of creating a duplicate (24h window).
Behavior3/5

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

No annotations provided, so description carries full burden. Covers authentication, scoping, idempotency, and alternatives but does not disclose return value or behavior if both parameter sets are provided. Mutation is implied but not explicit.

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, front-loaded with critical auth requirement, then efficiently explains the two usage patterns. No unnecessary words.

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?

No output schema provided; description does not explain what the tool returns (e.g., created reservation ID or object). Also missing behavior for conflicting parameter groups. However, it covers auth, scoping, and idempotency adequately.

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 100% with descriptions for each parameter. Description adds value by explaining the two parameter groups are alternatives and clarifying idempotency key usage, going beyond 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?

Description clearly states it creates a reservation and specifies required scope and two alternative parameter patterns (check_in/check_out vs start_at/end_at). Distinguishes from siblings like cancel_reservation and 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 Guidelines4/5

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

Explicitly explains when to use each date/time pattern and mentions authentication scope and tenant binding. Could be improved by specifying when not to use, but sibling names provide implicit context.

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

get_brandingAInspect

Get public tenant profile and branding (name, logo, colors, tagline) by the tenant public slug. No API key required.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesTenant public slug, e.g. "baiterekresort-bitrix24-kz".
Behavior3/5

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

Without annotations, the description carries the full burden. It states the tool is public and requires no authentication, which is helpful. However, it does not disclose behavior on invalid slugs, rate limits, or whether the response could be empty.

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 with no unnecessary words. It front-loads the core purpose and follows with a key usage note. 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 read-only tool with one parameter, the description is largely adequate. It covers what is returned and the authentication requirement. However, the absence of output schema or description of response structure is a minor gap.

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?

The input schema covers 100% of the parameter and its description. The tool description adds a concrete example of the slug format (e.g., 'baiterekresort-bitrix24-kz'), providing additional semantic clarity 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 specifies the exact resource (public tenant profile and branding) and action (Get), including the fields returned (name, logo, colors, tagline) and the input (tenant public slug). This clearly distinguishes it from sibling tools like check_availability or create_reservation.

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 explicitly notes that no API key is required, providing a clear usage context. It does not explicitly state when not to use it versus alternatives, but the scope (public branding) is sufficiently clear.

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

get_reservationAInspect

[Requires API key with the matching scope] Get a single reservation by its UUID. With the reservations:read scope and matching tenant, returns guest details; otherwise only public status fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
reservation_idYesReservation UUID.
Behavior4/5

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

No annotations provided, so description must carry the burden. It discloses scope-dependent response and API key requirement, but does not explicitly state that the operation is read-only or mention any side effects. The transparency is adequate but not exhaustive.

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 concise sentences, each serving a purpose: first states requirement and action, second clarifies scope behavior. No unnecessary words.

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 single-get tool with one parameter, the description covers the core behavior and scope-based differences. It does not address error cases or response format, but given no output schema, this is acceptable.

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% with a clear description for reservation_id. The tool description adds no further meaning to the parameter beyond the schema; the context about scope applies to the tool overall, not the 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 it gets a single reservation by UUID, differentiating it from list_reservations and cancel_reservation. The scope-based behavior is explicitly described.

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?

It mentions the required API key and scope, and describes different outputs based on scope. However, it does not explicitly state when not to use this tool or mention alternatives like list_reservations for multiple records.

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

list_groupsAInspect

List resource groups (categories) of a tenant by public slug — only groups with at least one publicly visible resource. No API key required.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesTenant public slug.
Behavior4/5

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

With no annotations provided, the description carries full burden. It discloses that only groups with publicly visible resources are returned and that no API key is needed. It does not describe the return format or potential errors, but the core behavior is 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 concise sentences with no fluff. Action and key conditions are front-loaded. Every sentence 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 the simplicity of the tool (one parameter, no output schema), the description is nearly complete. It explains the scope and access requirement. The only gap is the lack of information about the return format, which is typical for list operations but could be noted.

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% (slug with description). The description adds 'public slug' context, clarifying it's for the tenant identifier. It does not add extensive detail beyond the schema, but it provides enough for correct usage.

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 it lists resource groups by public slug, with a specific condition (only those with publicly visible resources). It distinguishes itself from sibling tools like list_resources and list_reservations by focusing on groups and requiring a slug.

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 notes 'No API key required', indicating public access. However, it does not explicitly contrast with sibling tools or state when not to use this tool. The context of public slug implies it's for tenant-specific public data, but guidance could be more explicit.

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

list_reservationsAInspect

[Requires API key with the matching scope] List reservations of the API key tenant. Requires the reservations:read scope. Optional filters: resource_id, from/to (YYYY-MM-DD), status, limit (1-200, default 50).

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoEnd date filter YYYY-MM-DD.
fromNoStart date filter YYYY-MM-DD.
limitNo1-200, default 50.
statusNoFilter by status (e.g. confirmed, pending, cancelled).
resource_idNoFilter by resource UUID.
Behavior3/5

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

No annotations provided, so description carries full burden. Discloses scope requirement and filter options, but misses pagination behavior (e.g., how to get next page) and response format.

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 with essential information front-loaded (scope requirement), no wasted words.

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?

No output schema, so description should explain response structure minimally. Missing info on return fields, error handling, or pagination. Adequate for a simple list tool but incomplete.

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%, so baseline is 3. Description repeats parameter info and adds date format hint and default limit, but adds little beyond 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?

Description clearly states it lists reservations for the API key tenant, with specific verb 'List' and resource 'reservations'. It distinguishes from siblings like get_reservation (singular) and create_reservation.

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 requires API key with matching scope and reservations:read scope. Lists optional filters, but doesn't provide guidance on when to use this vs. check_availability or other siblings.

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

list_resourcesAInspect

List bookable resources of a tenant (rooms, halls, services) by public slug. Optional filters: group_id, search, bed_type, resource_class, min_capacity, amenities (comma-separated). No API key required.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesTenant public slug.
searchNoFree-text name filter (1-100 chars).
bed_typeNo
group_idNoResource group UUID, or "none" for ungrouped.
amenitiesNoComma-separated amenity keys.
min_capacityNoMinimum capacity.
resource_classNo
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the read-only nature (listing) and authentication requirement (none), but lacks details on pagination, error handling, or response format. Adequate but not comprehensive.

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 one precise sentence followed by a list of optional filters. Every part is necessary, and the most important information (purpose and required parameter) is front-loaded.

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 moderate complexity of 7 parameters and no output schema, the description provides a good overview but omits details like return format, pagination, or error cases. It is minimally viable but not comprehensive.

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?

The description adds meaning beyond the schema by grouping optional filters and clarifying that amenities are comma-separated. Schema coverage is 71%, and the description compensates for parameters like bed_type and resource_class that lack schema descriptions.

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 action (list), resource (bookable resources of a tenant), and scope (by public slug), distinguishing it from sibling tools which focus on reservations, branding, or groups.

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 for listing resources and notes 'No API key required', but does not explicitly state when to use versus alternatives or provide exclusions. The sibling tools are sufficiently different, so the purpose is clear enough.

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!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources