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 分