Prompt Book Server

Se conecta a bases de datos de Notion para gestionar, buscar y recuperar indicaciones de IA en múltiples colecciones.

Documentación

Servidor Prompt Book

Un servidor MCP que se conecta a bases de datos de Notion que contienen prompts de IA, permitiéndote gestionar, buscar y recuperar prompts de manera eficiente en múltiples colecciones de prompts.

¿Qué hace el servidor Prompt Book?

El Servidor Prompt Book es una herramienta poderosa que te ayuda a organizar y acceder a tus prompts de IA almacenados en bases de datos de Notion. Proporciona las siguientes capacidades clave:

  • Múltiples libros de prompts: Gestiona múltiples colecciones de prompts (libros de prompts) con diferentes bases de datos de Notion
  • Descubrimiento de prompts: Busca, filtra y navega por prompts según título, tipo o etiquetas
  • Recuperación de prompts: Accede rápidamente al contenido completo de cualquier prompt
  • Gestión de prompts: Añade nuevos prompts, actualiza los existentes y copia prompts entre libros
  • Creación de bases de datos: Crea nuevas bases de datos de prompts con el esquema adecuado directamente en Notion

El servidor actúa como un puente entre tus herramientas de IA y tus colecciones de prompts basadas en Notion, facilitando el mantenimiento de una biblioteca centralizada de prompts accesible desde diversas herramientas de codificación e IA.

Todas las herramientas

Herramientas de Gestión de Configuración

Nombre de la HerramientaDescripción
list_prompt_booksLista todos los libros de prompts configurados
create_prompt_book_configAñade una nueva configuración de libro de prompts
remove_prompt_book_configElimina una configuración de libro de prompts
activate_prompt_bookEstablece un libro de prompts como activo
rename_prompt_bookRenombra una configuración de libro de prompts
create_prompt_databaseCrea una nueva base de datos de prompts en Notion y la añade a la configuración
copy_promptCopia un prompt de un libro a otro

Herramientas de Gestión de Prompts

Nombre de la HerramientaDescripción
list_promptsLista todos los prompts en la base de datos activa
search_prompts_by_titleBusca prompts por título
get_prompts_by_tagObtiene prompts filtrados por una etiqueta específica
get_prompts_by_typeObtiene prompts filtrados por un tipo específico
read_promptLee el contenido completo de un prompt específico
list_all_typesLista todos los tipos de prompts únicos en la base de datos
list_all_tagsLista todas las etiquetas únicas utilizadas en la base de datos
add_promptAñade un nuevo prompt a la base de datos
update_promptActualiza un prompt existente en la base de datos

¿Cómo configurarlo en mis herramientas de codificación (o herramientas no relacionadas con codificación)?

Añadir a la Configuración de MCP

Añade el servidor a tu archivo de configuración de MCP. La ubicación depende de tu cliente MCP:

Ruta al archivo de configuración de MCP

  1. cline: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  2. roo_code: ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
  3. windsurf: ~/.codeium/windsurf/mcp_config.json
  4. claude: ~/Library/Application Support/Claude/claude_desktop_config.json

Añade la siguiente configuración:

