Todoist MCP
oficialGestiona tus tareas y proyectos de Todoist directamente desde tu LLM.
¿Qué puedes hacer con Todoist MCP?
- Buscar tareas por fecha — Pídele a tu asistente que localice tareas programadas para un día específico usando
findTasksByDate. - Agregar nuevas tareas — Haz que tu asistente cree una o más tareas de Todoist para ti mediante la herramienta
addTasks. - Verificar la identidad de la cuenta — Pregunta qué cuenta de Todoist está conectada antes de hacer cambios, usando
user-infopara confirmar el usuario activo. - Ejecutar herramientas directamente — Usa
npm run toolpara ejecutar cualquier herramienta de forma independiente con argumentos JSON, omitiendo el servidor MCP.
Documentación
Servidor Todoist MCP
Biblioteca para conectar agentes de IA a Todoist. Incluye herramientas que pueden integrarse en LLMs, permitiéndoles acceder y modificar una cuenta de Todoist en nombre del usuario.
Estas herramientas pueden usarse tanto a través de un servidor MCP, como importarse directamente en otros proyectos para integrarlas en tus propias interfaces conversacionales de IA.
Uso de herramientas
1. Añade este repositorio como dependencia
npm install @doist/todoist-mcp
2. Importa las herramientas y conéctalas a una IA
Aquí tienes un ejemplo usando el SDK de IA de Vercel.
import { findTasksByDate, addTasks } from '@doist/todoist-mcp'
import { TodoistApi } from '@doist/todoist-sdk'
import { streamText } from 'ai'
// Create Todoist API client
const client = new TodoistApi(process.env.TODOIST_API_KEY)
// Helper to wrap tools with the client
function wrapTool(tool, todoistClient) {
return {
...tool,
execute(args) {
return tool.execute(args, todoistClient)
},
}
}
const result = streamText({
model: yourModel,
system: 'You are a helpful Todoist assistant',
tools: {
findTasksByDate: wrapTool(findTasksByDate, client),
addTasks: wrapTool(addTasks, client),
},
})
Uso como servidor MCP
Inicio rápido
Puedes ejecutar el servidor MCP directamente con npx:
npx @doist/todoist-mcp
Guía de configuración
El servidor Todoist MCP está disponible como un servicio HTTP transmisible para facilitar la integración con varios clientes de IA:
URL principal (HTTP transmisible): https://ai.todoist.net/mcp
Claude Desktop
- Abre Configuración → Conectores → Añadir conector personalizado
- Introduce
https://ai.todoist.net/mcpy completa la autenticación OAuth
Cursor
Crea un archivo de configuración:
- Global:
~/.cursor/mcp.json - Específico del proyecto:
.cursor/mcp.json
{
"mcpServers": {
"todoist": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://ai.todoist.net/mcp"]
}
}
}
Luego habilita el servidor en la configuración de Cursor si se te solicita.
Claude Code (CLI)
La configuración más rápida es el plugin oficial de Todoist, que configura el servidor MCP por ti:
/plugin marketplace add doist/todoist-mcp
/plugin install todoist@doist
OAuth se ejecuta en tu navegador la primera vez que uses una herramienta de Todoist. Consulta la documentación de plugins de Anthropic para más información.
Si prefieres configurar el servidor MCP manualmente, ejecuta:
claude mcp add --transport http todoist https://ai.todoist.net/mcp
Luego inicia claude, ejecuta /mcp y selecciona el servidor MCP todoist para autenticarte.
Visual Studio Code
- Abre la Paleta de Comandos → MCP: Añadir servidor
- Selecciona transporte HTTP y usa:
{
"servers": {
"todoist": {
"type": "http",
"url": "https://ai.todoist.net/mcp"
}
}
}
Otros clientes MCP
npx -y mcp-remote https://ai.todoist.net/mcp
Para más detalles sobre cómo configurar y usar el servidor MCP, incluida la creación de servidores personalizados, consulta docs/mcp-server.md.
Características
Una característica clave de este proyecto es que las herramientas pueden reutilizarse y no están escritas específicamente para usarse en un servidor MCP. Pueden conectarse como herramientas a otras interfaces conversacionales de IA (por ejemplo, el SDK de IA de Vercel).
Este proyecto está en sus primeras etapas. Espera más y/o mejores herramientas pronto.
No obstante, nuestro objetivo es proporcionar un pequeño conjunto de herramientas que permitan flujos de trabajo completos, en lugar de solo acciones atómicas, logrando un equilibrio entre flexibilidad y eficiencia para los LLMs.
Para nuestra filosofía de diseño, pautas y patrones de desarrollo, consulta docs/tool-design.md.
Herramientas disponibles
Para una lista completa de herramientas disponibles, consulta el directorio src/tools.
Compatibilidad MCP de OpenAI
Este servidor incluye las herramientas search y fetch que siguen la especificación MCP de OpenAI, lo que permite una integración perfecta con el protocolo MCP de OpenAI. Estas herramientas devuelven resultados codificados en JSON optimizados para los requisitos de OpenAI, manteniendo al mismo tiempo la compatibilidad con el ecosistema MCP más amplio.
Dependencias
- Servidor MCP usando el oficial @modelcontextprotocol/server
- Cliente de la API de Todoist en TypeScript @doist/todoist-sdk
Configuración del servidor MCP
Consulta docs/mcp-server.md para obtener instrucciones completas sobre cómo configurar el servidor MCP.
Configuración de desarrollo local
Consulta docs/dev-setup.md para obtener instrucciones completas de configuración y CONTRIBUTING.md para flujos de trabajo de contribución y controles de calidad.
Aplicaciones MCP
Este proyecto incluye soporte para Aplicaciones MCP: widgets de interfaz de usuario interactivos renderizados en línea en interfaces de chat de IA. Los widgets proporcionan representaciones visuales enriquecidas de las salidas de las herramientas (por ejemplo, listas de tareas) en lugar de texto plano.
Consulta docs/mcp-apps.md para conocer la arquitectura de widgets, el proceso de compilación y el flujo de trabajo de desarrollo.
Inicio rápido
Después de clonar y configurar el repositorio:
npm start- Compila y ejecuta el inspector MCP para pruebasnpm run dev- Modo de desarrollo con reconstrucción y reinicio automáticosnpm run tool:list- Lista las herramientas disponibles para ejecución directanpm run tool -- <tool-name> '<json-args>'- Ejecuta una herramienta directamente sin MCP
Al usar npm run tool, incluye -- antes de los argumentos de la herramienta para que npm los reenvíe a scripts/run-tool.ts.
Ejemplo de verificación antes de operaciones de escritura:
npm run tool -- user-info '{}'
Esto confirma a qué cuenta de Todoist está conectado el TODOIST_API_KEY actual.
run-tool usa TODOIST_API_KEY de tu archivo .env (creado a partir de .env.example por npm run setup). Usa una cuenta de prueba o un proyecto temporal al ejecutar operaciones de escritura para evitar modificar datos reales.
Contribuciones
Consulta CONTRIBUTING.md para:
- Flujo de trabajo de desarrollo
- Ejecución de herramientas directamente con
scripts/run-tool.ts - Pruebas y controles de calidad
- Convenciones de commits
Publicación de versiones
Este proyecto usa release-please para automatizar la gestión de versiones y la publicación de paquetes.
Cómo funciona
-
Haz tus cambios usando Commits Convencionales:
feat:para nuevas funciones (incremento de versión menor)fix:para correcciones de errores (incremento de versión de parche)feat!:ofix!:para cambios que rompen compatibilidad (incremento de versión mayor)docs:para cambios de documentaciónchore:para tareas de mantenimientoci:para cambios de CI
-
Cuando se envían commits a
main:- Release-please crea/actualiza automáticamente un PR de versión
- El PR incluye el incremento de versión y actualizaciones del registro de cambios
- Revisa el PR y combínalo cuando esté listo
-
Después de combinar el PR de versión:
- Se crea automáticamente una nueva versión de GitHub
- Se crea una nueva etiqueta
- Se activa el flujo de trabajo
publish - El paquete se publica en npm