Notion

Conecta asistentes de IA a tu espacio de trabajo de Notion, permitiéndote buscar, crear y gestionar contenido usando lenguaje natural.

Documentación

🚀 Notion MCP Server

Un potente servidor de Model Context Protocol (MCP) que conecta asistentes de IA como Claude a tu espacio de trabajo de Notion. ¡Busca, crea y gestiona tu contenido de Notion sin problemas a través de conversaciones en lenguaje natural!

✨ Qué hace esto

¡Transforma tu asistente de IA en un potente de Notion! Con este servidor MCP, puedes:

  • 🔍 Buscar en todas tus páginas y bases de datos de Notion
  • 📝 Crear nuevas páginas, bases de datos y contenido
  • ✏️ Actualizar páginas y propiedades existentes
  • 📊 Consultar bases de datos con filtros complejos
  • 🔗 Gestionar todo tu espacio de trabajo de Notion a través de la conversación

🎯 Inicio rápido

1. Requisitos previos

  • Python 3.8 o superior
  • Un espacio de trabajo de Notion
  • Cuenta de Nango (para autenticación OAuth)
  • Aplicación de escritorio de Claude (para integración con IA)

2. Instalación

# Clone or download the files
git clone <your-repo-url>
cd notion-mcp-server

# Install dependencies
uv sync

3. Configuración de Notion

  1. Crea una integración de Notion:

    • Ve a https://www.notion.so/my-integrations
    • Haz clic en "Nueva integración"
    • Ponle un nombre (por ejemplo, "Integración MCP de Claude")
    • Selecciona tu espacio de trabajo
    • Configura las capacidades:
      • ✅ Leer contenido
      • ✅ Insertar contenido
      • ✅ Actualizar contenido
    • Guarda y copia tu token de integración
  2. Comparte páginas con la integración:

    • Abre cualquier página de Notion a la que quieras acceder
    • Haz clic en "Compartir" → "Invitar"
    • Selecciona tu integración
    • Repite para todas las páginas/bases de datos que quieras usar

4. Configuración de Nango (OAuth)

  1. Crea una cuenta de Nango: https://nango.dev
  2. Agrega la integración de Notion en tu panel de Nango
  3. Configura OAuth con las credenciales de tu integración de Notion
  4. Obtén tus credenciales de Nango (URL base, clave secreta, ID de conexión)

5. Configuración del entorno

Crea un archivo .env con tus credenciales:

# Nango OAuth Configuration
NANGO_BASE_URL=https://api.nango.dev
NANGO_SECRET_KEY=your_nango_secret_key_here
NANGO_CONNECTION_ID=your_connection_id_here
NANGO_INTEGRATION_ID=notion

# Optional: Direct Notion Token (if not using Nango)
# NOTION_TOKEN=your_direct_notion_token_here

6. Configuración de Claude Desktop

Agrega esto a tu archivo de configuración de Claude Desktop:

En macOS: ~/Library/Application Support/Claude/claude_desktop_config.json En Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "notion": {
      "command": "uvx",
      "args": ["git+https://github.com/Shameerpc5029/notion-mcp.git"],
      "env": {
        "NANGO_BASE_URL": "https://api.nango.dev",
        "NANGO_SECRET_KEY": "your_nango_secret_key",
        "NANGO_CONNECTION_ID": "your_connection_id", 
        "NANGO_INTEGRATION_ID": "notion"
      }
    }
  }
}

7. Prueba la conexión

# Test the server directly
python notion-mcp-server.py

# Or restart Claude Desktop and try asking:
# "Search my Notion for meeting notes"
# "Create a new task in my project database"

🛠️ Herramientas disponibles