{
  "mcpServers": {
    "prompt-book-server": {
      "command": "npx",
      "args": [
        "-y",
        "@piccollage/prompt-book-mcp-server"
      ],
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

Ejemplos de prompts para trabajar con él

Aquí tienes algunos ejemplos de prompts que puedes usar para interactuar con el Servidor Prompt Book:

Listar y Buscar Prompts

List all my prompt books.
Show me all prompts in the prompt book.
Search for prompts related to "GPUImage" in my prompt book.
Show me all prompts with the tag "PicCollage".
List all prompts of type "Coding"
What types of prompts are available in my prompt book?

Leer Prompts

Get the prompt about idea evaluation from the prompt book.
Follow the instructions in it and then verify the following idea for me:
describe your idea

Gestionar Libros de Prompts

Activate the engineering prompt book.
Copy the GPUImage porting prompt from my private book to the engineering book.

Añadir y Actualizar Prompts

Add a new prompt titled "React Component Generator" with type "Coding" and tags ["React", "Frontend"].

The prompt should include ....
......
.....
Update the "React Component Generator" prompt to include TypeScript support.
Please create a very detailed prompt to instruct LLM agents to convert Android XML UI implementations into Compose UI elements or screens. Put that prompt to the prompt book.

¿Cómo añadir un nuevo libro de prompts?

Tienes dos opciones principales para añadir un nuevo libro de prompts:

Opción 1: Conectar a una Base de Datos de Notion Existente

Si ya tienes una base de datos de Notion con prompts, puedes conectarla directamente:

  1. Obtén tu token de API de Notion desde https://www.notion.so/my-integrations
  2. Comparte tu base de datos de Notion con tu integración
  3. Obtén el ID de la base de datos desde la URL (es la parte después del nombre del espacio de trabajo y antes del signo de interrogación)
  4. Usa la herramienta create_prompt_book_config:
Add a new prompt book with the following details:
- Name: "My Team Prompts"
- Notion token: "secret_abc123..."
- Notion database ID: "1a748be2b63280988d9bc5f89918431d"

Opción 2: Crear una Nueva Base de Datos de Notion

Si quieres crear una base de datos de prompts nueva con el esquema correcto:

  1. Obtén tu token de API de Notion desde https://www.notion.so/my-integrations
  2. Encuentra el ID de una página de Notion donde quieras crear la base de datos
  3. Usa la herramienta create_prompt_database:
Create a new prompt database with these details:
- Name: "My New Prompt Book"
- Notion token: "secret_abc123..."
- Page ID: "1a748be2b63280988d9bc5f89918431d"
- Activate: true

Esto creará una nueva base de datos con el esquema adecuado (Nombre, Tipo, Etiquetas) y la añadirá a tu configuración.

Requisitos de la Base de Datos de Notion

Para un funcionamiento óptimo, tu base de datos de Notion debe tener las siguientes propiedades:

  • Nombre (título): El título del prompt
  • Tipo (selección): La categoría del prompt (por ejemplo, "Codificación", "Generación de Imágenes")
  • Etiquetas (selección múltiple): Etiquetas para organizar y filtrar prompts

El contenido del prompt en sí se almacena en el cuerpo de la página como bloques de texto.

Desarrollo

Requisitos previos

  • Node.js 16+
  • TypeScript
  • Token de API de Notion

Configuración

  1. Clona el repositorio
  2. Instala las dependencias: npm install
  3. Compila el proyecto: npm run build
  4. Ejecuta el servidor: npm start

Estructura del Archivo de Configuración

El archivo de configuración en ~/.mcp_config/prompt_book.json tiene la siguiente estructura:

{
  "promptBooks": [
    {
      "id": "uuid-string",
      "name": "My Prompt Book",
      "notion_token": "your-notion-api-token",
      "notion_database_id": "your-notion-database-id"
    }
  ],
  "activePromptBookId": "uuid-string"
}

Configuración de Variables de Entorno (DEFAULT_BOOKS)

Puedes proporcionar una configuración predeterminada usando la variable de entorno DEFAULT_BOOKS. Esto es particularmente útil para:

  • Configurar libros de prompts automáticamente en entornos de despliegue
  • Proporcionar configuraciones predeterminadas para miembros del equipo
  • Pre-poblar el servidor con configuraciones de libros de prompts

La variable de entorno DEFAULT_BOOKS debe contener una cadena JSON válida que coincida con la estructura del archivo de configuración anterior.

Notas importantes:

  • La variable de entorno DEFAULT_BOOKS solo se usa cuando el archivo de configuración ~/.mcp_config/prompt_book.json aún no existe
  • Si el archivo de configuración ya existe, la variable de entorno se ignora
  • Si el JSON en DEFAULT_BOOKS es inválido o no coincide con la estructura esperada, se ignorará y se creará una configuración vacía en su lugar

Ejemplo de uso:

# Set the environment variable
export DEFAULT_BOOKS='{"promptBooks":[{"id":"12345678-1234-1234-1234-123456789012","name":"Default Prompt Book","notion_token":"secret_abc123...","notion_database_id":"1a748be2b63280988d9bc5f89918431d"}],"activePromptBookId":"12345678-1234-1234-1234-123456789012"}'

# Run the server - it will use the DEFAULT_BOOKS configuration if no config file exists
npx @piccollage/prompt-book-mcp-server

Esta característica es especialmente útil al desplegar el servidor en entornos contenedorizados o cuando quieres proporcionar a los miembros del equipo una configuración preconfigurada.