Notion
Se integra con la API de Notion para gestionar una lista de tareas personales.
GitHub
31
Prueba este MCPPatrocinadoDocumentación
notion-mcp
Un servidor simple del Protocolo de Contexto de Modelo (MCP) que se integra con la API de Notion para gestionar mi lista de tareas personal.
Demostración

Guía Visual
Consulta 1 de Notion MCP

Consulta 2 de Notion MCP

Consulta 3 de Notion MCP

Requisitos previos
- Python 3.11 o superior
- Una cuenta de Notion con acceso a la API
- Un token de integración de Notion
- Una página de Notion donde quieras gestionar tu lista de tareas
- Cliente de Claude Desktop
Instalación
Instalación mediante Smithery
Para instalar Notion MCP para Claude Desktop automáticamente mediante Smithery:
npx -y @smithery/cli install @Badhansen/notion-mcp --client claude
- Clona el repositorio:
git clone https://github.com/Badhansen/notion-mcp.git
cd notion-mcp
- Configura el entorno de Python:
uv venv
source .venv/bin/activate
uv pip install -e .
- Crea una integración de Notion:
- Ve a https://www.notion.so/my-integrations
- Crea una nueva integración
- Copia la clave de API
- Comparte tu base de datos/página con la integración:
- Abre tu espacio de trabajo de Notion con una base de datos/tabla presente o una página.
- Haz clic en el menú "..." → "Añadir conexiones"
- Selecciona tu integración (búscala por nombre)
Configuración
- Crea el archivo
.env:
cp .env.example .env
- Configura las credenciales de Notion en
.env:
NOTION_TOKEN=<your-notion-api-token>
PAGE_ID=<your-notion-page-id>
NOTION_VERSION="2022-06-28"
NOTION_BASE_URL="https://api.notion.com/v1"
- Para usarlo con Claude Desktop como se pretende, debes ajustar tu archivo
claude_desktop_config.json. Ve aClaude Desktop -> Settings -> Developer -> Edit Config. Ahora añade la configuración del servidorNotion.
{
"mcpServers": {
"notion-mcp": {
"command": "uv",
"args": [
"--directory",
"/Users/username/Projects/Python/notion-mcp/src" /* Path to your project */,
"run",
"server.py"
]
}
}
}
Desarrollo
Estructura del proyecto:
notion-mcp/
├── docs/
├── src/
│ └── server.py
├── .env
├── .python-version
├── README.md
├── pyproject.toml
└── uv.lock
Funciones de soporte
Mostrar tareas
Para mostrar todas las tareas de tu espacio de trabajo de Notion, usa la función show_all_todos:
{
"name": "show_all_todos",
"arguments": {}
}
Añadir tarea
Para añadir una nueva tarea a tu espacio de trabajo de Notion, usa la función add_todo:
{
"name": "add_todo",
"arguments": {
"task": "Your task description"
}
}
Actualizar tarea
Para actualizar una tarea existente en tu espacio de trabajo de Notion, usa la función complete_todo:
{
"name": "complete_todo",
"arguments": {
"task_id": "your-task-id"
}
}
Contribuciones
- Haz un fork del repositorio
- Crea una rama de características
- Envía una solicitud de extracción (pull request)
Licencia
Licencia MIT. Consulta el archivo LICENSE para más detalles.