Dialogoi
An MCP server designed to assist with novel writing, configurable via JSON project files.
Dialogoi - Novel Writing Support MCP Server
小説執筆を支援するRAG搭載MCP(Model Context Protocol)サーバーです。
特徴
- RAG検索: Qdrant + multilingual-e5-small による意味的類似度検索
- 全文検索: 正規表現対応の高速テキスト検索
- ファイルタイプ別検索: 設定ファイル・本文ファイルを区別した検索
- リアルタイム監視: ファイル変更時の自動インデックス更新
- Claude Desktop統合: MCPプロトコルによる完全統合
インストール
前提条件
- Node.js 20.0.0以上
- Docker(RAG検索機能を使用する場合)
セットアップ
git clone https://github.com/cedretaber/dialogoi
cd dialogoi
npm install
npm run build
使用方法
1. 小説プロジェクトの準備
novels/
├── my_novel/
│ ├── novel.json # プロジェクト設定
│ ├── settings/ # 設定ファイル
│ │ ├── characters.md
│ │ └── world.md
│ └── contents/ # 本文ファイル
│ ├── chapter1.md
│ └── chapter2.md
novel.json例:
{
"title": "私の小説",
"author": "作者名",
"description": "小説の説明",
"settingsDirectories": ["settings"],
"contentDirectories": ["contents"],
"instructionFiles": ["DIALOGOI.md"]
}
2. Claude Desktop連携
claude_desktop_config.jsonに追加:
{
"mcpServers": {
"dialogoi": {
"command": "node",
"args": ["/path/to/dialogoi/dist/index.js", "--project-root", "/path/to/novels"],
"cwd": "/path/to/dialogoi"
}
}
}
設定ファイルの場所:
- Windows:
%APPDATA%\\Claude\\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
3. 主要なコマンドライン引数
node dist/index.js [オプション]
--project-root <PATH>: 小説プロジェクトのルートディレクトリ--qdrant-url <URL>: QdrantサーバーURL(未設定時はDocker自動起動)--docker-enabled <true|false>: Docker自動起動の有効/無効
MCP API
プロジェクト管理
list_novel_projects: プロジェクト一覧を取得get_novel_settings/content/instructions: ファイル内容を取得add_novel_setting/content: 新規ファイル作成
検索機能
search_novel_text: 統合テキスト検索(正規表現対応)search_rag: RAG検索(意味的類似度検索)
両方の検索で fileType パラメータによる絞り込みが可能:
content: 本文ファイルのみsettings: 設定ファイルのみboth: 両方(デフォルト)
RAG検索の特徴
- multilingual-e5-small: 384次元ベクトルによる多言語対応
- Qdrant: 高速ベクトル検索エンジン
- 事前フィルタリング: Qdrant側での高速フィルタリング
- スマートチャンキング: 20%オーバーラップによる文脈保持
- 自動フォールバック: Qdrant利用不可時の詳細なエラーガイダンス
開発
基本コマンド
npm run dev # 開発モード
npm run build # ビルド
npm test # ユニットテスト
npm run test:integration # 統合テスト
npm run lint # ESLint
npm run typecheck # TypeScript型チェック
アーキテクチャ
- Repository Pattern: データアクセス層の抽象化
- Service Pattern: ビジネスロジック層
- Backend Pattern: 検索エンジン抽象化
- 依存性注入: コンストラクタベース
ライセンス
MIT License
İlgili Sunucular
Google Workspace
Interact with Google Workspace services like Gmail and Google Calendar.
SuperLocalMemory V2
Universal, local-first persistent memory for AI assistants. SQLite-based knowledge graph with zero cloud dependencies. Works with 17+ tools (Claude, Cursor, Windsurf, VS Code, etc.). 100% free forever.
Jira Insights MCP
Manage Jira Service Management (JSM) asset schemas using the Jira Insights API.
PaKi Curator
MCP server for César Yagüe's Visual Medicine art catalog — 300 contemplative moving art works, 13 collections. Search, browse, get recommendations for spaces.
LivePilot
AI copilot for Ableton Live 12 — 91 MCP tools for real-time music production, sound design, and mixing
Canvas MCP Server
An MCP server for interacting with the Canvas LMS API.
Make
Turn your Make scenarios into callable tools for AI assistants.
Canvas Assignment Assistant
Programmatically interact with Canvas/Instructure courses and assignments.
TaskFlow
An MCP server for integrating task management capabilities into Claude Desktop.
Planka
Interact with Planka, a Trello-like kanban board, to manage projects, boards, and cards. Requires Planka server URL and credentials.