mcpField
S
StoryCanon

StoryCanon

リモート
storycanon.softglow.jpメモリ・ナレッジ01 週間前に更新
リポジトリ公式サイト

StoryCanon について

StoryCanonは、小説の設定、本文、キャラクター、世界観、伏線、TODO、現在の物語の状態を作品ごとに整理するMVPのWebアプリです。ChatGPTで長編小説を執筆する人を対象とし、READMEにはアプリ構成とデプロイ方法が記載されていますが、MCP機能の説明はありません。

主な機能

  1. 01作品ごとのストーリー記録
  2. 02設定と本文の保存
  3. 03キャラクターと世界観の整理
  4. 04伏線とTODOの管理
  5. 05現在の物語状態の記録

活用シーン

  1. 01作品内でキャラクターと世界観を整理
  2. 02未解決の筋書きやTODOを追跡
  3. 03ChatGPTでの執筆中に物語の進行状況を保持

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://storycanon.softglow.jp/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

すべてのエンドポイント
Streamable HTTPhttps://storycanon.softglow.jp/mcp認証が必要

ツール

詳細

プロジェクトの README より

StoryCanon

StoryCanon は、ChatGPT で生成・相談した小説の設定、本文、キャラクター、世界観、伏線、TODO、現在の物語状態を作品ごとに保存するための MVP 実装です。

構成

  • apps/web: Next.js + TypeScript + Prisma + PostgreSQL の Web/API アプリ
  • packages/db: Prisma クライアント。Node と Cloudflare Workers で別の生成物が要るため独立したパッケージにしてある(後述)
  • docs: 内部仕様、外部仕様、移行の記録
  • tests/integration: ローカル結合テスト

デプロイ先

本番は Cloudflare Workers + Supabase PostgreSQL(東京) で稼働している。 main への push で .github/workflows/deploy-workers.yml がマイグレーションとデプロイを行う。

2026-08-30 までは AWS(ALB + ECS Fargate + RDS)だった。移行の経緯と当時ハマった点は docs/cloudflare-cutover.md に残してある。AWS 側の資源は撤去済みで、 CDK のブートストラップも消してあるため、AWS へ戻すには cdk bootstrap からやり直しになる。

ローカル開発

npm install
Copy-Item .env.example apps/web/.env
docker compose up -d postgres
npm run prisma:migrate -w apps/web
npm run dev -w apps/web

テスト

npm run test -w apps/web        # ユニット
npm run test:integration        # 結合(外部リソースは作らない)

Prisma クライアント

Prisma 7 は TypeScript しか出力しないため、クライアントは packages/db でコンパイルしてから使う。 Node と workerd では必要な生成物が違うので両方を作り、package.json の conditional export で 振り分けている。呼び出し側は @storycanon/db を import するだけでよい。

生成物は git 管理外で、npm run dev / build / test / lint が必要な方を自動で作る。 tsc を単体で走らせる場合だけ、先に npm run db:node -w apps/web が要る。

Cloudflare へのデプロイ

通常は main への push で CI が行う。手元から出す場合は apps/web で:

npm run deploy:worker

npx opennextjs-cloudflare build を直接叩かないこと。 deploy:worker は scripts/build-worker.mjs 経由でローカルの .env 類を退避してからビルドする。 これを飛ばすと next build がローカルの値をバンドルに焼き込み、NEXTAUTH_SECRET が 開発用の値のまま本番に乗る。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。