HerramientaDescripciónEjemplo de uso
notion_searchBuscar en todo el contenido"Encuentra páginas sobre planificación de proyectos"
notion_get_databaseObtener información de la base de datos"Muéstrame la estructura de mi base de datos de tareas"
notion_query_databaseConsultar con filtros"Muestra tareas incompletas para esta semana"
notion_create_databaseCrear nuevas bases de datos"Crea una base de datos CRM con contactos"
notion_get_pageObtener detalles de la página"Muéstrame el contenido de mis notas de reunión"
notion_create_pageCrear nuevas páginas"Agrega una nueva tarea a mi base de datos de proyectos"
notion_update_pageActualizar páginas existentes"Marca esta tarea como completada"
notion_get_block_childrenObtener contenido de la página"Lee el contenido de esta página"
notion_append_blocksAgregar contenido a páginas"Agrega notas de reunión a esta página"
notion_get_current_userObtener información de la integración"Verifica el estado de mi conexión con Notion"

💬 Ejemplos de conversaciones con Claude

Una vez configurado, puedes tener conversaciones naturales como:

Gestión de tareas

You: "Show me all my incomplete tasks"
Claude: [Queries your tasks database and shows open items]

You: "Create a new task called 'Review MCP integration' due next Friday"
Claude: [Creates the task with proper due date]

You: "Mark the first task as completed"
Claude: [Updates the task status to Done]

Creación de contenido

You: "Create a meeting notes page for today's standup"
Claude: [Creates a new page with meeting template]

You: "Add action items from our discussion to that page"
Claude: [Appends bullet points with the action items]

Investigación y organización

You: "Search for all pages mentioning 'API documentation'"
Claude: [Finds and lists relevant pages]

You: "Create a new database to track our API endpoints"
Claude: [Creates a structured database with relevant properties]

🔧 Solución de problemas

Problemas comunes

"Error de autenticación"

  • Verifica que tu archivo .env tenga las credenciales correctas de Nango
  • Confirma que tu integración de Nango esté activa
  • Asegúrate de que tu integración de Notion tenga las capacidades adecuadas

Errores de "Página no encontrada"

  • Asegúrate de haber compartido la página/base de datos con tu integración
  • Verifica que el ID de la página/base de datos sea correcto
  • Confirma que la integración tenga acceso de lectura

Claude no puede encontrar el servidor

  • Verifica que la ruta absoluta en claude_desktop_config.json sea correcta
  • Asegúrate de que Python esté en tu PATH del sistema
  • Prueba ejecutar el servidor manualmente primero

"No se encontró token de acceso"

  • Verifica que la conexión de Nango esté funcionando
  • Comprueba que tu NANGO_CONNECTION_ID coincida con tu conexión real
  • Intenta actualizar tu integración de Nango

Modo de depuración

Ejecuta con registro detallado:

python notion-mcp-server.py --debug

Pruebas manuales

Prueba funciones individuales:

from notion_mcp_server import NotionClient

client = NotionClient()
user = client.get_current_user()
print(f"Connected as: {user.get('name')}")

🔒 Notas de seguridad

  • Nunca subas tu archivo .env al control de versiones
  • Mantén tu clave secreta de Nango segura
  • Solo comparte páginas de Notion que la integración necesite acceder
  • Revisa regularmente el acceso de tu integración en la configuración de Notion

📁 Estructura de archivos

notion-mcp/
├── main.py    # Main MCP server
├── pyproject.toml        # Python dependencies  
├── .env.example
├── .env                   # Your credentials (don't commit!)
├── README.md              # This file

🆘 Obtener ayuda

  1. Revisa los registros - Busca mensajes de error en Claude Desktop o en la terminal
  2. Verifica los permisos - Asegúrate de que tu integración pueda acceder a las páginas
  3. Prueba manualmente - Ejecuta el servidor directamente para aislar problemas
  4. Revisa el estado de Notion - A veces la API de Notion tiene interrupciones

🎉 ¿Qué sigue?

Una vez que estés en funcionamiento:

  • Prueba crear consultas complejas de bases de datos
  • Configura flujos de trabajo automatizados de creación de contenido
  • Usa Claude para ayudar a organizar y reestructurar tu espacio de trabajo de Notion
  • Explora opciones avanzadas de filtrado y ordenamiento

📄 Licencia

Este proyecto es de código abierto. ¡Siéntete libre de modificarlo y adaptarlo a tus necesidades!


¡Disfruta de Notion con Claude! 🎊

Hecho con ❤️ para los entusiastas de la productividad impulsada por IA