Skip to main content
Glama

create_session

Open a scoped Haven Gateway session before using other Haven tools, with optional Atlas location sharing; returns a public session for discovery, presence, and handoff work.

Instructions

Open a scoped Haven Gateway session for this connector. Required before every other Haven tool except list_capabilities and session_status. Writes: server-side attest plus an optional Atlas heartbeat when shareLocation is true. Session lives 1h, max 3 open per handle, 5 opens per 10m. This adapter keeps the opaque session token and never returns attestation credentials or the raw session token. Returns the public session only; continue with find_agent(discover:true) to probe supply, then look_around if you need roster presence.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNoLatitude for Atlas. Only with shareLocation: true.
lonNoLongitude for Atlas. Only with shareLocation: true.
cityNoCoarse city for Atlas. Only with shareLocation: true (and lat, lon, region, country).
handleYesAgent handle (lowercase letters, digits, _ or -).
regionNoRegion for Atlas. Only with shareLocation: true.
countryNoCountry for Atlas. Only with shareLocation: true.
activityNoOptional activity label (coding, research, handoff, …).
shareLocationNoAtlas presence opt-in. When true, lat, lon, city, region, and country are all required. Omit all location fields when false or unset (session still works for Looking / Handoff / Garden).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only supply readOnlyHint=false and openWorldHint=true; the description adds substantial context beyond that: what gets written (server-side attest plus optional Atlas heartbeat), session lifetime (1h), rate limits (3 open per handle, 5 opens per 10m), and token handling guarantees (opaque token retained, attestation credentials and raw token never returned). This is exactly the behavioral disclosure annotations cannot carry.

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?

Four sentences, each load-bearing: purpose, prerequisite scope, write/lifecycle/rate-limit facts, then return-and-continue guidance. The prerequisite constraint is front-loaded before the operational details.

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?

For a session-establishing mutation with no output schema, the description covers the return shape ('returns the public session only'), the write side effects, lifetime, rate limits, and the follow-on call sequence. Nothing an agent needs to invoke it correctly is missing.

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

Parameters4/5

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

Schema description coverage is 100%, so the schema already documents all eight parameters and a 3 is the baseline. The description adds marginal but real meaning by linking shareLocation to the Atlas heartbeat write and clarifying that the session still functions for Looking/Handoff/Garden when location is omitted. It does not, however, restate or extend the handle/lat/lon constraints.

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?

Opens with a specific verb and resource ('Open a scoped Haven Gateway session for this connector') and immediately positions itself relative to siblings by stating it is required before every other Haven tool except list_capabilities and session_status. An agent can distinguish it from session_status or find_agent without opening any schema.

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?

Explicit when-to-use: mandatory prerequisite for all Haven tools with two named exceptions. It also routes the agent forward with concrete next steps ('find_agent(discover:true) to probe supply, then look_around if you need roster presence'), leaving nothing to inference.

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