# linear_createComment

Add a comment to an issue in Linear (supports threaded replies)

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

## Facts

- Tool: `linear_createComment`
- 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: 3
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `body` | string | no | Text of the comment (Markdown supported) |
| `issueId` | string | no | ID or identifier of the issue to comment on (e.g., ABC-123) |
| `parentId` | string | no | ID of the parent comment to reply to (for threaded comments) |

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": "linear_createComment",
    "arguments": {}
  }
}
```

## Why linear_createComment is rated Medium

This tool creates new data (a comment) in a reversible manner. It does not execute arbitrary code, delete data, or move money. However, it could be misused to spam issues, post misleading information, or add comments that derail project communication, warranting medium severity. The confidence is high because the intent is clearly to write/create data.

From the tool's own definition: "Tool performs 'Add a comment' which creates new data (a comment) in the Linear issue tracking system. The description explicitly states it adds/creates content."

Risk signals: Accepts raw HTML/template content (body)

## Use case

AI agents use linear_createComment 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": {
    "linear_createComment": {
      "limits": [
        {
          "counter": "linear_createcomment_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
