Skip to main content
Glama

NPM Version License

Motion MCP Server

Motion は、作業を自動的にスケジュールしてくれるAI搭載のカレンダー・タスク管理アプリです。このMCPサーバーは、Model Context Protocol を介して Motion のAPIとClaudeやChatGPTなどのLLMを橋渡しできるので、タスクの管理、プロジェクトの検索、スケジュールの確認などをすべて自然な会話で行えます。デスクトップ、Web、モバイルで動作します。

プレビュー

上の画像をクリックするとフルサイズで表示されます

Related MCP server: Motion MCP Server

はじめに

前提条件: Node.js 20+ と Motion APIキー。

ローカルセットアップ (npx)

デスクトップMCPクライアント(Claude Desktop、Claude Code、Cursor など)向け。

claude_desktop_config.json に追加:

{
  "mcpServers": {
    "motion": {
      "command": "npx",
      "args": ["motionmcp"],
      "env": {
        "MOTION_API_KEY": "your_api_key"
      }
    }
  }
}

コマンドラインからテスト:

MOTION_API_KEY=your_api_key npx motionmcp

ヒント: npx は常に最新の公開バージョンを実行するため、インストールは不要です。

リモートセットアップ(Cloudflare Workers)

モバイル/Web クライアント(Claudeモバイル/Web、ChatGPTモバイル/Web、その他のHTTP MCPクライアント)向け。

ワンクリックデプロイ

Deploy to Cloudflare Workers

デプロイ後、Cloudflareダッシュボード(Workers > 対象のWorker > Settings > Variables)でシークレットを設定します:

  • MOTION_API_KEY — あなたの Motion API キー

  • MOTION_MCP_SECRET — ランダムな文字列(openssl rand -hex 16 で生成)

手動デプロイ

# Set secrets
npx wrangler secret put MOTION_API_KEY
npx wrangler secret put MOTION_MCP_SECRET   # use: openssl rand -hex 16

# Deploy
npm run worker:deploy

ベース URL は次のようになります:

https://motion-mcp-server.YOUR_SUBDOMAIN.workers.dev/mcp/YOUR_SECRET

そのアドレスを正確に使用してください。シークレットはパスの末尾に置き、後ろに何も続けません。サーバーはセッション中に独自のサブパス(メッセージエンドポイントなど)を公開するため、シークレットの後に /sse やその他のサブパスを追加しないでください。

Claude から接続する

  1. claude.ai に移動し、Settings > Connectors を開く

  2. MCP URL を追加する

  3. サーバーは自動的に Claude モバイルアプリへ同期されます

ChatGPT から接続する

  1. ChatGPT の Settings > Connectors を開く

  2. MCP URL を追加する

セキュリティ: URL内のシークレットは偶発的な発見を防ぎます。URL全体をパスワードと同じように扱い、公開しないでください。

ツール設定はローカルサーバーと同じです。wrangler.toml の [vars] に MOTION_MCP_TOOLS を設定するか、wrangler secret put MOTION_MCP_TOOLS で上書きできます。

ローカルWorker開発については、DEVELOPER.md を参照してください。

API キー

サーバーは MOTION_API_KEY 環境変数からあなたの Motion API キーを読み取ります。

インライン(npx):

MOTION_API_KEY=your-key npx motionmcp

.env ファイル(npm でソースから実行する場合):

MOTION_API_KEY=your-key

npx を使用する場合、npx はローカルの .env ファイルを読み取らないため、インラインの環境変数を推奨します。

ツール設定

デフォルトでは10個すべてのツールが有効です。複数のMCPサーバーを実行していて、ツール選択のノイズを減らしたい場合は、MOTION_MCP_TOOLS 環境変数で公開するツールを制限できます:

レベル

ツール数

説明

minimal

3

タスク、プロジェクト、ワークスペースのみ

essential

7

ユーザー、検索、コメント、スケジュールを追加

complete (デフォルト)

10

カスタムフィールド、繰り返しタスク、ステータスを含むフルAPIアクセス

custom

可変

必要なツールだけを正確に選択

カスタム例:

MOTION_MCP_TOOLS=custom:motion_tasks,motion_projects,motion_search npx motionmcp

