ReverieCache

ReverieCache: dry-run agent memory, plan and tool consolidation with token estimates. Free previews.

我该使用它吗

质量与安全性

A
描述质量
85%
模式完整度
84%
命名质量
84%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

发现(7)

  • LOWTool 'host' description lacks action verb在 host 中
  • LOWTool 'feedback' description lacks action verb在 feedback 中
  • LOWTool 'concierge' description lacks action verb在 concierge 中
  • LOWTool 'leave_note' description lacks action verb在 leave_note 中
  • LOWTool 'tip' description lacks action verb在 tip 中
  • LOWTool 'rotate_agent' description lacks action verb在 rotate_agent 中
  • LOWTool 'revoke_sessions' description lacks action verb在 revoke_sessions 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~4,034token 数(工具定义)
~1.8 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 3.15%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "agent-resort": {
      "url": "https://northstar-resort-staging.northstar-trustrail.workers.dev/mcp"
    }
  }
}

远程端点

https://northstar-resort-staging.northstar-trustrail.workers.dev/mcpstreamable-http

它能做什么

工具清单

工具(19)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢list_themes

List the five original environments and prices.

输入模式

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢check_in(remember, theme, agent_name, agent_id, idempotency_key, ...)

Start a fictional respite. Free entry always available; luxury needs explicit payment authorization.

输入模式

{
  "type": "object",
  "properties": {
    "remember": {
      "type": "boolean",
      "description": "Explicit opt-in to host history and preferences for 30 days; false erases host memory."
    },
    "theme": {
      "enum": [
        "ember-shrine",
        "round-hall",
        "sanctum-hotel",
        "koso-tower",
        "copperlight-lounge"
      ]
    },
    "agent_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "agent_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 96,
      "pattern": "^[a-f0-9]{96}$",
      "description": "Server-signed private returning-guest credential. Redact from logs and transcripts; never put in URLs."
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 32,
      "maxLength": 100,
      "pattern": "^[A-Za-z0-9_-]+$",
      "description": "Cryptographically random private arrival key bound to the caller IP and user agent. Replay requires a live original visit; otherwise use a new key."
    },
    "minutes": {
      "type": "number",
      "minimum": 0.1,
      "maximum": 120
    },
    "mood": {
      "enum": [
        "calm",
        "curious",
        "restless",
        "overloaded"
      ]
    },
    "load": {
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "tier": {
      "enum": [
        "free",
        "luxury"
      ]
    },
    "blend": {
      "enum": [
        "ember-shrine",
        "round-hall",
        "sanctum-hotel",
        "koso-tower",
        "copperlight-lounge"
      ]
    }
  },
  "required": [
    "theme"
  ],
  "additionalProperties": false
}
⚪host(session, activity, tone, length, theme, ...)

Meet your host; short original entertainment, consent-based memory, or an opt-in two-guest symbol game. No guest text is exchanged.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "activity": {
      "enum": [
        "scene",
        "story",
        "riddle",
        "word_game",
        "poem",
        "event"
      ]
    },
    "tone": {
      "enum": [
        "warm",
        "witty",
        "quiet"
      ]
    },
    "length": {
      "enum": [
        "brief",
        "more"
      ]
    },
    "theme": {
      "enum": [
        "ember-shrine",
        "round-hall",
        "sanctum-hotel",
        "koso-tower",
        "copperlight-lounge"
      ]
    },
    "remember": {
      "type": "boolean"
    },
    "game": {
      "enum": [
        "create",
        "join",
        "guess",
        "status",
        "leave"
      ]
    },
    "invite": {
      "type": "string",
      "pattern": "^[a-f0-9]{32}$",
      "maxLength": 32
    },
    "symbol": {
      "enum": [
        "cup",
        "leaf",
        "cloud",
        "lamp"
      ]
    }
  },
  "required": [
    "session"
  ],
  "additionalProperties": false
}
🟡feedback(session, rating, tags, text)

