{"_id":"@angdrew/todoist-mcp-server","_rev":"2-2a76772166b9817b2d9a41d48a035072","name":"@angdrew/todoist-mcp-server","dist-tags":{"latest":"1.0.9"},"versions":{"1.0.8":{"name":"@angdrew/todoist-mcp-server","version":"1.0.8","keywords":["mcp","model-context-protocol","todoist","api","server","typescript"],"author":{"name":"AngDrew","email":"andrewanggada@gmail.com"},"license":"MIT","_id":"@angdrew/todoist-mcp-server@1.0.8","maintainers":[{"name":"angdrew","email":"andrewanggada@gmail.com"}],"homepage":"https://github.com/AngDrew/todoist-mcp#readme","bugs":{"url":"https://github.com/AngDrew/todoist-mcp/issues"},"bin":{"todoist-mcp-server":"build/index.js"},"dist":{"shasum":"073a10b68fabce8add8870563ff85c9376a4f2e5","tarball":"https://registry.npmjs.org/@angdrew/todoist-mcp-server/-/todoist-mcp-server-1.0.8.tgz","fileCount":12,"integrity":"sha512-0xJBfT9xzrsvszocJjqvTn6maFnfer8hWBzAl99xYtimvCNO0pAvIAezpW0f05o1OLDTcPg528eevb4UsO35Rg==","signatures":[{"sig":"MEUCIQDvYdOoFOjlF+EhekWy5/MDB6iW0P/gJ7btxHox+fHe5QIgF+ajs2wbVuLbvUHEp3yIeU4tqZq6WYe92dt3y/OxN8A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82122},"main":"build/index.js","type":"module","types":"./build/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"2aa3963779f9ccbc99debef30aae2435c28ac5c2","scripts":{"dev":"npm run build && npm run start","build":"tsc","start":"node build/index.js","watch":"tsc --watch","prepare":"npm run build"},"_npmUser":{"name":"angdrew","email":"andrewanggada@gmail.com"},"repository":{"url":"git+https://github.com/AngDrew/todoist-mcp.git","type":"git"},"_npmVersion":"11.0.0","description":"Unofficial Model Context Protocol server for Todoist API with CRUD operations for Tasks and Projects","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"^3.22.4","@modelcontextprotocol/sdk":"^1.0.0","@doist/todoist-api-typescript":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/todoist-mcp-server_1.0.8_1752218387386_0.6311363629616431","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"@angdrew/todoist-mcp-server","version":"1.0.9","description":"Unofficial Model Context Protocol server for Todoist API with CRUD operations for Tasks and Projects","main":"build/index.js","type":"module","scripts":{"build":"tsc","watch":"tsc --watch","start":"node build/index.js","dev":"npm run build && npm run start","prepare":"npm run build"},"bin":{"todoist-mcp-server":"build/index.js"},"keywords":["mcp","model-context-protocol","todoist","api","server","typescript"],"author":{"name":"AngDrew","email":"andrewanggada@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/AngDrew/todoist-mcp.git"},"homepage":"https://github.com/AngDrew/todoist-mcp#readme","bugs":{"url":"https://github.com/AngDrew/todoist-mcp/issues"},"license":"MIT","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0","@doist/todoist-api-typescript":"^3.0.0","zod":"^3.22.4"},"devDependencies":{"@types/node":"^20.0.0","typescript":"^5.0.0"},"engines":{"node":">=18.0.0"},"_id":"@angdrew/todoist-mcp-server@1.0.9","gitHead":"9df548d25e00c6999cef097ab42e3237cfaf0634","types":"./build/index.d.ts","_nodeVersion":"22.14.0","_npmVersion":"11.0.0","dist":{"integrity":"sha512-dYlpYMLOJ38KDOHgaSI3a/Xo5K0XcGGHIErClSB769d5aWW2haIyXvGBeUYa0w85qwOxUADQJMPiVK4P2eEXdw==","shasum":"9064775ab4b24493add61afbb929ec1ab9abf658","tarball":"https://registry.npmjs.org/@angdrew/todoist-mcp-server/-/todoist-mcp-server-1.0.9.tgz","fileCount":12,"unpackedSize":81895,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCE6lpXTSh2ljD1qb8VqfHv/eHnj195fAfTlpnjwWSB9gIhAMgxvW3oXPMsIlrY1fWzjp3PcljbHvFZnBNeFBSx+LXZ"}]},"_npmUser":{"name":"angdrew","email":"andrewanggada@gmail.com"},"directories":{},"maintainers":[{"name":"angdrew","email":"andrewanggada@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/todoist-mcp-server_1.0.9_1752218630572_0.962440156043679"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-11T07:19:47.244Z","modified":"2025-07-11T07:23:50.921Z","1.0.8":"2025-07-11T07:19:47.563Z","1.0.9":"2025-07-11T07:23:50.738Z"},"bugs":{"url":"https://github.com/AngDrew/todoist-mcp/issues"},"author":{"name":"AngDrew","email":"andrewanggada@gmail.com"},"license":"MIT","homepage":"https://github.com/AngDrew/todoist-mcp#readme","keywords":["mcp","model-context-protocol","todoist","api","server","typescript"],"repository":{"type":"git","url":"git+https://github.com/AngDrew/todoist-mcp.git"},"description":"Unofficial Model Context Protocol server for Todoist API with CRUD operations for Tasks and Projects","maintainers":[{"name":"angdrew","email":"andrewanggada@gmail.com"}],"readme":"# Todoist MCP Server (TypeScript)\n\nA Model Context Protocol (MCP) server for interacting with the Todoist API. This server provides CRUD operations for both Tasks and Projects through a standardized MCP interface, built with TypeScript and the official MCP SDK.\n\n## Features\n\n### Project Operations\n- ✅ Create new projects\n- ✅ Get project details\n- ✅ List all projects\n- ✅ Update project properties\n- ✅ Delete projects\n\n### Task Operations\n- ✅ Create new tasks\n- ✅ Get task details\n- ✅ List tasks with filtering\n- ✅ Update task properties\n- ✅ Complete tasks\n- ✅ Reopen completed tasks\n- ✅ Delete tasks\n\n## Setup\n\n### Prerequisites\n- Node.js 18+ \n- npm or yarn\n- Todoist API token\n\n### Installation\n\n1. Clone or download the server code\n2. Install dependencies:\n   ```bash\n   npm install\n   ```\n\n3. Get your Todoist API token:\n   - Go to [Todoist Integrations](https://todoist.com/prefs/integrations)\n   - Copy your API token\n\n4. Set the environment variable:\n   ```bash\n   export TODOIST_API_TOKEN=your_token_here\n   ```\n\n### Building and Running\n\n```bash\n# Build the TypeScript code\nnpm run build\n\n# Run the server\nnpm start\n\n# Or build and run in one command\nnpm run dev\n\n# For development with auto-rebuild\nnpm run watch\n```\n\n## Configuration for Claude Desktop\n\nAdd the following to your Claude Desktop configuration file:\n\n**For macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`\n**For Windows:** `%APPDATA%\\\\Claude\\\\claude_desktop_config.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"todoist\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@angdrew/todoist-mcp-server\"],\n      \"env\": {\n        \"TODOIST_API_TOKEN\": \"your_token_here\"\n      }\n    }\n  }\n}\n```\n\n## Available Tools\n\n### Project Tools\n\n#### `create_project`\nCreate a new project in Todoist\n- **name** (required): Project name\n- **color** (optional): Project color\n- **viewStyle** (optional): View style (\"list\" or \"board\")\n- **parentId** (optional): Parent project ID for sub-projects\n- **isFavorite** (optional): Mark as favorite\n\n#### `get_project`\nGet project details by ID\n- **projectId** (required): Project ID\n\n#### `list_projects`\nList all projects (no parameters)\n\n#### `update_project`\nUpdate project properties\n- **projectId** (required): Project ID\n- **name** (optional): New name\n- **color** (optional): New color\n- **viewStyle** (optional): New view style\n- **isFavorite** (optional): Favorite status\n\n#### `delete_project`\nDelete a project\n- **projectId** (required): Project ID\n\n### Task Tools\n\n#### `create_task`\nCreate a new task\n- **content** (required): Task content\n- **description** (optional): Task description\n- **projectId** (optional): Project ID\n- **dueString** (optional): Due date in natural language\n- **dueDate** (optional): Due date (YYYY-MM-DD)\n- **dueDatetime** (optional): Due datetime (RFC3339)\n- **priority** (optional): Priority 1-4 (4 is highest)\n- **labels** (optional): Array of labels\n\n#### `get_task`\nGet task details by ID\n- **taskId** (required): Task ID\n\n#### `list_tasks`\nList tasks with optional filters\n- **projectId** (optional): Filter by project ID\n- **filter** (optional): Filter expression (e.g., 'today', 'overdue')\n- **label** (optional): Filter by label\n\n#### `update_task`\nUpdate task properties\n- **taskId** (required): Task ID\n- **content** (optional): New content\n- **description** (optional): New description\n- **dueString** (optional): New due date\n- **dueDate** (optional): New due date (YYYY-MM-DD)\n- **dueDatetime** (optional): New due datetime\n- **priority** (optional): New priority\n- **labels** (optional): New labels array\n\n#### `complete_task`\nMark a task as completed\n- **taskId** (required): Task ID\n\n#### `reopen_task`\nReopen a completed task\n- **taskId** (required): Task ID\n\n#### `delete_task`\nDelete a task\n- **taskId** (required): Task ID\n\n## Usage Examples\n\nOnce configured with Claude Desktop, you can use natural language commands:\n\n- \"Create a new project called 'Website Redesign'\"\n- \"List all my projects\"\n- \"Add a task 'Review mockups' to the Website Redesign project\"\n- \"Show me all tasks due today\"\n- \"Mark task 12345 as completed\"\n- \"Update the task content to 'Review and approve mockups'\"\n\n## Error Handling\n\nThe server includes comprehensive error handling for:\n- Invalid API tokens\n- Missing required parameters\n- API rate limits\n- Network errors\n- Invalid project/task IDs\n\n## Development\n\n### Building\n```bash\nnpm run build\n```\n\n### Watch Mode\n```bash\nnpm run watch\n```\n\n### Project Structure\n```\nsrc/\n├── index.ts          # Main server implementation\n├── types.ts          # TypeScript type definitions (optional)\nbuild/                # Compiled JavaScript output\n├── index.js\n├── index.d.ts\npackage.json          # Project dependencies and scripts\ntsconfig.json         # TypeScript configuration\n```\n\n## Dependencies\n\n- **@modelcontextprotocol/sdk**: Official MCP SDK for TypeScript\n- **@doist/todoist-api-typescript**: Official Todoist API TypeScript client\n- **zod**: Schema validation library\n\n## License\n\nThis project is provided as-is for educational and personal use.","readmeFilename":"README.md"}