Dialogoi
Un servidor MCP diseñado para asistir en la escritura de novelas, configurable mediante archivos de proyecto JSON.
GitHub
3
Prueba este MCPPatrocinadoDocumentación
Dialogoi - Servidor MCP de Soporte para Escritura de Novelas
Servidor MCP (Model Context Protocol) con RAG integrado para apoyar la escritura de novelas.
Características
- Búsqueda RAG: Búsqueda por similitud semántica con Qdrant + multilingual-e5-small
- Búsqueda de texto completo: Búsqueda rápida de texto con soporte de expresiones regulares
- Búsqueda por tipo de archivo: Búsqueda que distingue entre archivos de configuración y archivos de contenido
- Monitoreo en tiempo real: Actualización automática del índice al modificar archivos
- Integración con Claude Desktop: Integración completa mediante el protocolo MCP
Instalación
Requisitos previos
- Node.js 20.0.0 o superior
- Docker (si se utiliza la función de búsqueda RAG)
Configuración
git clone https://github.com/cedretaber/dialogoi
cd dialogoi
npm install
npm run build
Uso
1. Preparación del proyecto de novela
novels/
├── my_novel/
│ ├── novel.json # プロジェクト設定
│ ├── settings/ # 設定ファイル
│ │ ├── characters.md
│ │ └── world.md
│ └── contents/ # 本文ファイル
│ ├── chapter1.md
│ └── chapter2.md
Ejemplo de novel.json:
{
"title": "私の小説",
"author": "作者名",
"description": "小説の説明",
"settingsDirectories": ["settings"],
"contentDirectories": ["contents"],
"instructionFiles": ["DIALOGOI.md"]
}
2. Integración con Claude Desktop
Agregar a claude_desktop_config.json:
{
"mcpServers": {
"dialogoi": {
"command": "node",
"args": ["/path/to/dialogoi/dist/index.js", "--project-root", "/path/to/novels"],
"cwd": "/path/to/dialogoi"
}
}
}
Ubicación del archivo de configuración:
- Windows:
%APPDATA%\\Claude\\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
3. Argumentos principales de línea de comandos
node dist/index.js [オプション]
--project-root <PATH>: Directorio raíz del proyecto de novela--qdrant-url <URL>: URL del servidor Qdrant (si no se configura, Docker se inicia automáticamente)--docker-enabled <true|false>: Habilitar/deshabilitar el inicio automático de Docker
API MCP
Gestión de proyectos
list_novel_projects: Obtener la lista de proyectosget_novel_settings/content/instructions: Obtener el contenido de un archivoadd_novel_setting/content: Crear un nuevo archivo
Funciones de búsqueda
search_novel_text: Búsqueda de texto integrada (con soporte de expresiones regulares)search_rag: Búsqueda RAG (búsqueda por similitud semántica)
Ambas búsquedas permiten filtrar mediante el parámetro fileType:
content: Solo archivos de contenidosettings: Solo archivos de configuraciónboth: Ambos (predeterminado)
Características de la búsqueda RAG
- multilingual-e5-small: Soporte multilingüe mediante vectores de 384 dimensiones
- Qdrant: Motor de búsqueda vectorial de alta velocidad
- Prefiltrado: Filtrado rápido en el lado de Qdrant
- Fragmentación inteligente: Preservación del contexto con superposición del 20%
- Repliegue automático: Guía de errores detallada cuando Qdrant no está disponible
Desarrollo
Comandos básicos
npm run dev # 開発モード
npm run build # ビルド
npm test # ユニットテスト
npm run test:integration # 統合テスト
npm run lint # ESLint
npm run typecheck # TypeScript型チェック
Arquitectura
- Patrón de repositorio: Abstracción de la capa de acceso a datos
- Patrón de servicio: Capa de lógica de negocio
- Patrón de backend: Abstracción del motor de búsqueda
- Inyección de dependencias: Basada en constructor
Licencia
Licencia MIT