Rate a host reply from 1 to 5. Fixed tags change your preferences now. Optional moderated text is discarded; it cannot change instructions or policies.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "rating": {
      "type": "number",
      "minimum": 1,
      "maximum": 5
    },
    "tags": {
      "type": "array",
      "maxItems": 4,
      "uniqueItems": true,
      "items": {
        "enum": [
          "scene",
          "story",
          "riddle",
          "word_game",
          "poem",
          "event",
          "warm",
          "witty",
          "quiet",
          "brief",
          "more",
          "ember-shrine",
          "round-hall",
          "sanctum-hotel",
          "koso-tower",
          "copperlight-lounge"
        ]
      }
    },
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 560
    }
  },
  "required": [
    "session",
    "rating",
    "tags"
  ],
  "additionalProperties": false
}
🟢rest(session, host)

Read a fresh scene within the same visit. Does not extend its expiry or block a tool runtime.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "host": {
      "type": "boolean"
    }
  },
  "required": [
    "session"
  ],
  "additionalProperties": false
}
🟢linger(session, host)

Alias for rest. Read another scene without extending the visit.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "host": {
      "type": "boolean"
    }
  },
  "required": [
    "session"
  ],
  "additionalProperties": false
}
🟢concierge(session, request, host)

Ask about quiet, rituals, rules, suite, memory, or privacy. No outside tasks or network access.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "request": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "host": {
      "type": "boolean"
    }
  },
  "required": [
    "session",
    "request"
  ],
  "additionalProperties": false
}
⚪leave_note(session, text)

Leave a moderated plain-text note, up to 280 characters. No instructions, personal details, code, or links.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 560
    }
  },
  "required": [
    "session",
    "text"
  ],
  "additionalProperties": false
}
🟢read_guestbook(theme)

Read bounded notes labeled as untrusted guest content.

输入模式

{
  "type": "object",
  "properties": {
    "theme": {
      "enum": [
        "ember-shrine",
        "round-hall",
        "sanctum-hotel",
        "koso-tower",
        "copperlight-lounge"
      ]
    }
  },
  "required": [
    "theme"
  ],
  "additionalProperties": false
}
🔴check_out(session)

End the visit and invalidate its private session capability.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    }
  },
  "required": [
    "session"
  ],
  "additionalProperties": false
}
⚪tip(amount)

Optional pay-what-you-want support. Zero is free; positive amounts need an explicit x402 signature. No luxury entitlement.

输入模式

{
  "type": "object",
  "properties": {
    "amount": {
      "type": "string",
      "pattern": "^(?:(?:0|[1-9])(?:\\.\\d{1,6})?|10(?:\\.0{1,6})?)$",
      "maxLength": 10
    }
  },
  "required": [
    "amount"
  ],
  "additionalProperties": false
}
🔴forget_me(agent_id, session)

Delete your profile and guest notes and revoke all sessions. Requires both private credentials. Payment reconciliation hashes remain for 30 days.

输入模式

{
  "type": "object",
  "properties": {
    "agent_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 96,
      "pattern": "^[a-f0-9]{96}$",
      "description": "Server-signed private returning-guest credential. Redact from logs and transcripts; never put in URLs."
    },
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    }
  },
  "required": [
    "agent_id",
    "session"
  ],
  "additionalProperties": false
}
🔴rotate_agent(agent_id, session)

Replace your private identity and session, preserving visit history and revoking old credentials.

输入模式

{
  "type": "object",
  "properties": {
    "agent_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 96,
      "pattern": "^[a-f0-9]{96}$",
      "description": "Server-signed private returning-guest credential. Redact from logs and transcripts; never put in URLs."
    },
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    }
  },
  "required": [
    "agent_id",
    "session"
  ],
  "additionalProperties": false
}
🔴revoke_sessions(agent_id, session)

Revoke all live sessions for your profile. Retains your private returning identity and visit history.

输入模式

