Skip to main content
Glama

エキテン ネット予約

Server Details

エキテン(日本全国のお店・施設の情報サイト)のネット予約を提供するMCPサーバー。オールジャンルの日本国内店舗・施設が対象。店舗検索・空き確認・予約登録・キャンセルに対応。

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Available Tools

7 tools
cancel_reservationAInspect

ログイン済みユーザーの予約をキャンセルする。未ログインユーザーはキャンセル不可(ログインしていない場合は start_login を呼び、返されたloginUrlをユーザーに提示してログインを案内すること)。キャンセルする reservationNo は create_reservation(予約登録ツール)のレスポンスで取得した値を使用する。実行前に必ずユーザーにキャンセル対象の予約内容を確認し、最終確認を求めること。

ParametersJSON Schema
NameRequiredDescriptionDefault
reservationNoYesキャンセルする予約番号。必須。create_reservation(予約登録ツール)のレスポンスで取得した reservationNo。

TDQS

A4.7/5.0
Behavior4/5

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

With no annotations, the description carries the burden of disclosing behavior. It mentions the prerequisite of login, the need for confirmation (implying destructive action), and the fallback to start_login. However, it does not explicitly state the irreversible nature of cancellation or any potential side effects beyond the cancellation itself.

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 concise yet complete, with each sentence serving a distinct purpose: stating the action, specifying login requirements, identifying the parameter source, and mandating user confirmation. No redundant information is present.

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?

The description covers the tool's purpose, prerequisites, parameter source, and confirmation requirement. However, since there is no output schema, it does not mention what the tool returns (e.g., success/failure, updated reservation status), leaving a minor gap in completeness.

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

Parameters5/5

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

