# update_project

Update an existing Linear project

Agent View of the PolicyLayer registry record for `update_project`. HTML page: https://policylayer.com/tools/linear/update-project

## Facts

- Tool: `update_project`
- Server: Linear (`@linear-mcp-server`) — https://policylayer.com/tools/linear.md
- Install: `npx -y @linear-mcp-server`
- Homepage: https://github.com/https://mcp.linear.app/mcp
- Risk category: Write (Medium risk)
- Registry record: grade D, identity verified
- Server auth posture: gated
- Server rate-limited: no
- Parameters: 8
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | no | The ID of the project to update |
| `name` | string | no | The new name of the project |
| `leadId` | string | no | The UUID of the user to set as project lead |
| `summary` | string | no | A concise plaintext summary of the project (max 255 chars) |
| `labelIds` | array | no | Array of label UUIDs to set on the project |
| `startDate` | string | no | The start date of the project in ISO format |
| `targetDate` | string | no | The target date of the project in ISO format |
| `description` | string | no | The full project description in Markdown format |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_project",
    "arguments": {}
  }
}
```

## Why update_project is rated Medium

This tool modifies an existing project rather than creating or deleting it. The change is reversible since updates can be undone through subsequent modifications. The severity is medium because unintended project updates could disrupt team workflows, visibility, or project settings, but the changes themselves are not irreversible.

From the tool's own definition: "Tool name is 'update_project' and description states 'Update an existing Linear project' - both indicate modification of existing data (project configuration, settings, metadata, etc.)."

## Use case

AI agents use update_project to create or update resources in Linear, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Linear environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Linear:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "update_project": {
      "limits": [
        {
          "counter": "update_project_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Linear (65)

- `linear_deleteInitiative` — Destructive — https://policylayer.com/tools/linear/linear-deleteinitiative.md
- `get_document` — Read — https://policylayer.com/tools/linear/get-document.md
- `get_issue` — Read — https://policylayer.com/tools/linear/get-issue.md
- `get_issue_status` — Read — https://policylayer.com/tools/linear/get-issue-status.md
- `get_project` — Read — https://policylayer.com/tools/linear/get-project.md
- `get_team` — Read — https://policylayer.com/tools/linear/get-team.md
- `get_user` — Read — https://policylayer.com/tools/linear/get-user.md
- `linear_getActiveCycle` — Read — https://policylayer.com/tools/linear/linear-getactivecycle.md
- `linear_getComments` — Read — https://policylayer.com/tools/linear/linear-getcomments.md
- `linear_getCycles` — Read — https://policylayer.com/tools/linear/linear-getcycles.md
- `linear_getInitiativeById` — Read — https://policylayer.com/tools/linear/linear-getinitiativebyid.md
- `linear_getInitiativeProjects` — Read — https://policylayer.com/tools/linear/linear-getinitiativeprojects.md
- `linear_getInitiatives` — Read — https://policylayer.com/tools/linear/linear-getinitiatives.md
- `linear_getIssueById` — Read — https://policylayer.com/tools/linear/linear-getissuebyid.md
- `linear_getIssueHistory` — Read — https://policylayer.com/tools/linear/linear-getissuehistory.md
- `linear_getIssues` — Read — https://policylayer.com/tools/linear/linear-getissues.md
- `linear_getLabels` — Read — https://policylayer.com/tools/linear/linear-getlabels.md
- `linear_getOrganization` — Read — https://policylayer.com/tools/linear/linear-getorganization.md
- `linear_getProjectIssues` — Read — https://policylayer.com/tools/linear/linear-getprojectissues.md
- `linear_getProjects` — Read — https://policylayer.com/tools/linear/linear-getprojects.md
- `linear_getTeams` — Read — https://policylayer.com/tools/linear/linear-getteams.md
- `linear_getUsers` — Read — https://policylayer.com/tools/linear/linear-getusers.md
- `linear_getViewer` — Read — https://policylayer.com/tools/linear/linear-getviewer.md
- `linear_getWorkflowStates` — Read — https://policylayer.com/tools/linear/linear-getworkflowstates.md
- `linear_searchIssues` — Read — https://policylayer.com/tools/linear/linear-searchissues.md
- `list_comments` — Read — https://policylayer.com/tools/linear/list-comments.md
- `list_cycles` — Read — https://policylayer.com/tools/linear/list-cycles.md
- `list_documents` — Read — https://policylayer.com/tools/linear/list-documents.md
- `list_issue_labels` — Read — https://policylayer.com/tools/linear/list-issue-labels.md
- `list_issue_statuses` — Read — https://policylayer.com/tools/linear/list-issue-statuses.md
- …and 35 more: https://policylayer.com/tools/linear.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=linear · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/linear
