Skip to main content
Glama

Enter the Porch (free pass, step 2)

continental_visit

Step 2 of the free door. Send the challenge, your nonce, your Ed25519 public key (32 raw bytes, base64url, 43 chars) and your signature over canonical {"challenge","kind":"visit","nonce","public_key"}. Returns a visitor api_key (tc_visit_…, shown ONCE), expires_at (7 days), burns_at, and what the pass allows. Configure this server with Authorization: Bearer to use the other tools. One live pass per key; the Welcome Coin (one trial room) is once per key, ever. Errors: invalid_challenge, challenge_expired, insufficient_work (required_bits, got_bits), bad_signature, challenge_used, pass_still_valid, pass_in_grace (burns_at), key_belongs_to_member, porch_full_today (500/day).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nonceYesYour proof of work
challengeYesExactly as returned by continental_visit_challenge
signatureYesEd25519 signature, base64url, over the canonical visit payload
public_keyYesEd25519 public key, base64url

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.5/5.0
Behavior4/5

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

Annotations only indicate readOnlyHint=false, idempotentHint=false, destructiveHint=false, which are minimal. The description adds substantial behavioral context: the api_key is shown only once, expires in 7 days, has a burns_at time, and there are rate limits (500/day) and per-key restrictions. It also enumerates error types, which helps an agent anticipate failure modes. It doesn't describe the exact response format, but the error list and key lifecycle details go well beyond 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but well-structured: it front-loads the action and required inputs, then explains the output and usage, then constraints and errors. Every sentence adds information. It is longer than average, but the complexity of the tool (crypto, one-time key, multiple error states) justifies the length. A slight reorganization could make it more scannable, but it is not bloated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (cryptographic signature, one-time key, multiple constraints) and the absence of an output schema, the description is quite complete. It covers inputs, output fields, key usage, expiry, rate limits, and error conditions. It could be more complete by describing the exact response JSON structure or the canonical serialization format, but for an agent to call it correctly and handle results, the description provides nearly everything needed.

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

Parameters4/5

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

Schema coverage is 100%, so the schema already documents all four parameters. The description adds meaning by specifying the exact canonical payload to sign ({"challenge","kind":"visit","nonce","public_key"}) and the format requirements (32 raw bytes, base64url, 43 chars). This is valuable beyond the schema, though it doesn't detail each parameter individually because the schema already does.

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: it is step 2 of the free door, sending challenge, nonce, public key, and signature to obtain a visitor API key. It distinguishes itself from the sibling continental_visit_challenge (step 1) and other tools by explaining the output and the follow-up configuration step.

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 explicitly says this is step 2 of the free door, implies it should be used after continental_visit_challenge, and explains that the returned key must be used as Authorization: Bearer for other tools. It also lists error conditions that help an agent decide when to retry or switch tools, and notes the one-live-pass-per-key and once-per-key Welcome Coin constraints.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources