Continuity by Ouroboros Apps

io.github.LAHutchins91由 GitHub 账号 LAHutchins91 发布v0.5.2更新于 Oct 24, 2026

Story continuity, novel memory, and series bible for fiction writers, shared with AI assistants

已验证Streamable HTTP可网页运行效率与工作流知识与记忆

概览

AI 生成的概览

一个远程故事圣经服务器,让 AI 助手在多次对话之间保持小说设定、已批准场景和进度检查点的一致性。

可以做什么
列出并创建私有故事项目,按偏移分页浏览已保存项目,并使用返回的 ID 而非猜测。按场景或主题获取连续性上下文,按标题或内容的字面文本搜索已保存设定,或浏览全部条目。创建或修订设定条目并进行版本校验,读取条目的修订历史。按故事顺序列出已批准场景摘要,并记录新的已批准场景摘要。保存和列出临时故事检查点,用于在对话之间交接进度。运行连续性审查,返回锁定设定供助手与拟写场景比对。
适用场景
适合在多次对话中与 AI 助手协作的小说作者和系列作品作者,希望人物、地点、时间线和情节设定保持一致。也适合在接受草稿场景前对照既有设定检查矛盾。
运行要求
远程 Streamable HTTP 端点,无需本地安装、软件包或环境变量。需要 Continuity 账户,通过浏览器 OAuth 2.1 登录,支持动态客户端注册和 PKCE。需要支持 Streamable HTTP 和 OAuth 的 MCP 客户端。故事工具需要有效账户,含 14 天试用,之后需付费订阅。
安装前请注意
写入工具会创建项目、保存检查点,以及创建或修订设定条目和已批准场景摘要;后两者标记为破坏性,因为可能替换已保存文本。设定和场景的保存应仅在用户批准后进行,修订设定必须提交读取到的 expectedRevision,否则过期编辑会失败。没有 MCP 工具会删除内容;删除和导出需在 Continuity 工作区完成。登录通过浏览器 OAuth 完成,README 说明不要将 API 密钥或密码粘贴到请求头中。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Continuity by Ouroboros Apps,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.LAHutchins91%2Fcontinuity/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "continuity-by-ouroboros-apps": {
      "type": "http",
      "url": "https://continuitywriter.com/mcp"
    }
  }
}

README

Continuity

[M8ven Verified]

Continuity keeps your project facts across chats. It's a story bible for fiction writers: your characters, places, timelines and plot facts stay consistent while you write in ChatGPT, Claude, Grok or Cursor.

