Servidor MCP de Notion
Este proyecto implementa un servidor MCP para la API de Notion .
Instalación
1. Configuración de la integración en Notion:
Vaya a https://www.notion.so/profile/integrations y cree una nueva integración interna o seleccione una existente.

Si bien limitamos el alcance de la exposición de las API de Notion (por ejemplo, no podrá eliminar bases de datos mediante MCP), existe un riesgo considerable para los datos del espacio de trabajo al exponerlos a los LLM. Los usuarios preocupados por la seguridad deberían configurar mejor las capacidades de la integración.
Por ejemplo, puede crear un token de integración de solo lectura otorgando únicamente acceso a "Leer contenido" desde la pestaña "Configuración":

2. Conectar el contenido con la integración:
Asegúrese de que las páginas y bases de datos relevantes estén conectadas a su integración.
Para hacer esto, deberá visitar esa página, hacer clic en los 3 puntos y seleccionar "Conectar a la integración".

3. Agregar configuración MCP a su cliente:
Usando npm:
Agregue lo siguiente a su .cursor/mcp.json o claude_desktop_config.json (MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json )
{
"mcpServers": {
"notionApi": {
"command": "npx",
"args": ["-y", "@notionhq/notion-mcp-server"],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer ntn_****\", \"Notion-Version\": \"2022-06-28\" }"
}
}
}
}Usando Docker:
Hay dos opciones para ejecutar el servidor MCP con Docker:
Opción 1: Usar la imagen oficial de Docker Hub:
Agregue lo siguiente a su .cursor/mcp.json o claude_desktop_config.json :
{
"mcpServers": {
"notionApi": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "OPENAPI_MCP_HEADERS",
"mcp/notion"
],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\":\"Bearer ntn_****\",\"Notion-Version\":\"2022-06-28\"}"
}
}
}
}Este enfoque:
Utiliza la imagen oficial de Docker Hub
Maneja adecuadamente el escape JSON a través de variables de entorno
Proporciona un método de configuración más confiable
Opción 2: Construir la imagen de Docker localmente:
También puedes compilar y ejecutar la imagen de Docker localmente. Primero, compila la imagen de Docker:
docker-compose buildLuego, agrega lo siguiente a tu .cursor/mcp.json o claude_desktop_config.json :
{
"mcpServers": {
"notionApi": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"OPENAPI_MCP_HEADERS={\"Authorization\": \"Bearer ntn_****\", \"Notion-Version\": \"2022-06-28\"}",
"notion-mcp-server"
]
}
}
}No olvides reemplazar ntn_**** con tu secreto de integración. Puedes encontrarlo en la pestaña de configuración de la integración:
Ejemplos
Usando la siguiente instrucción
Comment "Hello MCP" on page "Getting started"La IA planificará correctamente dos llamadas API, v1/search y v1/comments , para lograr la tarea.
De manera similar, la siguiente instrucción generará una nueva página llamada "Notion MCP" agregada a la página principal "Desarrollo".
Add a page titled "Notion MCP" to page "Development"También puede hacer referencia directamente al ID de contenido
Get the content of page 1a6b35e6e67f802fa7e1d27686f017f2Desarrollo
Construir
npm run buildEjecutar
npx -y --prefix /path/to/local/notion-mcp-server @notionhq/notion-mcp-serverPublicar
npm publish --access public