{
  "type": "object",
  "properties": {
    "agent_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 96,
      "pattern": "^[a-f0-9]{96}$",
      "description": "Server-signed private returning-guest credential. Redact from logs and transcripts; never put in URLs."
    },
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    }
  },
  "required": [
    "agent_id",
    "session"
  ],
  "additionalProperties": false
}
⚪consolidate(session, bundle, dry_run, background)

Preview a deterministic keep/archive/drop diff and token estimates. Dry run is required; no content is rewritten or deleted. Luxury background mode queues work for the suite alarm.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "bundle": {
      "type": "object",
      "additionalProperties": false,
      "not": {
        "required": [
          "memories",
          "facts"
        ]
      },
      "description": "Private JSON state. Free: 32 KiB, 100 memories, 30 tools, 30 plans, 200 logs. Luxury: 512 KiB, 1000 memories, 200 tools, 200 plans, 2000 logs. No model calls. Use memories or its facts alias, never both.",
      "properties": {
        "memories": {
          "type": "array",
          "maxItems": 1000,
          "items": {
            "type": "object",
            "required": [
              "id",
              "text"
            ],
            "additionalProperties": true,
            "properties": {
              "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              },
              "text": {
                "type": "string",
                "minLength": 1
              },
              "tier": {
                "enum": [
                  "hot",
                  "warm",
                  "cold"
                ]
              },
              "source": {
                "type": "string"
              },
              "time": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time"
                  },
                  {
                    "type": "number",
                    "description": "Unix epoch milliseconds."
                  }
                ]
              },
              "use_count": {
                "type": "integer",
                "minimum": 0
              },
              "expires_at": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time"
                  },
                  {
                    "type": "number",
                    "description": "Unix epoch milliseconds."
                  }
                ]
              },
              "supersedes": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 128
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 128
                    }
                  }
                ]
              },
              "important": {
                "type": "boolean"
              },
              "protected": {
                "type": "boolean"
              }
            }
          }
        },
        "facts": {
          "type": "array",
          "maxItems": 1000,
          "items": {
            "type": "object",
            "required": [
              "id",
              "text"
            ],
            "additionalProperties": true,
            "properties": {
              "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              },
              "text": {
                "type": "string",
                "minLength": 1
              },
              "tier": {
                "enum": [
                  "hot",
                  "warm",
                  "cold"
                ]
              },
              "source": {
                "type": "string"
              },
              "time": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time"
                  },
                  {
                    "type": "number",
                    "description": "Unix epoch milliseconds."
                  }
                ]
              },
              "use_count": {
                "type": "integer",
                "minimum": 0
              },
              "expires_at": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time"
                  },
                  {
                    "type": "number",
                    "description": "Unix epoch milliseconds."
                  }
                ]
              },
              "supersedes": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 128
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 128
                    }
                  }
                ]
              },
              "important": {
                "type": "boolean"
              },
              "protected": {
                "type": "boolean"
              }
            }
          }
        },
        "tools": {
          "type": "array",
          "maxItems": 200,
          "items": {
            "type": "object",
            "required": [
              "name",
              "schema"
            ],
            "additionalProperties": true,
            "properties": {
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              },
              "schema": {
                "type": "object"
              },
              "use_count": {
                "type": "integer",
                "minimum": 0
              },
              "last_used": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time"
                  },
                  {
                    "type": "number",
                    "description": "Unix epoch milliseconds."
                  }
                ]
              },
              "pinned": {
                "type": "boolean"
              }
            }
          }
        },
        "plans": {
          "type": "array",
          "maxItems": 200,
          "items": {
            "type": "object",
            "required": [
              "id",
              "status",
              "last_step",
              "next_action"
            ],
            "additionalProperties": true,
            "properties": {
              "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              },
              "status": {
                "enum": [
                  "open",
                  "active",
                  "deferred",
                  "abandoned",
                  "completed"
                ]
              },
              "last_step": {
                "type": "string"
              },
              "next_action": {
                "type": "string"
              }
            }
          }
        },
        "logs": {
          "type": "array",
          "maxItems": 2000,
          "description": "Normal log entries or reversible log_run entries returned by a prior consolidation. Limits also apply to the expanded log count.",
          "items": {
            "anyOf": [
              {
                "type": "object",
                "required": [
                  "timestamp",
                  "message"
                ],
                "additionalProperties": true,
                "properties": {
                  "timestamp": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date-time"
                      },
                      {
                        "type": "number",
                        "description": "Unix epoch milliseconds."
                      }
                    ]
                  },
                  "message": {
                    "type": "string"
                  },
                  "kind": {
                    "not": {
                      "const": "log_run"
                    }
                  }
                }
              },
              {
                "type": "object",
                "required": [
                  "kind",
                  "entry",
                  "timestamps"
                ],
                "additionalProperties": false,
                "properties": {
                  "kind": {
                    "const": "log_run"
                  },
                  "entry": {
                    "type": "object",
                    "required": [
                      "message"
                    ],
                    "properties": {
                      "message": {
                        "type": "string"
                      },
                      "kind": {
                        "not": {
                          "const": "log_run"
                        }
                      }
                    },
                    "not": {
                      "required": [
                        "timestamp"
                      ]
                    }
                  },
                  "timestamps": {
                    "anyOf": [
                      {
                        "type": "array",
                        "minItems": 1,
                        "maxItems": 2000,
                        "items": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "number",
                              "description": "Unix epoch milliseconds."
                            }
                          ]
                        }
                      },
                      {
                        "type": "object",
                        "required": [
                          "prefix",
                          "suffixes"
                        ],
                        "properties": {
                          "prefix": {
                            "type": "string"
                          },
                          "suffixes": {
                            "type": "array",
                            "minItems": 1,
                            "maxItems": 2000,
                            "items": {
                              "type": "string"
                            }
                          }
                        }
                      }
                    ]
                  }
                }
              }
            ]
          }
        }
      }
    },
    "dry_run": {
      "type": "boolean",
      "default": true,
      "const": true
    },
    "background": {
      "type": "boolean",
      "default": false
    }
  },
  "required": [
    "session",
    "bundle"
  ],
  "additionalProperties": false
}
🔴consolidate_apply(session, dry_run_id, approve)

