{ "name": "@doist/todoist-mcp", "version": "13.6.0", "type": "module", "main": "./dist/index.js", "types": "./dist/index.d.ts", "mcpName": "net.todoist/mcp", "bin": { "todoist-mcp": "dist/main.js", "todoist-mcp-http": "dist/main-http.js" }, "files": [ "dist", "!dist/dev", "scripts", "package.json", "LICENSE", "README.md" ], "license": "MIT", "engines": { "node": ">=24", "npm": ">=11" }, "description": "The official Todoist MCP server", "repository": { "type": "git", "url": "https://github.com/Doist/todoist-mcp" }, "keywords": [ "todoist", "mcp", "ai", "tools" ], "publishConfig": { "access": "public", "provenance": true }, "scripts": { "test": "vitest run", "test:watch": "vitest", "test:coverage": "vitest run --coverage", "build": "npm run build:lib && npm run build:apps", "build:lib": "vite build", "build:apps": "vite build --config src/mcp-apps/vite.config.ts", "postbuild": "chmod +x dist/main.js && chmod +x dist/main-http.js", "start": "npm run build && npx @modelcontextprotocol/inspector node dist/main.js", "dev": "concurrently \"npm run build:lib -- --watch\" \"npm run build:apps -- --watch\" \"npx @modelcontextprotocol/inspector npx nodemon --quiet --watch dist --ext js,html --exec node dist/main.js\"", "dev:http": "concurrently \"npm run build:lib -- --watch\" \"npm run build:apps -- --watch\" \"npx nodemon --quiet --watch dist --ext js,html --exec node dist/main-http.js\"", "start:http": "npm run build && node dist/main-http.js", "dev:apps": "vite build --watch --config src/mcp-apps/vite.config.ts", "dev:widget": "npm run dev:apps", "setup": "cp .env.example .env && npm install && npm run build", "tool": "tsx scripts/run-tool.ts", "tool:list": "tsx scripts/run-tool.ts --list", "eval": "tsx scripts/eval-instructions.ts", "test:executable": "npm run build && node scripts/test-executable.cjs", "type-check": "npx tsc --noEmit", "format:check": "oxlint src scripts && oxfmt --check", "format:fix": "oxlint src scripts --fix && oxfmt", "lint:schemas": "npm run build && npx tsx scripts/validate-schemas.ts", "check": "oxlint src scripts && oxfmt --check && npm run lint:schemas", "prepublishOnly": "npm run build && npm test", "prepare": "husky" }, "dependencies": { "@doist/todoist-sdk": "15.4.0", "@modelcontextprotocol/ext-apps": "2.0.3", "date-fns": "4.1.0", "dompurify": "3.3.3", "dotenv": "17.3.1", "express": "5.2.1", "zod": "4.3.6" }, "peerDependencies": { "@modelcontextprotocol/node": "^2.1.0", "@modelcontextprotocol/server": "^2.2.0" }, "devDependencies": { "@anthropic-ai/sdk": "0.126.0", "@modelcontextprotocol/client": "2.2.0", "@modelcontextprotocol/inspector": "0.22.0", "@semantic-release/changelog": "6.0.3", "@semantic-release/exec": "7.1.0", "@semantic-release/git": "10.0.1", "@types/dompurify": "3.2.0", "@types/express": "5.0.6", "@types/morgan": "1.9.10", "@types/node": "22.20.5", "@types/react": "19.2.18", "@types/react-dom": "19.2.7", "@vitejs/plugin-react": "5.2.0", "concurrently": "9.2.4", "conventional-changelog-conventionalcommits": "9.3.1", "gpt-tokenizer": "3.4.0", "husky": "9.1.7", "lint-staged": "16.4.0", "morgan": "1.11.0", "nodemon": "3.1.14", "oxfmt": "0.55.0", "oxlint": "1.70.0", "react": "19.2.8", "react-dom": "19.2.8", "rimraf": "6.1.3", "semantic-release": "25.0.9", "snarkdown": "2.0.0", "tsx": "4.22.4", "typescript": "6.0.3", "vite": "7.3.7", "vite-plugin-dts": "4.5.4", "vite-plugin-singlefile": "2.3.3", "vitest": "4.1.11" }, "lint-staged": { "*.{ts,tsx,js,jsx}": [ "oxlint --fix", "oxfmt --no-error-on-unmatched-pattern" ], "*.{md,yml,yaml,css,json}": [ "oxfmt --no-error-on-unmatched-pattern" ], "src/tools/!(*.test).ts": [ "npm run lint:schemas" ], "src/index.ts": [ "npm run lint:schemas" ], "scripts/validate-schemas.ts": [ "npm run lint:schemas" ] } }