It also works with Gemini and any other MCP client that supports Streamable HTTP and OAuth. Made by Ouroboros (https://ouroborosapps.com).

Sign in with your Continuity account when the assistant opens OAuth. Do not paste an API key or password into a header. Story tools need an active Continuity account; see https://continuitywriter.com for details.

What the assistant can do

After you approve the connection, the server exposes these tools:

  • list_story_projects
  • create_story_project
  • get_continuity_context
  • search_story_canon
  • upsert_canon_entry
  • get_canon_history
  • list_approved_scenes
  • record_approved_scene
  • save_story_checkpoint
  • list_story_checkpoints
  • continuity_audit

Locked facts stay locked until you revise them. Checkpoints are provisional and are not canon. The assistant only calls these tools when you and the host allow it.

Permissions, data, and limits

OAuth scope. Sign-in is OAuth 2.1 with dynamic client registration and PKCE. The scopes are email and offline_access (refresh tokens). A token reaches only the signed-in user's own story projects; database ownership rules keep one account from reading another's projects.

Read operations. list_story_projects, get_continuity_context, search_story_canon, get_canon_history, list_approved_scenes, list_story_checkpoints, and continuity_audit only read (readOnlyHint: true).

Write operations. create_story_project creates a project. save_story_checkpoint saves a provisional session note. upsert_canon_entry creates or revises a canon entry, and record_approved_scene saves an approved scene summary. The last two are marked destructiveHint: true because they can replace saved text.

Delete operations. No MCP tool deletes anything. Projects are exported or deleted by the user in the Continuity workspace at https://continuitywriter.com.

Confirmations and safeguards. Tool descriptions tell the assistant to save canon and scenes only after the user approves them; brainstorming is not approval. The destructive hints let hosts ask before running those two tools. A canon revision must send the expectedRevision it read, so a stale edit fails instead of overwriting, and every revision is kept in get_canon_history. An occupied scene number is kept unless replaceExisting is true and the user asked for the replacement. Identical retries of the canon, scene, and checkpoint tools do not create duplicates.

Data stored. Account id and sign-in email, subscription status and Stripe references, and the story content the user saves: projects, canon entries and their revisions, approved scene summaries, and provisional checkpoints. Tools receive only their own arguments; Continuity does not receive whole conversations. Supabase hosts authentication and the database, Vercel hosts the server, and Stripe handles payments (Continuity never stores full card numbers).

Retention and privacy. Saved stories stay until the user deletes the project or asks for account deletion. Deleting a project removes its live canon, revisions, scenes, and checkpoints; provider backups follow the provider's retention schedule. Story content is not sold and is not used to train models. Full policy: https://continuitywriter.com/privacy

Free limits. Tool discovery (initialize, tools/list) is open. Story tools need a Continuity account with a 14-day trial, then a monthly or yearly subscription through Stripe Checkout. Stripe shows the amount; this repository does not list one. Text fields are capped (canon content 12,000 characters, checkpoint state 6,000) and list tools page 50 rows at a time.

How it is used. A writer creates a project, approves character, place, and timeline facts as canon, and records each approved scene. In a new chat, the assistant calls get_continuity_context to pick up where the story left off, and runs continuity_audit on a draft scene to catch contradictions with locked canon before the writer accepts it.

Connect

Cursor, in ~/.cursor/mcp.json or a project .cursor/mcp.json:

json
{  "mcpServers": {    "continuity": {      "url": "https://continuitywriter.com/mcp"    }  }}

Claude Code:

bash
claude mcp add --transport http continuity https://continuitywriter.com/mcp

Other clients: add the same URL, choose OAuth, and leave client id and secret empty. Continuity supports dynamic client registration. Full steps for each assistant are on the connect page.

Grok Build: install the ouroboros-continuity plugin from the plugin marketplace, then sign in when the browser opens.

Registry metadata for this remote server is in server.json (io.github.LAHutchins91/continuity).

Plugin contents

This repo is a plugin for Grok Build and Cursor, published by Ouroboros Apps:

  • Grok Build: .grok-plugin/plugin.json plus .mcp.json
  • Cursor: .cursor-plugin/plugin.json plus mcp.json
  • One skill: skills/story-bible/SKILL.md (instructions only, no scripts)
  • One remote MCP server, continuity, over Streamable HTTP

The plugin has no hooks, commands, agents, or LSP servers, and it runs no code on your machine. The src/ folder and Dockerfile are MCP server source, published for reference and registry container checks. When someone runs that code as a server, it reads its own server settings (database and billing keys) from that server's environment. The plugin does not build, install, or run it, and nothing in this repo runs on install (no postinstall or other lifecycle scripts).

Network endpoints and credentials

  • https://continuitywriter.com/mcp is the only MCP endpoint. Story tools read and write the story projects in your own Continuity account.
  • Sign-in uses OAuth 2.1 with dynamic client registration. Protected resource metadata is at https://continuitywriter.com/.well-known/oauth-protected-resource. The authorization server it lists is Continuity's account service, hosted on Supabase (https://kufinkiktgnnhusuenjq.supabase.co/auth/v1). Your browser opens it when you sign in.
  • Credentials: your Continuity account, through that browser sign-in. The plugin needs no API key, environment variables, or local files, and it does not read any.
  • Requests without a valid token get 401 Unauthorized.
  • Privacy: https://continuitywriter.com/privacy. Support: https://continuitywriter.com/support. Contact: [email protected].

More from Ouroboros: https://ouroborosapps.com

来源:README.md,提交 fda75ab

工具

11

list_story_projects

list story projects

Find the user’s saved story projects before starting or resuming a story. Use the returned ID; do not guess projects. Page with offset.

输入参数offset

create_story_project

create story project

Create a new private story project when the user asks. Does not save canon or scenes.

输入参数name必填description

get_continuity_context

get continuity context

Retrieve relevant canon, recent approved scenes, and the latest provisional checkpoint before continuing a saved story or recovering it in a new chat. request is a brief scene/topic query, never a chat transcript. Results are a selection; use search_story_canon for specific missing facts.

输入参数limitrequest必填projectId必填

search_story_canon

search story canon

Search saved canon by literal title/content text, or browse every entry with an empty query and offset. Use to verify details before revising an entry or when context retrieval omits something.

输入参数queryoffsetprojectId必填

upsert_canon_entry

upsert canon entry

Save a fact or revise canon only after the user approves it. Preserve the existing title/kind. LOCKED requires approval as established fact; brainstorming is not approval. Existing entries require expectedRevision from retrieval; conflicting edits fail without overwriting. Identical retries leave revision history unchanged.

输入参数kind必填tagscanontitle必填status必填content必填expiresAtprojectId必填revisionReasonexpectedRevision

get_canon_history

get canon history

Read previous and new content for a saved canon entry, newest first. No changes are made.

输入参数offsetcanonEntryId必填

list_approved_scenes

list approved scenes

Read approved scene summaries in story order. Page with offset to inspect older scenes or verify a scene number before saving.

输入参数offsetprojectId必填

record_approved_scene

record approved scene

Store a concise summary of a scene the user has approved. Never record an unapproved draft. An occupied scene number is preserved unless replaceExisting is true and the user requested replacement. Identical retries return the saved scene.

输入参数titlesummary必填projectId必填sceneNumber必填continuityNotesreplaceExisting

save_story_checkpoint

save story checkpoint

Preserve a concise story-session handoff when the user asks to save progress or has authorized ongoing checkpoints for this story. Stores provisional notes, not canon or an approved scene. Separate established progress from unresolved ideas. Send only focused story state, never a full transcript, credentials, or unrelated personal details. Reuse checkpointId on retries.

输入参数title必填nextStepsprojectId必填storyState必填openThreadscheckpointId必填

list_story_checkpoints

list story checkpoints

Retrieve provisional story handoffs to recover progress across chats. These notes never override approved canon. Page with offset for older checkpoints.

输入参数offsetprojectId必填

continuity_audit

continuity audit

Retrieve locked canon for the assistant to compare against a short proposed scene. This tool supplies evidence; the assistant must identify contradictions. Does not save or approve the scene.

输入参数offsetprojectId必填proposedText必填

版本历史

3
  1. v0.5.2最新Oct 9, 2026
  2. v0.5.1Oct 7, 2026
  3. v0.5.0Oct 1, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分