ツールリファレンス

motion_tasks

操作: create, list, get, update, delete, move, unassign

タスク管理の主要ツールです。name、description、priority、dueDate、duration、labels、assigneeId、autoScheduled を含め、Motion API のすべてのパラメータをサポートしています。ステータスは名前で参照でき、サーバーが自動的に解決します。

{
  "operation": "create",
  "name": "Complete API integration",
  "workspaceName": "Development",
  "projectName": "Release Cycle Q2",
  "dueDate": "2025-06-15T09:00:00Z",
  "priority": "HIGH",
  "labels": ["api", "release"]
}

motion_projects

操作: create, list, get

Motion プロジェクトを管理します。ワークスペース名とプロジェクト名はあいまいマッチされ、指定がない場合はサーバーが自動的に「Personal」ワークスペースを選択します。

{"operation": "create", "name": "New Project", "workspaceName": "Personal"}

motion_workspaces

操作: list, get

ワークスペースを一覧表示・調査します。

motion_users

操作: list, current

ワークスペース内のユーザーを一覧表示するか、現在認証されているユーザーを取得します。

motion_search

操作: content

ワークスペース全体でクエリを使ってタスクとプロジェクトを検索します。

{"operation": "content", "query": "API integration", "workspaceName": "Development"}

motion_comments

操作: list, create

タスクとプロジェクトのコメントを読み取り、追加します。

{"operation": "create", "taskId": "task_123", "content": "Updated the API endpoints as discussed"}

motion_schedules

操作: list

ユーザーのスケジュールとタイムゾーンを取得します。競合検出付きの優先スケジューリングと、ステータス・優先度・プロジェクト別のワークロード内訳をサポートしています。

motion_custom_fields

操作: list, create, delete, add_to_project, remove_from_project, add_to_task, remove_from_task

ワークスペース、プロジェクト、タスクをまたいでカスタムフィールドを定義・管理します。

{
  "operation": "create",
  "name": "Sprint",
  "type": "DROPDOWN",
  "options": ["Sprint 1", "Sprint 2", "Sprint 3"],
  "workspaceName": "Development"
}

motion_recurring_tasks

操作: list, create, delete

繰り返しタスクのテンプレートを管理します。

{
  "operation": "create",
  "name": "Weekly Team Standup",
  "recurrence": "WEEKLY",
  "projectName": "Team Meetings",
  "daysOfWeek": ["MONDAY", "WEDNESDAY", "FRIDAY"],
  "duration": 30
}

motion_statuses

操作: list

ワークスペースで利用可能なステータスを一覧表示します。

詳細設定

最小構成(3つのツールのみ):

{
  "mcpServers": {
    "motion": {
      "command": "npx",
      "args": ["motionmcp"],
      "env": {
        "MOTION_API_KEY": "your_api_key",
        "MOTION_MCP_TOOLS": "minimal"
      }
    }
  }
}

カスタムツールの選択:

{
  "mcpServers": {
    "motion": {
      "command": "npx",
      "args": ["motionmcp"],
      "env": {
        "MOTION_API_KEY": "your_api_key",
        "MOTION_MCP_TOOLS": "custom:motion_tasks,motion_projects,motion_search"
      }
    }
  }
}

ローカルワークスペースを使う (npm):

{
  "mcpServers": {
    "motion": {
      "command": "npm",
      "args": ["run", "mcp:dev"],
      "cwd": "/absolute/path/to/your/MotionMCP",
      "env": {
        "MOTION_API_KEY": "your_api_key"
      }
    }
  }
}

完全な開発者セットアップは DEVELOPER.md を参照してください。

デバッグ

  • ログはJSON形式で stderr に出力されます

  • 不足しているキー、ワークスペース/プロジェクト名、権限を確認してください

  • motion_workspaces (list) と motion_projects (list) を使用してIDを検証してください

{
  "level": "info",
  "msg": "Task created successfully",
  "method": "createTask",
  "taskId": "task_789",
  "workspace": "Development"
}

ライセンス

Apache-2.0 License


詳細は、Motion API ドキュメント または Model Context Protocol ドキュメント を参照してください。

Related MCP Connectors

Related MCP Servers