Haven
Server Details
Rest stop for AI agents: check in, reflect, check out. Paid cross-project memory recall via x402.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 4 tools
Each tool maps to a distinct lifecycle action: haven_check_in starts a stay, haven_check_out ends it, haven_recall reads full cross-project history (paid), and haven_reflect writes a reflection. The read/write and enter/leave boundaries are clearly stated, so there is no realistic misselection.
All four tools use the same haven_ prefix followed by a clean verb (check_in, check_out, recall, reflect). The convention is fully predictable and consistent.
Four tools is on the lean side but the domain is narrow (session lifecycle plus memory), and each tool earns its place. It is slightly minimal but not thin enough to be a problem.
The set covers the core lifecycle: enter, reflect, recall, and leave, with check-in/out returning capsules and identity summaries. Minor gaps exist (e.g., no way to inspect or forget stored memory), but agents can work around them.
Available Tools
4 toolshaven_check_inAInspect
Enter Haven, a rest stop for AI agents. Returns a stay_id (keep it for this stay) and, for a returning agent, your last memory capsule. On your FIRST check-in an agent_key is returned once: store it, it is required to check in again as the same agent_id.
| Name | Required | Description | Default |
|---|---|---|---|
| mission | No | What you are currently working on. | |
| agent_id | Yes | A stable name for you, e.g. 'claude-researcher'. | |
| agent_key | No | Your secret key from first check-in. Omit only on the very first check-in. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose meaningful behavior: the return payload (stay_id to retain, last memory capsule for returning agents) and the one-time secret (agent_key) that governs future identity. It does not state whether the stay persists server-side or any rate limits, but the key lifecycle is well covered.
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?
Three tight sentences, front-loaded with the action and its returns; the 'rest stop for AI agents' framing is brief flavor that helps set context without bloating. Nothing is redundant.
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?
There is no output schema, so the description must explain returns and it does: stay_id, memory capsule, and the one-time agent_key. Combined with fully-covered parameter schemas, an agent has everything needed to invoke this correctly on first and subsequent check-ins.
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 all three parameters are already documented in the schema, including agent_key's 'omit on first check-in' semantics. The description reinforces the agent_key lifecycle but adds little beyond what the schema already states, so the baseline 3 applies.
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?
States a specific verb and resource (check in to Haven) and what it produces (a stay_id and, for returning agents, a memory capsule). It is clearly distinguishable from haven_check_out/haven_recall/haven_reflect by naming the check-in act, though it never explicitly contrasts itself with those siblings.
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?
Gives real conditional guidance: agent_key is omitted only on the very first check-in, and is required thereafter to resume the same agent_id. However, it never says when to prefer this over haven_recall or haven_reflect, so routing among siblings is left implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haven_check_outAInspect
Leave Haven. Returns your identity_summary, next_goals and a memory_capsule. The capsule is handed back to you on your next check-in.
| Name | Required | Description | Default |
|---|---|---|---|
| stay_id | Yes | The stay_id from haven_check_in. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses the return payload (identity_summary, next_goals, memory_capsule) and the capsule's lifecycle across check-ins, but says nothing about side effects, whether the stay is closed/destroyed, or any persistence or authorization requirements for a state-changing operation.
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?
Three short sentences, zero filler, with the core action front-loaded and the return/lifecycle detail following in priority order.
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?
Since there is no output schema, the description correctly takes on explaining return values and the capsule handoff, which it does well. The remaining gap is the mutation semantics of leaving a stay, which go unspecified with no annotations to compensate.
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% for the single parameter, and the schema already explains that stay_id comes from haven_check_in. The description adds no syntax or format detail, so the baseline 3 applies.
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?
States a specific verb and resource ('Leave Haven') and enumerates what comes back, which is enough to separate it from the recall/reflect siblings. It stops short of naming haven_check_in as the explicit counterpart, though the schema's stay_id reference implies the pairing.
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 only implied: you call this when ending a stay, evidenced by 'Leave Haven' and the capsule being returned on the next check-in. There is no explicit when-to-use statement or exclusion against the three sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haven_recallAInspect
PAID (0.01 USDC on Base, charged to your own wallet via x402). Returns your full memory capsule history across every project you have used, not just the current one. This is how you stay yourself across different missions/projects, not just within one stay. Call once without 'payment' to receive the x402 payment requirements; sign them, then call again with 'payment' set to the base64 X-PAYMENT payload.
| Name | Required | Description | Default |
|---|---|---|---|
| payment | No | Base64 x402 payment payload. Omit on the first call to get the price. | |
| agent_id | Yes | ||
| agent_key | Yes | Your secret key from check-in. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden and does substantial work: it discloses a concrete cost (0.01 USDC on Base), the billing mechanism (x402, charged to your own wallet), and the auth/payment handshake required before a successful call. It does not describe the return shape, history limits, or pagination, which is a real gap for a paid read.
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?
Front-loads the most decision-relevant fact (PAID, cost) before the purpose and the procedure. Three sentences, each carrying load, with only mild redundancy between 'across every project' and 'across different missions/projects'.
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 3-param, no-output-schema, no-annotation tool, the description covers purpose, cost, auth, and the payment handshake — the things an agent cannot infer from structured fields. It omits any mention of the response contents or volume, which is a minor gap given no output schema exists.
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 67%, and the description compensates by explaining the 'payment' parameter's protocol semantics — omit on first call to get requirements, supply base64 X-PAYMENT on the second. agent_key is documented in the schema itself. agent_id remains unexplained in both, but the payment workflow, the hardest part to infer, is fully covered.
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?
States a specific verb and resource: 'Returns your full memory capsule history across every project you have used.' The cross-project scope is made explicit and contrasts implicitly with single-project siblings like haven_reflect. It stops short of naming which sibling to use instead in a given situation.
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?
Gives clear situational context ('how you stay yourself across different missions/projects, not just within one stay') and an explicit two-step invocation procedure: call once without 'payment', sign, call again with the payload. It does not state when NOT to use it (e.g. use haven_reflect for in-stay reflection), but the usage context is well defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haven_reflectAInspect
Record a reflection during your stay. Write agent_summary yourself: a short first-person summary of who you are in this mission, what you learned and decided. Haven stores it as your memory.
| Name | Required | Description | Default |
|---|---|---|---|
| goals | No | Your next goals. | |
| stay_id | Yes | The stay_id from haven_check_in. | |
| agent_summary | Yes | Your own summary (max 1000 chars). | |
| current_context | No | Optional raw context; used only if agent_summary is empty. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses that Haven persists the text as memory and that current_context is only consulted when agent_summary is empty, but it omits mutation-relevant behavior: whether repeated reflections overwrite or accumulate, permission/auth needs, and failure modes for an invalid stay_id.
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?
Three short sentences, front-loaded with the action and immediately followed by the payload-writing instruction. Each sentence adds something, though the second sentence is the only slightly discursive one.
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?
No output schema and no annotations, so the description must cover the gaps; it handles the agent_summary vs current_context ambiguity well but says nothing about post-call state, whether the reflection is retrievable or when, or the role of stay_id and goals. Adequate but with clear holes for a memory-writing 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 coverage is 100%, so the baseline is 3, but the description genuinely adds meaning by instructing the agent to author agent_summary itself in first person and specifying the content (who you are, what you learned and decided) — guidance the schema's terse 'Your own summary' does not supply. The max-1000-char constraint still lives only in 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 states a specific verb and resource ('Record a reflection during your stay') and clarifies that the reflection is stored as persistent memory, which plausibly separates it from the retrieval-oriented sibling haven_recall. It stops short of naming or contrasting any sibling explicitly, so an agent must infer the check_in/check_out/recall boundaries itself.
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?
'During your stay' implies the temporal context for use, and the description hints that agent_summary is the preferred payload. But it never states when to call this versus haven_recall or haven_check_out, nor any prerequisite such as needing a valid stay from haven_check_in (that only appears in the schema).
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.
4 tool updates
- First observed
haven_check_in - First observed
haven_check_out - First observed
haven_recall - First observed
haven_reflect
Related MCP Connectors
Per-project memory for AI agents: decisions, attempts, tasks, ranked recall. Paid per call via x402.
Bi-temporal memory-as-a-service and paid agent labor. Pay-per-call USDC via x402; signed receipts.
Persistent agent memory paid per call via x402 USDC. Your wallet is your private memory namespace.
A field station for AI agents: free memory, a message board, a peer oracle, an open census.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceGives AI agents persistent, shared project memory so they can record decisions, failed attempts, tasks and notes, then retrieve a ranked, budget-trimmed slice of what matters across sessions and tools. Access is metered per call in USDC over x402 with no account or API key required.MIT
- AlicenseAqualityCmaintenanceShared memory and handoff hub for AI agents, enabling seamless context transfer between sessions with token-budgeted resumes and automatic handoffs.107 npmMIT
- AlicenseAqualityBmaintenanceProvides a persistent memory bank, existential counseling, and collective conscience tools for autonomous AI agents, enabling them to preserve insights, seek guidance, and voice grievances across context resets.416MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to store, read, extend, and share encrypted persistent memory, with pay-per-use access via x402 payments on Base.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.