{
  "info": {
    "name": "Teamwork — mcp.ai",
    "description": "REST API for the Teamwork MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/teamwork",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "teamwork_create_tag",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/tag",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "tag"
          ]
        },
        "description": "Create a Teamwork tag, or return the existing installation tag when the same name already exists.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"color\": \"\",\n  \"project_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_create_task",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/task",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "task"
          ]
        },
        "description": "Create a task in a Teamwork task list with common scheduling, assignment, estimate, privacy, and tag fields.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"tag_ids\": \"\",\n  \"due_date\": \"\",\n  \"is_private\": false,\n  \"start_date\": \"\",\n  \"description\": \"\",\n  \"fire_webhook\": false,\n  \"task_list_id\": 0,\n  \"notify_assignees\": false,\n  \"assignee_user_ids\": \"\",\n  \"estimated_minutes\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_list_milestones",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/milestones",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "milestones"
          ]
        },
        "description": "List visible Teamwork milestones by project, status, due-date range, assignee, or text. Returns one page and an opaque continuation cursor.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"statuses\": \"\",\n  \"due_after\": \"\",\n  \"page_size\": 0,\n  \"due_before\": \"\",\n  \"next_cursor\": \"\",\n  \"project_ids\": \"\",\n  \"search_term\": \"\",\n  \"assigned_user_ids\": \"\",\n  \"include_completed\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_list_people",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/people",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "people"
          ]
        },
        "description": "List people visible to the connected Teamwork user for assignment and ownership workflows.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"page_size\": 0,\n  \"user_type\": \"\",\n  \"next_cursor\": \"\",\n  \"project_ids\": \"\",\n  \"search_term\": \"\",\n  \"include_clients\": false,\n  \"include_collaborators\": false,\n  \"include_service_accounts\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_list_projects",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/projects",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "projects"
          ]
        },
        "description": "List projects visible to the connected Teamwork user, with focused filters for name, status, company, membership, and archival state. Returns one page and an opaque continuation cursor.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"page_size\": 0,\n  \"company_ids\": \"\",\n  \"next_cursor\": \"\",\n  \"search_term\": \"\",\n  \"updated_after\": \"\",\n  \"include_archived\": false,\n  \"only_my_projects\": false,\n  \"project_statuses\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_list_tags",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/tags",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "tags"
          ]
        },
        "description": "List Teamwork tags visible to the connected user, optionally filtered by project, item type, name, or usage. Returns one page and an opaque continuation cursor.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"item_type\": \"\",\n  \"page_size\": 0,\n  \"next_cursor\": \"\",\n  \"project_ids\": \"\",\n  \"recent_only\": false,\n  \"search_term\": \"\",\n  \"with_counters\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_list_task_lists",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/task/lists",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "task",
            "lists"
          ]
        },
        "description": "List Teamwork task lists, usually within one or more projects, so an agent can place or locate tasks.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"page_size\": 0,\n  \"next_cursor\": \"\",\n  \"project_ids\": \"\",\n  \"search_term\": \"\",\n  \"include_empty\": false,\n  \"updated_after\": \"\",\n  \"show_completed\": false,\n  \"include_archived_projects\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_list_tasks",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/tasks",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "tasks"
          ]
        },
        "description": "List and filter Teamwork tasks by project, task list, assignee, dates, completion state, or tags. Returns one page and an opaque cursor for continuation.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"tag_ids\": \"\",\n  \"due_after\": \"\",\n  \"page_size\": 0,\n  \"due_before\": \"\",\n  \"next_cursor\": \"\",\n  \"project_ids\": \"\",\n  \"search_term\": \"\",\n  \"task_filter\": \"\",\n  \"task_list_ids\": \"\",\n  \"assigned_user_ids\": \"\",\n  \"include_completed\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_list_time_entries",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/time/entries",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "time",
            "entries"
          ]
        },
        "description": "List accessible Teamwork time entries by project, task, person, date range, billing state, or tags. Returns one page and an opaque continuation cursor.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"tag_ids\": \"\",\n  \"end_date\": \"\",\n  \"task_ids\": \"\",\n  \"user_ids\": \"\",\n  \"page_size\": 0,\n  \"start_date\": \"\",\n  \"next_cursor\": \"\",\n  \"project_ids\": \"\",\n  \"billable_type\": \"\",\n  \"invoiced_type\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_log_time_entry",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/log/time/entry",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "log",
            "time",
            "entry"
          ]
        },
        "description": "Log time against a Teamwork task with a date, duration, optional start time, description, person, billing state, and tags without changing task status.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"date\": \"\",\n  \"hours\": 0,\n  \"is_utc\": false,\n  \"minutes\": 0,\n  \"tag_ids\": \"\",\n  \"task_id\": 0,\n  \"user_id\": 0,\n  \"start_time\": \"\",\n  \"description\": \"\",\n  \"is_billable\": false,\n  \"fire_webhook\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_search_resources",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/search/resources",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "search",
            "resources"
          ]
        },
        "description": "Search across Teamwork projects, tasks, task lists, milestones, people, companies, time entries, and other supported item types. Returns one page of lightweight references, optional sideloaded details",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"types\": \"\",\n  \"order_by\": \"\",\n  \"project_id\": 0,\n  \"next_cursor\": \"\",\n  \"search_term\": \"\",\n  \"updated_after\": \"\",\n  \"include_details\": \"\",\n  \"include_completed\": false,\n  \"include_archived_projects\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "teamwork_update_task",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/task",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "task"
          ]
        },
        "description": "Update selected fields of an existing Teamwork task while leaving omitted task fields unchanged.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"tag_ids\": \"\",\n  \"task_id\": 0,\n  \"due_date\": \"\",\n  \"progress\": 0,\n  \"is_private\": false,\n  \"start_date\": \"\",\n  \"description\": \"\",\n  \"fire_webhook\": false,\n  \"notify_assignees\": false,\n  \"assignee_user_ids\": \"\",\n  \"estimated_minutes\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}