Motion
STDIOMotion日历任务管理MCP服务器
Motion日历任务管理MCP服务器
Unofficial Model Context Protocol (MCP) server for Motion - the AI-powered calendar, task management, and project planning app that automatically schedules your work.
Note: This is a community-built integration, not an official Motion product. We created this MCP server because there was no official implementation available, enabling AI assistants like Claude to interact with Motion's powerful scheduling and task management features.
Run this command to add the Motion MCP server to Claude:
claude mcp add motion npx -- -y @rf-d/motion-mcp
The above command creates the configuration, but you need to manually add your API key:
Open your Claude configuration file:
~/Library/Application Support/Claude/claude.json%APPDATA%\Claude\claude.json~/.config/claude/claude.jsonFind the motion entry that was just added and update it to include your API key:
{ "mcpServers": { "motion": { "command": "npx", "args": ["-y", "@rf-d/motion-mcp"], "env": { "MOTION_API_KEY": "your_motion_api_key_here" } } } }
git clone https://github.com/RF-D/motion-mcp.git cd motion-mcp npm install npm run build # Create a .env file with your API key echo "MOTION_API_KEY=your_motion_api_key_here" > .env # Run in development mode npm run dev
If you prefer to manually configure without using the CLI, add this to your claude.json:
{ "mcpServers": { "motion": { "command": "npx", "args": ["-y", "@rf-d/motion-mcp"], "env": { "MOTION_API_KEY": "your_motion_api_key_here", "MOTION_RATE_LIMIT_PER_MINUTE": "12" // 12 for individual, 120 for teams } } } }
The server includes automatic rate limiting to comply with Motion's API limits:
motion_list_tasks - List tasks with filtering and paginationmotion_get_task - Get detailed task informationmotion_create_task - Create new tasks with auto-schedulingmotion_update_task - Update task propertiesmotion_delete_task - Delete tasksmotion_move_task - Move tasks between projectsmotion_complete_task - Mark tasks as completedmotion_uncomplete_task - Mark tasks as not completedmotion_list_projects - List all projectsmotion_get_project - Get project detailsmotion_create_project - Create new projectsmotion_update_project - Update project informationmotion_delete_project - Delete projectsmotion_list_workspaces - List accessible workspacesmotion_get_workspace - Get workspace detailsCreate a new task called "Review Q4 reports" due tomorrow with high priority
List all my incomplete tasks in the "Development" project and move any bug fixes to high priority
Show me all tasks assigned to the team this week and add a comment to each one about the sprint goals
Create a weekly recurring task for team standup meetings every Monday at 9 AM
# Clone the repository git clone https://github.com/RF-D/motion-mcp.git cd motion-mcp # Install dependencies npm install # Set up environment cp .env.example .env # Edit .env with your API key # Run in development mode npm run dev
npm run build - Build for productionnpm run dev - Development mode with hot reloadnpm run typecheck - TypeScript type checkingnpm run lint - ESLint code lintingnpm run format - Prettier code formattingsrc/
├── api/
│   └── client.ts          # Motion API client with rate limiting
├── tools/
│   ├── task.ts           # Task management tools
│   ├── project.ts        # Project management tools
│   ├── workspace.ts      # Workspace tools
│   └── ...               # Other tool categories
├── types/
│   ├── motion.ts         # Motion API type definitions
│   └── tool.ts           # MCP tool type definitions
├── config.ts             # Configuration management
└── index.ts              # Main server entry point
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)Please ensure:
This project is licensed under the MIT License - see the LICENSE file for details.
This is an unofficial integration and is not affiliated with, officially maintained, or endorsed by Motion. Use at your own discretion.
"Motion API key not found" error
MOTION_API_KEY to your claude.json configuration"Rate limit exceeded" error
"Command not found" error
npx @rf-d/motion-mcpBuilt with love for the Motion and MCP communities