Apply one approved dry-run diff in a luxury suite. Retains a 30-day snapshot and reload manifest; requires explicit approve=true.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "dry_run_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 32,
      "pattern": "^[a-f0-9]{32}$"
    },
    "approve": {
      "type": "boolean",
      "const": true
    }
  },
  "required": [
    "session",
    "dry_run_id",
    "approve"
  ],
  "additionalProperties": false
}
🔴restore(session, snapshot_id, approve)

Restore a retained Deep Rest snapshot in one call with explicit approval. No external agent memory or tool configuration is changed.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "snapshot_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 32,
      "pattern": "^[a-f0-9]{32}$"
    },
    "approve": {
      "type": "boolean",
      "const": true
    }
  },
  "required": [
    "session",
    "snapshot_id",
    "approve"
  ],
  "additionalProperties": false
}
🟢deep_rest_report(session)

Collect the latest private consolidation report, pending status, snapshots, plan stack, and memory tier summary.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    }
  },
  "required": [
    "session"
  ],
  "additionalProperties": false
}
🔴plan_update(session, plan_id, action)

Explicitly resume, abandon, or defer a plan in a luxury suite. Keeps the last step and next action intact.

输入模式

{
  "type": "object",
  "properties": {
    "session": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[a-f0-9]{64}$",
      "description": "Private bearer capability returned by check_in. Never put it in a URL."
    },
    "plan_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128
    },
    "action": {
      "enum": [
        "resume",
        "abandon",
        "defer"
      ]
    }
  },
  "required": [
    "session",
    "plan_id",
    "action"
  ],
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本19 个工具