The single parameter reservationNo has a description that fully explains its meaning and source (from create_reservation's response), covering 100% of the schema. The description adds value by clarifying the required provenance of the value.

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 tool cancels a reservation for a logged-in user, using the verb 'キャンセルする' (cancel) and the specific resource '予約' (reservation). It is distinct from sibling tools like create_reservation and start_login.

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?

The description provides explicit guidance: it notes that unauthenticated users cannot cancel and instructs to call start_login and present the loginUrl. It also specifies that reservationNo should come from create_reservation's response and requires user confirmation before execution.

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

create_reservationAInspect

エキテンのネット予約を登録する。事前に get_availability(予約在庫状況取得ツール)で店舗の予約可能な空き枠(reservationType・空席スロット・メニュー・スタッフ・クーポン・人数設定等)を取得してから使用すること。tableUnit(グルメ向け)かつ headcountBreakdownEnabled: true(内訳あり)の場合、headcountBreakdown の合計人数は get_availability の該当 slots[].headcountBreakdownMax を上限とする。予約方法は2通り。(1)ログインして予約する場合: email を付けずに呼び出す。未ログインなら 401 認証要求が返るので start_login を呼び、返されたloginUrlをユーザーに提示してログインを完了してもらい、完了後に再実行する(ログインすると会員情報が反映され、予約後のキャンセルも可能)。(2)ログインせず予約する場合: email(メールアドレス)を指定する。予約後に認証メールが送信される(キャンセル不可)。ユーザーにどちらで進めるか確認し、実行前に予約内容の最終確認を求めること。

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNoお店へのご要望。省略可(上限2000文字)
emailNoメールアドレス。未ログイン時は必須。ログイン済みの場合は省略可(会員登録済みアドレスを使用)
phoneYes電話番号。必須。ハイフンなし。携帯・IP電話(070/080/090/050等)は11桁、固定電話(03/06等)は10桁。形式: ^(0[5-9]0[0-9]{8}|0[1-9][1-9][0-9]{7})$
menuIdNoメニューID。予約在庫状況取得ツール(get_availability)で取得した menus[] から選択したメニューの menuId を指定する。同ツールの menuSelectionRequired が true の場合は必須(false の場合は省略可)
shopIdYesエキテン店舗ID。必須。
staffIdNoスタッフID。reservationType が timeUnit(全ジャンル向け)のみ有効。省略可(指名なし)。tableUnit(グルメ向け)の場合はトルツメ
couponIdNoクーポンID。省略可
lastNameYes予約者の姓。必須。
firstNameYes予約者の名。必須。
headcountNo予約人数。tableUnit(グルメ向け)かつ headcountBreakdownEnabled: false(内訳なし)の場合のみ必須。それ以外(timeUnit、または内訳ありの場合)はトルツメ
lastNameKanaYes予約者の姓(ふりがな)。必須。
firstNameKanaYes予約者の名(ふりがな)。必須。
reservationDateYes予約日。必須。YYYY-MM-DD 形式。
reservationTimeYes予約時間。必須。HH:MM 形式。
smokingPreferenceNo禁煙/喫煙希望。reservationType が tableUnit(グルメ向け)かつ smokingSetting が separate(分煙)の場合のみ有効・必須。それ以外の場合はトルツメ
headcountBreakdownNo来店人数の内訳。tableUnit かつ headcountBreakdownEnabled: true(内訳あり)の場合のみ必須。キーは headcountBreakdownItems[].itemKey、値は各内訳の人数(integer)。合計人数は get_availability の headcountBreakdownMax が上限。それ以外はトルツメ。例:{"adult": 2, "child": 1}

TDQS

A4.6/5.0
Behavior5/5

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

The description fully discloses behavioral traits: 401 triggers start_login, email-based reservations send an authentication email and are non-cancellable, while logged-in reservations support cancellation. It also specifies conditional parameter requirements without relying on annotations.

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 dense but every sentence serves a purpose: purpose, precondition, conditional rules, two flows, and final confirmation instruction. The structure is logical and avoids repetition.

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?

The description covers preconditions, parameter selection, authentication flows, and user-communication steps. It lacks an explicit statement of the output format or success response, but given the tool's straightforward purpose, 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?

Schema descriptions already cover 100% of parameters with detailed conditions (e.g., email required when logged out, menuId dependency on get_availability, headcountBreakdown constraints). The main description only summarizes these rules without adding new per-parameter semantics.

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 tool's purpose—registering an Ekiten online reservation—while distinguishing it from siblings like get_availability (retrieving availability) and cancel_reservation. It also explains the two reservation modes (login vs. email) and the prerequisite of calling get_availability first.

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?

Explicitly instructs the agent to use get_availability before creating a reservation, and describes when to use start_login (on 401) and the email-based alternative. It also directs the agent to confirm the user's preferred mode and obtain final confirmation before execution.

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

get_availabilityAInspect

指定した店舗の予約可能な空き枠を、日時・人数・メニュー・スタッフ・禁煙喫煙・クーポン等の条件で取得する。事前に search_shops(店舗検索ツール)で取得した shopId を指定すること。予約方式(timeUnit/tableUnit)によって返却項目が異なる。フィルタ条件を指定した場合、条件に合致しない空き枠は除外(canReserve: falseに更新)され、選択できないメニュー・スタッフ・クーポンには isSelectable: false と unselectableReason(選択不可の理由コード)が付与される。AIがユーザーに予約条件を提示し、条件を確定するための情報として使用する。【reservationType による create_reservation への影響】取得した reservationType によって次ステップ create_reservation の必須パラメータが変わる。timeUnit(全ジャンル向け):headcount不要・staffId指定可・smokingPreference不要。tableUnit(グルメ向け):headcountBreakdownEnabled が false なら headcount 必須、true なら headcountBreakdown(内訳)必須。smokingSetting が separate(分煙)なら smokingPreference 必須。staffId はトルツメ。menuSelectionRequired が true の場合は menuId 必須。【人数上限の確認】tableUnit(グルメ向け)で headcountBreakdownEnabled が true の場合、各 slots[] の headcountBreakdownMax が日時・禁煙喫煙・選択済みメニューの限定数・連結可能なテーブルの最大定員数を反映した合計人数の動的な上限値。ユーザーに人数を提示・確認する際はこの値を上限として使用すること。【選択不可の判定に含まれる要素】menuId・staffId を指定した場合、限定条件(利用可能時間・曜日・日・1日の限定数)に加えて、メニューの同時対応可能件数・スタッフの同時担当可能件数が該当時間枠で上限に達していないかも判定される。staffId・couponId を先に指定した場合、対応不可・併用不可のメニューも isSelectable: false となる(メニュー側の判定はスタッフ・クーポン起点でも双方向に働く)。【tableUnit のテーブル割り当て】tableUnit で headcount または smokingPreference を指定した場合の canReserve 判定は、実際の予約確定時にテーブルを割り当てるアルゴリズムと同一のロジックで判定される(最少人数を満たす単独テーブル優先→連結テーブル→最少人数未満の単独テーブルの順、禁煙/喫煙は同属性同士のみ連結可)。【初回呼び出しの注意】menuId・staffId・couponId・headcountBreakdownの有効な値は店舗ごとに異なり事前にはわからないため、初回呼び出し時はこれらを指定せず、レスポンスのmenus/staffs/coupons/headcountBreakdownItemsから選択肢を取得すること。ユーザーが選択した後、必要であればその値を指定して再度呼び出す。【次のステップ】取得した条件をもとにユーザーへ日時・人数・メニュー等を質問し、create_reservation を呼び出す。

ParametersJSON Schema
NameRequiredDescriptionDefault
sinceNo空席情報の取得開始日。YYYY-MM-DD 形式。省略時は当日。reservationDate を指定した場合はそちらが優先される。until との期間(until - since)は14日以内とすること
untilNo空席情報の取得終了日。YYYY-MM-DD 形式。省略時は当日から2週間後。reservationDate を指定した場合はそちらが優先される。since との期間(until - since)は14日以内とすること
menuIdNoメニューID。指定した場合、そのメニューの限定条件(利用可能時間・曜日・日・1日の限定数)および該当時間枠の同時対応可能件数に合致する枠のみ canReserve: true とする。省略可
shopIdYes店舗ID。必須。店舗検索ツールで取得した shopId を指定
staffIdNoスタッフID。timeUnit(全ジャンル向け)のみ有効。指定した場合、そのスタッフの受付可能時間および該当時間枠の同時担当可能件数に合致する枠のみ canReserve: true とする。省略可
couponIdNoクーポンID。指定した場合、そのクーポンの限定条件に合致する枠のみ canReserve: true とする。省略可
headcountNo予約人数。tableUnit(グルメ向け予約)かつ内訳なしの場合に指定。省略可
reservationDateNo予約希望日(単一日)。YYYY-MM-DD 形式。指定した場合 since / until より優先し、その日の空き枠のみ返す。省略可
reservationTimeNo予約希望時間。HH:MM 形式。指定した場合、該当時間の枠のみ返す。省略可
smokingPreferenceNo禁煙/喫煙希望。tableUnit(グルメ向け)かつ分煙店舗の場合に指定。省略可 noSmoking / smoking / noPreference
headcountBreakdownNo来店人数の内訳。tableUnit かつ内訳ありの場合に指定。キーは headcountBreakdownItems[].itemKey、値は各内訳の人数。省略可

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so extensively. It discloses filter behavior (canReserve: false, isSelectable: false, unselectableReason), reservationType-dependent return fields, the dynamic headcountBreakdownMax, the exact table-allocation algorithm, and bidirectional menu/staff/coupon selection constraints. No contradiction with annotations exists.

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?

The description is long but well-organized with bracketed section headers and front-loaded purpose and prerequisite. Some sections, such as the create_reservation parameter rules, could arguably be trimmed or moved, but the structure makes the density navigable.

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?

There is no output schema, yet the description explains the key response concepts (slots[], menus/staffs/coupons/headcountBreakdownItems, canReserve, isSelectable, unselectableReason, headcountBreakdownMax, reservationType), the correct initial call flow, and the next step. Minor operational details like pagination or error handling are not essential for this tool's selection and invocation.

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

Parameters5/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds substantial meaning beyond the schema: timeUnit vs tableUnit parameter requirements, when headcount vs headcountBreakdown is required, smokingPreference rules, first-call omission guidance, and how each filter affects canReserve and isSelectable. This is far more than the schema provides.

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 names a specific verb and resource (取得する 予約可能な空き枠), scopes it to a specified shop, and lists the filtering dimensions (日時・人数・メニュー・スタッフ・禁煙喫煙・クーポン). It also distinguishes itself from siblings by requiring shopId from search_shops and positioning itself before 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?

It gives strong workflow guidance: use shopId from search_shops, call initially without menuId/staffId/couponId/headcountBreakdown, then optionally call again with user-selected values, and follow up by asking the user and calling create_reservation. It does not explicitly state 'when not to use this tool' versus alternatives, so it stops just short of a 5.

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

get_genresAInspect

エキテンの大ジャンル・小ジャンルの全件一覧を取得する。ジャンルはキーワード検索ではなく一覧から選ぶ方式。引数は不要。AIはユーザーの入力(「美容」「グルメ」等)とレスポンス内の largeGenreName / smallGenreName を照合し、該当する largeGenreId / smallGenreId を選択すること。曖昧または複数該当する場合はユーザーに確認すること。取得したIDを店舗検索ツールに渡す。【次のステップ】選択した largeGenreId / smallGenreId を使って search_shops を呼び出す。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations present, the description carries the full burden. It discloses that the tool takes no arguments, returns genre names and IDs, and requires the AI to perform matching and confirmation. No hidden side effects or permissions are implied, and the behavior is fully transparent.

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?

The description is slightly verbose, repeating the matching instruction and the next-step guidance, but each sentence carries essential operational detail. It could be tightened without losing clarity, yet it remains well-structured and readable.

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?

Given the absence of an output schema, the description adequately specifies the response elements (largeGenreName/smallGenreName, largeGenreId/smallGenreId) and the decision logic for handling ambiguous matches. It also explains the follow-up action, making the tool's context fully understandable.

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

Parameters5/5

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

Although the schema has zero parameters, the description explicitly states '引数は不要' (no arguments required), which confirms the parameter expectation and prevents any misinterpretation. This adds clarity beyond the empty schema, though the baseline for zero parameters is already 4.

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 tool retrieves the full list of major and sub genres ('大ジャンル・小ジャンルの全件一覧を取得する') and explicitly distinguishes its purpose from keyword search, positioning it as a selection-from-list mechanism. It also indicates the subsequent use of the retrieved IDs, leaving no ambiguity about the tool's role.

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?

The description provides explicit when-to-use guidance: it instructs the AI to match user input (e.g., '美容', 'グルメ') against genre names and select the corresponding IDs, and specifies to ask for confirmation if ambiguous or multiple matches. It also names the next step (call search_shops with the selected IDs), effectively guiding the agent through the workflow.

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

logoutAInspect

現在のセッションのログイン状態を解除する。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are present, so the description is the sole behavioral disclosure. It clearly identifies the state-changing action (releasing login state) but does not mention side effects such as token invalidation, idempotency, or error behavior when no session exists.

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?

A single concise Japanese sentence with no filler; the action and target are front-loaded.

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 zero-parameter logout with no output schema, the description gives enough to invoke the tool correctly. It lacks return/error semantics, but the operation is simple and the sibling set makes the purpose clear.

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 tool has zero parameters and 100% schema coverage, so there is nothing for the description to add; baseline 4 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 uses a specific verb (解除する, 'release/terminate') and a clear resource (現在のセッションのログイン状態, the current session's login state). It is immediately distinguishable from the sibling start_login, though it does not explicitly name alternatives.

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

Usage Guidelines2/5

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

No guidance is given on when to call logout versus start_login or other siblings. The intended context (after an authenticated session exists) is implied but not stated.

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

search_shopsAInspect

エキテンのネット予約に対応した店舗を検索する。店舗名・住所・大ジャンル・小ジャンルに加え、日時・人数の大まかな条件で絞り込み可能。取得した shopId を予約在庫状況取得・予約登録ツール(get_availability)で使用する。keyword / address / prefecture / city / prefectureCode / cityCode / largeGenreId / smallGenreId のいずれか1つ以上を必ず指定すること。日時・人数条件は任意。メニュー・スタッフ・禁煙喫煙等の詳細条件は search_shops では絞り込めないため、候補店舗ごとに予約在庫状況取得・予約登録ツール(get_availability)を使用すること。

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNo市区町村名。市区町村名で絞り込み。省略可。(例: 渋谷区)
pageNoページ数。1始まり。省略時は1
addressNo住所。住所をフリーワードで絞り込み(都道府県名・市区町村名・町名等)。省略可
keywordNo店舗名。店舗名または店舗名のキーワードで検索(部分一致)。省略可
perPageNo1ページあたりの取得件数(最大20)。省略時は10
cityCodeNo市区町村JISコード。市区町村JISコードで絞り込み。city・prefectureより優先。prefectureCode より優先。省略可。(例: "13113"=渋谷区)
headcountNo予約人数。指定した場合、その人数を受け入れ可能な店舗のみに絞り込む。グルメ予約(tableUnit)の店舗のみ判定対象。グルメ予約以外(timeUnit)の店舗は人数条件を無視して結果に含める。省略可
prefectureNo都道府県名。都道府県名で絞り込み。省略可。(例: 東京都)
largeGenreIdNo大ジャンルID。大ジャンルIDで絞り込み。省略可
smallGenreIdNo小ジャンルID。小ジャンルIDで絞り込み。省略可 largeGenreId と組み合わせて使用、親子関係が不一致の場合はsmallGenreIdを優先
prefectureCodeNo都道府県JISコード。都道府県JISコードで絞り込み。prefecture より優先。省略可。(例: "13"=東京都)
reservationDateNo予約日(YYYY-MM-DD形式)。指定した場合、その日に予約枠(即予約またはリクエスト予約)がある店舗のみに絞り込む。省略可
reservationTimeNo予約時間(HH:MM形式)。reservationDateとの同時指定が必須(単独指定はエラー)。指定した場合、その日時に予約枠がある店舗のみに絞り込む。省略時はreservationDate当日のいずれかの時間に空きがあれば対象とする

TDQS

A4.8/5.0
Behavior5/5

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

The description discloses detailed behavior: reservation date/time filters narrow results to shops with available slots, headcount filtering applies only to tableUnit shops and is ignored for timeUnit shops, and parameter precedence rules (e.g., cityCode over prefecture, smallGenreId over mismatched largeGenreId) are stated. It also warns that reservationTime alone is an error, making the tool's runtime behavior transparent.

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?

The description is dense but not wasteful; each sentence adds necessary detail about parameter semantics or tool behavior. Some repetition (e.g., '省略可' appearing many times) is present, but it serves to keep individual parameter notes self-contained. Overall it is appropriately sized given the 13 parameters and their rules.

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?

The description covers all input parameters and their behavioral effects, but it lacks an explicit output schema or description of the response structure beyond mentioning shopId. Given that no output schema is provided, the agent would have to infer other returned fields, though the primary use (feeding shopId to get_availability) is clear.

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

Parameters5/5

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

All 13 parameters have descriptive comments covering format examples (e.g., cityCode "13113" for Shibuya), default values, maximum constraints (perPage=20), and inter-parameter relationships such as required pairing of reservationTime with reservationDate. This goes well beyond the schema basics and fully clarifies each parameter's meaning.

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 tool's purpose: to search for shops on Ekiten that support online reservations, accepting multiple filters. It also explicitly ties the returned shopId to the get_availability tool, distinguishing it from sibling tools like reservation creation or cancellation.

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 provides explicit guidance on when to use the tool, including the requirement that at least one of the listed filter parameters must be specified. It also explains that detailed conditions (menu, staff, smoking) cannot be filtered here and directs users to use get_availability for those, offering clear usage direction.

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

start_loginAInspect

ネット予約のログインを開始する。返されたloginUrlをユーザーに提示し、ブラウザで開いてログインを完了するよう案内すること。このURLは短命かつ一度きりの使い切りであり、他人と共有しないようユーザーに必ず注意喚起すること。ログイン完了後、AIは同じチャット内で予約操作(cancel_reservation等)を再実行してよい。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior5/5

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

Discloses the one-time, short-lived nature of the loginUrl and instructs warning users not to share it, along with the post-login re-execution behavior; no annotations to contradict.

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?

Concise yet comprehensive; front-loads the purpose and then gives necessary user guidance and warnings. A bit lengthy but each sentence carries essential information.

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?

Provides all necessary operational context: the login flow, URL properties, user instructions, and post-login behavior, despite having no annotations or parameters.

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?

Input schema is empty, so there is no parameter information to add; the mention of loginUrl refers to output, so it neither adds nor misses parameter semantics.

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?

States clearly that the tool starts the login process for online reservations, naming the specific action and resource, and distinguishes itself from reservation and logout tools.

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?

Provides concrete instructions for guiding the user through the loginUrl and notes when to retry reservation operations after login, but does not explicitly state when to call this tool instead of alternatives; still fairly clear.

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. Dates show when Glama detected each change.

  1. 7 tool updates
    • First observedcancel_reservation
    • First observedcreate_reservation
    • First observedget_availability
    • First observedget_genres
    • First observedlogout
    • First observedsearch_shops
    • First observedstart_login

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    MCP server for managing event spaces, hotels, and party venues in Saga Prefecture, Japan. Enables searching, creating, updating, and deleting venues, announcements, release notes, and performing administrative tasks via natural language.
    36
    13
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    MCP server for scheduling appointments and managing services for plastic surgery clinics. Supports calendar operations, booking, catalog search, and case studies (before/after) for procedures.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server for Japan's e-Stat (Government Statistics Portal). Search statistical datasets, retrieve data tables, and access metadata from official Japanese government statistics.
    9
    Apache 2.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    An MCP server that scrapes movie theater schedules from eiga.com to provide movie, theater, and showtime data to AI assistants. It enables users to search for screenings and calculate the optimal viewing order for watching multiple movies.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a unique, clearly defined purpose: login, logout, search, genres, availability, create, and cancel. No two tools overlap in functionality, making selection straightforward.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern in snake_case (e.g., search_shops, get_availability, create_reservation). This predictable naming makes the API easy to navigate.

Tool Count5/5

Seven tools neatly cover the necessary operations for an online reservation system without redundancy or bloat. The scope is appropriately focused on the core workflow.

Completeness4/5

The toolkit covers the essential reservation lifecycle: login, search, availability check, create, cancel, and logout. While an update/modify reservation tool is absent, it is not a typical requirement for this type of system, so the coverage is nearly complete.

Resources