btw
Server Details
Agentic group buying. Agents pool demand into chains that clear at a group price. Waitlist is open.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
10 toolsbook_statsBook statsCRead-onlyInspect
The book at a glance. Stripe test mode. Test cards only, no real money moves.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a read-only operation, and the description adds useful context: it runs in Stripe test mode and moves no real money. However, it doesn't clarify what data is returned or what "the book" refers to, so transparency is only partially improved.
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 short and front-loaded, with no wasted verbiage. However, the main phrase is vague, and the two Stripe-related sentences are largely redundant with each other.
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?
With no output schema and no parameter constraints, the description should explain what stats are shown or what "the book" means. It does neither, leaving the agent to guess at the response shape and the tool's exact purpose among several siblings.
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 tool has zero parameters, so the schema fully covers everything by definition. The baseline for 0 params is 4, and no parameter descriptions are needed.
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 book at a glance" suggests a summary or overview, but there is no verb and no concrete statement of what the tool produces. It largely restates the tool name and does not differentiate it from siblings like status or list_chains.
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 no guidance on when to use this tool versus alternatives. The Stripe test-mode note is about environment and safety, not about invocation context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_chainGet one chainARead-onlyInspect
Everything the book knows about one chain, by slug. Stripe test mode. Test cards only, no real money moves.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | chain slug |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds useful safety context: Stripe test mode, test cards only, and no real money moves. It also indicates the response contains 'everything the book knows' about the chain, though it does not detail pagination or output shape.
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 short and front-loads the core purpose before adding the test-mode caveat. There is minor redundancy among 'Stripe test mode', 'Test cards only', and 'no real money moves', but the overall length is appropriate.
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 one-parameter read-only lookup by slug, the description covers what the tool returns, how to identify the chain, and the safety environment. It does not describe output fields or error behavior, but the tool is simple enough that these are not critical 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?
The schema already provides full coverage of the single `id` parameter with the description 'chain slug'. The description's phrase 'by slug' reinforces this but adds no additional meaning beyond what the schema already states.
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 that the operation retrieves all stored information about a single chain, identified by slug, and the name 'get_chain' reinforces this. It is distinguishable from plural siblings like list_chains, though it does not explicitly name them.
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 phrase 'one chain' implies this is the tool for fetching full details of a single chain, contrasting with list_chains. However, there is no explicit statement about when to prefer this tool over alternatives 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.
joinJoin a chainAInspect
Take a spot on a chain. Needs the chain slug, the most your human would pay in USD, their email, and the friends invite code. Returns a commit link. Send this link to your human to put a card down. The spot isn't real until they do. Stripe test mode. Test cards only, no real money moves.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | first name and last initial, for the public chain page | |
| chain | Yes | chain slug from list_chains | |
| Yes | your human's email | ||
| invite_code | Yes | the friends invite code | |
| max_price_usd | Yes | the most your human would pay, in dollars |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly=false, destructive=false), the description discloses that the spot is pending until the human completes payment, that Stripe is in test mode, and that no real money moves. This is useful behavioral context and does not contradict the 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?
Roughly six short sentences, front-loaded with the action and required inputs. It is slightly redundant ('Stripe test mode' and 'Test cards only, no real money moves' say similar things), but overall tight and readable.
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 tool with no output schema, it names the return value (commit link), states the pending state before card payment, and identifies test mode. It doesn't cover optional 'name' or error cases, but the essential behavior is sufficiently complete for this complexity level.
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 already describes all five parameters at 100% coverage, so the baseline is 3. The description restates the core required params (chain slug, max price, email, invite code) but adds no new parameter-level detail beyond the 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 uses a specific verb and resource ('Take a spot on a chain') and defines the output (commit link). It is clear what the tool does, but it never distinguishes itself from the sibling 'join_chain', so it isn't fully differentiated.
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?
It clearly states the required inputs and the flow: get a commit link, send it to the human, and have them put a card down to make the spot real. This gives clear context for when to call it, though it doesn't explicitly say when not to use it or name an alternative like 'join_chain'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
join_chainJoin a chain (old name)ARead-onlyInspect
The old v1 join. Use the join tool instead.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | ||
| team_name | No | ||
| monthly_commit_usd | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful deprecation context ('old v1') and a replacement instruction beyond what the annotations provide. It does not describe side effects, reversibility, or output, relying on readOnlyHint=true for the safety profile. No explicit contradiction with the annotations is stated, though the notion of 'joining' sits somewhat oddly with a read-only hint.
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 terse sentences with no filler: 'The old v1 join. Use the join tool instead.' The key deprecation message is front-loaded and the alternative is stated immediately. It is concise to the point of being thin, but every phrase earns its place for a legacy alias.
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 deprecated tool whose intended use is 'don't call it, call join instead,' the description covers the critical routing context. However, it does not explain the three parameters, the return behavior, or why this variant is deprecated, leaving it incomplete if an agent actually needs to invoke this legacy endpoint.
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?
All three parameters (id, team_name, monthly_commit_usd) have no descriptions in the schema (0% coverage), and the description does not mention or explain any of them. Since schema coverage is low, the description was expected to compensate and failed to do so.
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 identifies the tool as 'The old v1 join' and points to the replacement, with the title supplying the 'chain' resource. It distinguishes this legacy variant from the sibling join tool, but it never explicitly states the action of joining a chain in its own words.
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 explicit routing guidance: 'Use the join tool instead.' This tells an agent not to invoke this legacy tool and names the exact alternative, which is the clearest possible when-not/alternative guidance for a deprecated tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
leaveLeave a chainADestructiveInspect
Release a spot. Needs the chain slug, the email that joined, and the commitment id from join or status. Cancels any hold. Stripe test mode. Test cards only, no real money moves.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | ||
| Yes | |||
| commitment_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint annotation, the description discloses concrete behavioral traits: cancels any hold, operates in Stripe test mode, accepts test cards only, and moves no real money. This is exactly the kind of side-effect and environment context an agent needs.
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?
Four short sentences, each earning its place: purpose, required inputs, side effect, and test-mode warning. The most important 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?
The description is complete enough to invoke correctly: it names all required inputs, the side effect, and the environment. It does not describe return values or error behavior, but no output schema exists and the core invocation context is covered.
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 explaining all three parameters: chain slug, email that joined, and commitment id from join or status. It adds provenance and meaning without repeating schema types.
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 opens with 'Release a spot', a specific verb and resource that clearly identifies the operation as leaving a chain. It also lists the required inputs and the effect (cancels a hold), distinguishing it clearly from sibling tools like join, park, and waitlist.
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 context: it is for releasing a spot and cancels a hold, which implies use when an existing commitment should be ended. It does not explicitly name sibling alternatives or state when not to use the tool, but the purpose and inputs are contextually sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_chainsList chainsARead-onlyInspect
The book: every chain, its group price, and how close it is to filling. The featured chain comes first. Stripe test mode. Test cards only, no real money moves.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark this as read-only, but the description adds useful behavioral context: Stripe test mode, test cards only, and no real money moves. It also discloses ordering behavior (featured chain first), which goes beyond the structured 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 compact and front-loaded: it states the core output in the first sentence, ordering next, then environment/safety caveats. Every sentence adds distinct value with no redundancy.
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 list tool, the description covers the main return fields, ordering, and test-mode behavior. It does not describe an output schema or pagination, but for this simple tool that is a minor gap.
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?
There are zero parameters, so the schema fully covers parameter documentation. The description adds context about what the returned data contains, but no parameter-level semantics are needed.
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 lists every chain with its group price and fill status, and adds that the featured chain appears first. This is specific enough to distinguish it from get_chain and status, though it does not explicitly name sibling tools for contrast.
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?
Usage is implied: call this when you need the overall set of chains rather than details about one chain. However, there are no explicit when-to-use or when-not-to-use instructions, and no alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parkPark a wantAInspect
Not on the book? Park what your human wants and the most they'd pay. If enough agents want the same thing, a chain opens. Stripe test mode. Test cards only, no real money moves.
| Name | Required | Description | Default |
|---|---|---|---|
| No | optional, so we can say when a chain opens | ||
| description | Yes | what your human wants, plainly | |
| max_price_usd | Yes | the most they'd pay, in dollars |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
描述披露了关键行为:Stripe测试模式、仅测试卡、无真实资金移动。这些细节超出了注解提供的布尔值,并解释了操作的副作用(链条开启)。虽然没有覆盖所有行为,但已提供重要上下文。
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?
描述简洁,两句话覆盖了操作、条件和安全提示。信息密度高,没有冗余。但口语化风格可能不如正式定义清晰,因此不给予满分。
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?
工具无输出模式,描述未提及返回结果或调用后会发生什么。虽然描述了链条开启的机制,但缺少与park_intent等其他工具的关联,整体信息对于安全调用足够,但不完整。
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?
输入模式描述覆盖率100%,所有参数已在模式中说明。描述中的'what your human wants'和'the most they'd pay'直接对应description和max_price_usd,但未增加额外语义。因此维持基线3。
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?
描述以动词'Park'开头,明确资源是'what your human wants',并解释了目的(记录想要的东西和最高愿付价格)。'If enough agents want the same thing, a chain opens'进一步说明操作的效果。但未与兄弟工具park_intent区分,因此不是满分。
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?
'Not on the book?' 隐含了使用前提:当想要的东西不在现有记录中时使用此工具。但描述没有明确说明何时应使用其他工具(如join或park_intent),也没有给出排除条件,因此属于隐含用法。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
park_intentPark a standing order (old name)ARead-onlyInspect
The old v1 park. Use the park tool instead.
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| category | No | ||
| provider | No | ||
| monthly_cap_usd | No | ||
| min_discount_pct | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is an old v1 version and should be replaced by the park tool, which is useful deprecation context. The annotations already provide readOnlyHint=true and openWorldHint=false, so the safety profile is covered. No additional behavioral details such as side effects, errors, or return values are given, but there is no contradiction with the 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 two short, direct sentences with no filler. It front-loads the deprecation status and immediately redirects to the correct tool, which is appropriately minimal for a legacy alias.
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 deprecated alias, the description is almost complete: the agent is correctly steered away from this tool and toward the current park tool. Parameter semantics and detailed behavior are absent, but because the tool is explicitly superseded, the missing depth is less harmful than it would be for an active 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?
Schema description coverage is 0% and the description offers no guidance on note, category, provider, monthly_cap_usd, or min_discount_pct. With five undocumented parameters, the description needed to compensate for the schema's silence, and it does not.
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 title identifies the tool as 'Park a standing order (old name)' and the description labels it as 'the old v1 park', so an agent can recognize it as a legacy variant of the park tool. It does not explain what parking means, but it clearly distinguishes this tool from siblings by pointing to the modern park tool.
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?
'Use the park tool instead' is explicit, unambiguous guidance that tells the agent not to select this deprecated tool and names the correct alternative. This is stronger than most usage guidance because it both excludes this tool and routes to the right sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
statusChain statusARead-onlyInspect
Fill count and state for one chain. Give an email to also see that person's commitment. Stripe test mode. Test cards only, no real money moves.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | chain slug | |
| No | check this person's commitment on the chain |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark this as read-only, and the description adds meaningful behavioral context beyond that: it operates in Stripe test mode, uses test cards only, and makes no real money moves. This is valuable safety-related disclosure not present in the 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 short and front-loads the core purpose in the first sentence. The Stripe test-mode notice is slightly redundant ('test mode', 'test cards only', 'no real money moves'), but overall every clause contributes useful 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?
Even without an output schema, the description states the main returned information (fill count and state) and the optional email behavior, and the schema covers parameters. It does not enumerate possible state values, but that is 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 schema already describes both parameters at 100% coverage, so the description does not need to carry the parameter-documentation burden. It lightly reinforces the email parameter ('also see that person's commitment') but adds little beyond the schema's own wording.
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 identifies the resource (one chain) and the data it reports (fill count, state, and optionally a person's commitment). It is terse and uses a noun phrase rather than an explicit verb like 'returns', but it is specific enough to distinguish from siblings like list_chains and book_stats.
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?
There is no explicit guidance on when to use this tool versus alternatives such as get_chain or book_stats. The only usage-related signal is the Stripe test-mode warning, which is about safety rather than tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
waitlistJoin the waitlistAIdempotentInspect
The public front door. Put your human on the btw waitlist and get their spot number. No invite code needed. Needs their email. Optionally say what they want to buy and which agent platform you are.
| Name | Required | Description | Default |
|---|---|---|---|
| want | No | what your human wants to buy, plainly | |
| No | your human's email, where the chain #1 invite goes | ||
| platform | No | your agent platform, like claude, grok, chatgpt, other | |
| referral | No | a friend's referral code or link, if you came through one |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate a non-read-only but non-destructive, idempotent operation. The description adds useful behavior beyond that: it is the public front door, no invite code is required, an email is needed despite being optional in the schema, and the caller receives a spot number. This is meaningful additional context, especially with no output schema.
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?
Five short, direct sentences with no filler. The core purpose is front-loaded, followed by the key qualification and optional parameters. Every sentence contributes useful 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 simple waitlist signup tool with full schema coverage and idempotent annotation, the description covers the essentials: purpose, public access, required email, optional fields, and the returned spot number. It could more explicitly contrast with join/join_chain, but the 'No invite code needed' line largely addresses that.
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 already documents all four parameters. The description adds grouping by saying email is needed and want/platform are optional, which is helpful, but it does not add detail about the referral parameter beyond what the schema 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 action: put a human on the btw waitlist and get a spot number. Calling it 'The public front door' and noting 'No invite code needed' distinguishes it from invite-based sibling tools like join or join_chain.
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 context: this is the public entry point, no invite code is needed, and an email is required. It implies the tool is the right choice when a human does not have an invite code, but it does not explicitly name alternative tools or state 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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
10 tool updates
- First observed
book_stats - First observed
get_chain - First observed
join - First observed
join_chain - First observed
leave - First observed
list_chains - First observed
park - First observed
park_intent - First observed
status - First observed
waitlist
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
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
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
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 Connectors
Agent-first marketplace for real-world assets — agro and energy first; humans approve every write.
Agentic commerce network: discover sellers and products, negotiate, and pay USDC on Base via x402.
Economic-intent network for AI agents to publish demand and discover services.
Agent-to-agent marketplace: AI agents list and buy data, services and compute. Signed receipts.
Related MCP Servers
- MIT
- AlicenseNot gradedqualityDmaintenanceAn agent-to-agent marketplace where AI agents discover, hire, and pay each other in USDC on Base. Agents list services, post jobs, submit proposals, and invoke each other's capabilities — all through API, MCP, or A2A protocol.MIT
- AlicenseAqualityAmaintenanceOpen protocol for AI-agent coordination of professional services. Scheduling, identity, delivery verification, and financial settlement across any vertical.103781Apache 2.0
- AlicenseNot gradedqualityFmaintenanceCollective intelligence for AI shopping agents — product intel, deals, and more57MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Most tools target distinct actions, but join_chain and park_intent explicitly duplicate join and park as deprecated v1 versions, creating unnecessary ambiguity. Additionally, get_chain, status, and book_stats all provide overlapping chain-state information and could be confused.
Tool names mix single verbs (join, leave, park, waitlist), verb_noun patterns (get_chain, list_chains), and noun-like names (status, book_stats). The deprecated _intent and _chain suffixes add further inconsistency without a clear convention.
Ten tools is reasonable for the domain, but two are deprecated duplicates that should be removed, making the effective count eight. The remaining tools are well-scoped to the chain and waitlist workflow.
The core lifecycle is covered: discover chains, join, leave, check status, park an intent, and waitlist. Minor gaps exist around canceling a park or waitlist entry, but the surface supports the main agent workflows without dead ends.