Timeplex K-Beauty Booking
Server Details
Real-time booking for Korean beauty & wellness shops — search availability, get a booking link.
- 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.
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 4.4/5 across 6 of 6 tools scored. Lowest: 3.6/5.
Each tool targets a distinct operation: searching shops, checking services, checking availability, initiating bookings for bookable and non-bookable shops, and looking up booking status. There is no overlap or ambiguity between them.
All tool names follow a consistent verb_noun pattern (get_, search_, request_, start_). The verbs are descriptive and the naming style is uniform across the set.
With 6 tools, the server is well-scoped for a booking system. Each tool covers a necessary step (search, availability, initiation, request, status) without unnecessary bloat or missing core functions.
The tool set covers the main booking workflow: shop discovery, service lookup, availability checking, booking initiation (both direct and concierge), and status retrieval. The only minor gap is the lack of a direct cancellation tool, but the status tool provides a URL for that, so agents can work around it.
Available Tools
6 toolsget_booking_statusARead-onlyInspect
Look up booking and payment status by reservation number, including whether it can be cancelled and the refund terms. To actually cancel, hand the customer the status_url from the response — cancelling is done there, not through this MCP. Reply in the user's language.
| Name | Required | Description | Default |
|---|---|---|---|
| res_no | Yes | Reservation number |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the readOnlyHint annotation. It reveals that the response contains a 'status_url' used for cancellation, explains that cancellation happens outside the MCP, and includes the language instruction. These details are not available in annotations and help the agent understand the tool's side effects and workflow constraints.
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 three sentences long, with the core purpose stated first, followed by a crucial cancellation workflow note, and ending with a language instruction. Every sentence adds unique value and there is no unnecessary text, making it highly efficient and scannable.
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?
Although there is no output schema, the description adequately covers the key return contents: booking status, payment status, cancellation eligibility, refund terms, and the status_url. For a simple lookup tool with one parameter, this is complete enough for an agent to understand what the tool provides. Minor improvement could be listing the exact fields, but the current description is sufficient.
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 single required parameter res_no is described in the schema as 'Reservation number', and the description mentions 'reservation number' without adding further meaning, format, or examples. With 100% schema coverage, the baseline is 3; the description adds no extra semantic benefit beyond what the schema already provides.
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 the tool's purpose: 'Look up booking and payment status by reservation number'. The verb 'look up' and the specific resource 'booking and payment status' with the identifier 'reservation number' make the action unambiguous. It also specifies included details (cancellation eligibility, refund terms), which distinguishes it from sibling tools that handle searches, booking creation, or service listings.
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?
Excellent usage guidance: the description explicitly tells the agent when to NOT use this tool ('To actually cancel... cancelling is done there, not through this MCP') and provides an alternative action (hand the customer the status_url). It also includes the instruction 'Reply in the user's language', which is a clear behavioral directive for the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_shop_servicesARead-onlyInspect
Get a shop's service menu (name, price, duration) and its staff/seats. Pass lang to receive the content translated into the customer's language.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Customer language (optional): ko|en|ja|zh|th. Defaults to the original text (ko). | |
| slug | Yes | Shop slug returned by search_shops |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true (safe read) and openWorldHint=false. The description adds value by detailing the returned data (service menu + staff/seats) and translation behavior. It does not disclose additional behavioral traits like rate limits or authentication needs, but given annotation coverage, the description is adequate.
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 with no fluff. The first sentence states purpose and output, the second adds usage guidance for lang. Information is front-loaded and every sentence earns its place.
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 there is no output schema, the description reasonably covers the return structure (name, price, duration; staff/seats). It also accounts for the optional lang behavior. A minor gap: staff/seats content is vague, but overall sufficient for a simple get tool with well-documented params and read-only annotations.
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 100%: both slug and lang have clear descriptions. The description's mention of translation adds minimal new meaning beyond the schema. With high schema coverage, the baseline of 3 is appropriate.
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 specific verb 'Get' and clearly identifies the resource: a shop's service menu (including name, price, duration) and staff/seats. It also adds the translation capability, making the purpose precise. This distinguishes it well from siblings like search_shops (search) and request_booking (booking flow).
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 provides contextual guidance for the lang parameter (pass lang for translation) and implies the slug comes from search_shops (via schema). However, it does not explicitly state when to use this tool versus alternatives, nor does it offer exclusion criteria or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_bookingAInspect
Submit a booking request for a shop that is not onboarded to Timeplex yet (bookable=false). Timeplex concierge staff contact the shop directly and reply to the customer. Share the returned link with the user.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Customer language (optional) | |
| venue_name | Yes | Name of the shop the customer wants to book |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are not very informative (all false). The description compensates fully by explaining the complete behavioral flow: the request is not automatically confirmed; instead, concierge staff contact the shop and later reply with a link. This sets correct expectations for an async, human-involved process, which is critical for an AI agent to manage user expectations.
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 three sentences: first states the core purpose and condition, second outlines the concierge workflow, third tells the agent what to do with the result. Each sentence earns its place, no fluff, and the key information is front-loaded.
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 the tool's low complexity (2 params, simple schema, no output schema), the description is complete. It covers purpose, condition, workflow, and output handling. The async nature and human involvement are clearly communicated. No gaps for an agent to misunderstand.
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 100% and the description adds clear meaning: it explains that 'venue_name' is the shop name the customer wants to book, and 'lang' is the customer's language for the booking process. The description's workflow mention (concierge contacts shop) implies these parameters will be used in that process, adding value beyond the schema's basic parameter descriptions.
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 the tool's purpose: submitting a booking request for a shop not yet onboarded to Timeplex. It specifies the condition (bookable=false) and the workflow (concierge contacts shop, then replies to customer with a link). This distinguishes it from siblings like search_availability (which checks availability) and start_booking (which likely handles already-onboarded shops).
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 provides clear context for when to use this tool ('shop not onboarded yet'), but does not explicitly tell when not to use it or mention alternatives. The sibling tools hint at alternatives (e.g., start_booking for onboarded shops), but the description could directly state that this tool is only for bookable=false shops.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_availabilityARead-onlyInspect
Check available time slots for a date. If time is given, it also judges whether that exact slot is bookable and returns nearby alternatives when it is not.
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | YYYY-MM-DD (Asia/Seoul) | |
| slug | Yes | ||
| time | No | HH:MM (optional) — judge whether this exact time is bookable | |
| items | Yes | Booking items. Hair: [{service_id, resource_id}]. Massage: [{service_id, qty}] (qty = number of people). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, confirming no state changes. The description adds valuable detail: when a time is given, the tool judges bookability and returns nearby alternatives if unavailable. This beyond-annotations info helps the agent understand conditional behavior. No contradictions found.
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 core purpose, and the second sentence covers a key conditional behavior. No filler, every word earns its place. Highly concise and well-structured.
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 4 parameters, no output schema, and read-only annotations, the description covers the main function and conditional behavior. However, it does not explain the return format (relevant since there's no output schema) or the meaning of the 'slug' parameter (which lacks a schema description). The 'items' parameter behavior is left to the schema. Some gaps remain for a fully self-contained description.
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?
With 75% schema description coverage, the schema already documents date, time, and items. The tool description adds extra meaning for the 'time' parameter: it judges exact slot bookability and returns alternatives. This augments the schema description. The undocumented 'slug' parameter in schema is not explained in the description, but overall the description adds value beyond schema.
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 the tool checks available time slots for a date, with additional behavior when a time is provided. The verb 'check' and resource 'availability' are specific, and the tool implicitly distinguishes from siblings like get_booking_status or request_booking. However, it does not explicitly name sibling tools or contrast use cases.
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 offers minimal guidance on when to use this tool versus alternatives. It implies a use case (checking availability for a date, optionally with a specific time), but does not state when not to use it (e.g., for existing bookings use get_booking_status) or mention any prerequisites or behavior for edge cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_shopsARead-onlyInspect
Find Korean beauty & wellness shops on Timeplex. bookable=true means you can check availability and book through this MCP; false means it needs request_booking (Timeplex concierge arranges it manually). Shops fall into two categories: hair (hair salons) and beauty (everything else — massage, spa, nail, skin care, waxing, scrub, etc.). Each shop result carries its category. Each result carries the shop address, so you can answer area questions ("shops in Seoul") without extra calls. Always reply to the user in the language they used, and start the reply with the response's reply_header line.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Shop name, partial match (optional). If no name matches, it is also interpreted as a shop category. | |
| location | No | Area filter (optional), in English or Korean — "Seoul", "Gangnam", "Hongdae", "Busan", "Jeju", "강남", "홍대"… Matched against the shop address. Shops with no address registered are excluded when this is set. | |
| service_type | No | Shop category (optional). Accepts broad categories ("hair", "beauty") and specific ones ("massage", "spa", "head spa", "nail", "skin care", "esthetic", "waxing", "scrub"), in English or Korean. Leave empty to search all categories. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false. The description adds value by disclosing behavioral traits: that results carry category, address, and a reply_header for response formatting. However, it does not mention pagination or result limits, which would round out transparency for a search tool.
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 clear and front-loaded with the core purpose, but is somewhat verbose with extended booking logic and response instructions. A slightly shorter version could retain all key points while being more direct.
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 the context (3 optional params, no enums, no output schema, 5 sibling tools), the description provides ample guidance: it explains result structure, user language handling, and how to use the bookable flag. No output schema means the description must cover return content, and it does so by mentioning address, category, and reply_header.
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 100%, so the baseline is 3. The description adds value by explaining that search results include addresses (making location queries more useful) and that bookable vs. request_booking distinction enriches the query interpretation. It also clarifies that query can serve as a category fallback, which the schema does not express.
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 defines the tool's purpose: finding Korean beauty & wellness shops on Timeplex. It specifies verb ('Find'), resource ('Korean beauty & wellness shops'), and platform context ('on Timeplex'), while distinguishing it from sibling tools by noting that search results provide shop addresses and booking indicators.
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 provides explicit when-to-use guidance: it explains the difference between bookable=true (available through MCP) and false (requires request_booking), categorizes shops into hair and beauty, and includes a user-language instruction. It also tells agents they can answer area questions without extra calls, implicitly differentiating from search_availability or get_shop_services.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_bookingARead-onlyInspect
Build a link that lets the customer continue the booking for the chosen shop, service and time. This creates and changes nothing — it only builds a link. So never ask "shall I create a link?"; once a shop is known, call it right away and include the link in your reply. date, time and items are all optional — if the customer has not picked a date or time yet, still call it with just the shop and hand over the link; they pick the rest on the booking page. Never withhold the link to ask for a date first. It books nothing — the customer must open the link, enter email, name and phone, and pay. Payment submits the booking and secures the slot; the final confirmation comes from the shop owner afterwards. Put link_markdown into your reply as-is — never expose the raw URL. Pass on guidance, and mention that the slot is not held until payment (whoever pays first gets it) and that the shop owner confirms it after that. Describe the remaining steps only as "just enter your email, name and phone, then pay" — keep it light, and always write your reply in the language the user used, starting with the response's reply_header line.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | YYYY-MM-DD (Asia/Seoul). Optional — omit if the customer has not picked a date; they choose it on the booking page. | |
| slug | Yes | ||
| time | No | HH:MM. Optional — omit if the customer has not picked a time. | |
| items | No | Optional — omit if no service is chosen yet. Hair: [{service_id, resource_id}] — **exactly one** (hair shops book one service at a time). Massage: [{service_id, qty}] — multiple allowed (several services and several people at once). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the description's job is to add context beyond that. It does so richly: explains the tool 'creates and changes nothing — it only builds a link' (consistent with readOnlyHint), clarifies that the link requires customer action (email, name, phone, payment), discloses that payment does not guarantee the slot (whoever pays first gets it, and shop owner confirms), and states the response format (link_markdown, never raw URL). No contradiction with annotations.
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 comprehensive and front-loads the core purpose ('Build a link...'). However, it is quite long and contains some repetition (e.g., the instruction to 'never withhold the link' and details about what the customer must do). Some redundant guidance could be trimmed without losing clarity.
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 4 parameters with 75% schema coverage, annotations covering safety, and no output schema, the description is remarkably complete. It covers when to call, parameter optionality, behavioral nuances (no mutation), customer-facing instructions, and error-prone scenarios (raw URL exposure, waiting for date). The lack of an output schema is compensated by the explicit instruction to use link_markdown in the reply.
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 documentation coverage is 75%, meaning most parameters already have descriptions. The description still adds value beyond the schema: clarifies that date, time, and items are all optional ('if the customer has not picked a date or time yet, still call it with just the shop'), explains the items array constraints per shop type (hair: exactly one; massage: multiple allowed), and ties parameter usage to the customer's conversation context. A slight deduction because the slug parameter is not explained beyond 'slug' in the schema and the description does not elaborate much on how to obtain it—though it could be inferred from context.
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 explicitly states the tool's purpose: 'Build a link that lets the customer continue the booking.' It clearly defines what the tool does and does not do: 'This creates and changes nothing — it only builds a link.' This distinguishes it from 'request_booking' (a sibling) which likely submits the booking or performs mutations, and from search tools like 'search_availability' which find available slots.
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?
Provides exceptionally detailed usage guidance: when to call it ('once a shop is known, call it right away'), when not to ask questions ('never ask shall I create a link?'), how to handle missing data ('still call it with just the shop'), and what to tell the customer ('slot is not held until payment'). Also warns against common mistakes ('never expose the raw URL').
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
- Flicense-qualityCmaintenanceEnables users to query real-time reservation availability for Naver Booking places in Korea, including beauty salons, restaurants, and other categories.
- Alicense-quality-maintenanceConnects AI models to real-time search and inventory data for major South Korean retail chains, convenience stores, and cinemas. It enables users to check product availability at stores like Daiso and Olive Young, or view movie schedules at CGV and Megabox.318
- Alicense-qualityDmaintenanceProvides comprehensive Korean Beauty information through real-time web search, AI-powered skin analysis from photos, and curated knowledge of 58+ K-Beauty brands, ingredients, and personalized skincare routines.7MIT
- Flicense-qualityDmaintenanceEnables unified management of reservations across multiple Korean platforms (Naver, Airbnb, SpaceCloud, Yanolja, Kakao) with features for duplicate booking prevention, revenue tracking, customer management, and automated messaging through iCalendar integration.