MissionControlHQMissionControlHQResources
ArticlesDocs
Get early access→
Integrations
Email & Productivity
  • Gmail
  • Outlook
  • Google Docs
  • Google Sheets
  • Excel
  • Notion
  • Confluence
  • Airtable
  • Todoist
  • Google Tasks
  • Canva
Communication
  • Slack
  • Microsoft Teams
  • Discord
  • WhatsApp
  • Webex
Scheduling & Meetings
  • Google Calendar
  • Zoom
  • Calendly
  • Cal.com
  • Google Meet
  • Eventbrite
Marketing & Social
  • Mailchimp
  • Google Ads
  • Facebook
  • LinkedIn
  • YouTube
  • Reddit
  • Dub
CRM & Support
  • HubSpot
  • Salesforce
  • Attio
  • Capsule CRM
  • Intercom
  • Zendesk
  • Gorgias
  • Zoho Desk
  • Gong
File Storage
  • Google Drive
  • Dropbox
  • OneDrive
  • Box
  • SharePoint
  • Google Photos
E-commerce & Payments
  • Stripe
  • Square
Finance & Time
  • Harvest
  • Zoho Books
  • Zoho Invoice
  • FreshBooks
  • Fathom
Analytics
  • Google BigQuery
Dev & Project Management
  • GitHub
  • GitLab
  • Bitbucket
  • Linear
  • Jira
  • Asana
  • ClickUp
  • Trello
  • Monday.com
  • Basecamp
  • Wrike
  • Productboard
  • Figma
  • Miro
  • Sentry
  • PagerDuty
  • Supabase
  • DigitalOcean
Resources/Integrations/Linear

Dev & Project Management

📐 Linear integration

Access levels: Read-only · Create + comment · Full access · Verified July 15, 2026

PreviousBitbucketNextJira

Connect Linear once and every agent in your squad can work in it for you, with exactly as much access as you decide to give, and a receipt for every call it makes.

What your squad can do in Linear

  • Look things up, get all linear teams; get attachment; get comment, and more.
  • Do real work, create attachment; create comment reaction; create linear comment; create linear issue, and more.
  • Run it on a schedule: any of the 47 available tools below can be part of a scheduled task or a mission.

How to connect

  1. In your dashboard, open Integrations and find Linear.
  2. Click Connect and pick an access level (we recommend Full access): this is the ceiling for every agent.
  3. Sign in to Linear in the window that opens and approve. You land back on the Integrations page with the account live.

You can change an account's access level any time under Manage. It applies instantly, no re-authorization. If the connection ever expires, the card shows Reconnect; one click re-authorizes the same account with the same settings.

Multiple accounts: connect as many as you need (say, yours and a client's). One is primary. Agents use it unless a mission says otherwise.

Access levels

The level you pick at connect time is enforced on our side for every agent call: an agent can never do more than the level allows, no matter what it's asked.

LevelWhat it allows
Read-onlyRead issues, projects, and teams.
Create + commentRead and add new issues and comments.
Full accessRead, create, edit, and delete issues and projects.Recommended

On top of the connection's level, every agent can be individually allowed, scoped down, or denied for this app from the Integrations page. Deny an agent and it doesn't even see the connection.

Every tool, in plain terms

The 47 tools agents use in Linear through Mission Control, and the lowest access level that includes each. Agents discover these themselves. You never have to name a tool; asking in plain language is enough.

ToolWhat it doesAccess level
Archive issue
LINEAR_ARCHIVE_ISSUE
Archives an existing Linear issue by its ID, removing it from active views while preserving its data for future reference.Full access
Archive project
LINEAR_ARCHIVE_PROJECT
Archives an existing Linear project by its UUID, removing it from active views.Full access
Archive project update
LINEAR_ARCHIVE_PROJECT_UPDATE
Archives a project update in Linear, hiding it from the default view while preserving its data.Full access
Create attachment
LINEAR_CREATE_ATTACHMENT
Creates a new attachment and associates it with a specific, existing Linear issue.Create + comment, Full access
Create comment reaction
LINEAR_CREATE_COMMENT_REACTION
Add a reaction to an existing Linear comment.Create + comment, Full access
Create linear comment
LINEAR_CREATE_LINEAR_COMMENT
Creates a new comment on a specified Linear issue.Create + comment, Full access
Create linear issue
LINEAR_CREATE_LINEAR_ISSUE
Creates a new issue in a specified Linear project and team, requiring team_id and title, and allowing optional properties like description, assignee, state, priority, cycle, and due date.Create + comment, Full access
Create linear issue relation
LINEAR_CREATE_LINEAR_ISSUE_RELATION
Create a relationship between two Linear issues using the issueRelationCreate mutation.Create + comment, Full access
Create linear label
LINEAR_CREATE_LINEAR_LABEL
Creates a new label in Linear for a specified team, used to categorize and organize issues.Create + comment, Full access
Create linear project
LINEAR_CREATE_LINEAR_PROJECT
Creates a new Linear project with specified name and team associations.Create + comment, Full access
Create project milestone
LINEAR_CREATE_PROJECT_MILESTONE
Create a project milestone in Linear with a name and optional target date and sort order.Create + comment, Full access
Create project update
LINEAR_CREATE_PROJECT_UPDATE
Create a project status update post for a Linear project.Create + comment, Full access
Create team
LINEAR_CREATE_TEAM
Creates a new team in Linear with the specified name and key.Full access
Delete linear issue
LINEAR_DELETE_LINEAR_ISSUE
Archives an existing Linear issue by its ID, which is Linear's standard way of deleting issues; the operation is idempotent.Full access
Get all linear teams
LINEAR_GET_ALL_LINEAR_TEAMS
DEPRECATED: Use ListLinearTeams instead (returns paginated payloads with members and projects); this tool returns simpler id/name-level data for all teams visible to the connected workspace with no server-side filtering.All levels
Get attachment
LINEAR_GET_ATTACHMENT
Downloads a specific attachment from a Linear issue; the file_name must include the correct file extension.All levels
Get comment
LINEAR_GET_COMMENT
Retrieves a single Linear comment by its unique ID.Full access
Get current user
LINEAR_GET_CURRENT_USER
Gets the currently authenticated user's ID, name, email, and other profile information, this is the account behind the API token, which may be a bot or service account rather than a human user.All levels
Get cycles by team id
LINEAR_GET_CYCLES_BY_TEAM_ID
Retrieves all cycles for a specified Linear team ID; cycles are time-boxed work periods (like sprints).All levels
Get issue defaults
LINEAR_GET_ISSUE_DEFAULTS
Fetches a Linear team's default issue estimate and state, useful for pre-filling new issue forms.All levels
Get linear issue
LINEAR_GET_LINEAR_ISSUE
Retrieves an existing Linear issue's comprehensive details, including id, identifier, title, description, timestamps, state, team, creator, attachments, comments (with user info and timestamps, use issue.comments.nodes…All levels
Get linear project
LINEAR_GET_LINEAR_PROJECT
Retrieves a single Linear project by its unique identifier.All levels
Get project update
LINEAR_GET_PROJECT_UPDATE
Retrieves a specific project update by its unique identifier.Full access
List comments
LINEAR_LIST_COMMENTS
Lists comments from Linear workspace accessible to the authenticated user.Full access
List issues by team id
LINEAR_LIST_ISSUES_BY_TEAM_ID
List all issues for a specific Linear team, scoped by team ID.All levels
List issue drafts
LINEAR_LIST_ISSUE_DRAFTS
List issue drafts. Use when you need to fetch draft issues for review or further editing. Check pageInfo.hasNextPage in the response to determine if additional drafts exist beyond the current page.All levels
List linear cycles
LINEAR_LIST_LINEAR_CYCLES
Retrieves all cycles (time-boxed sprint iterations) org-wide from the Linear account; no filters applied.All levels
List linear issues
LINEAR_LIST_LINEAR_ISSUES
Lists non-archived Linear issues; if project_id is not specified, issues from all accessible projects are returned.All levels
List linear labels
LINEAR_LIST_LINEAR_LABELS
Retrieves labels from Linear. If team_id is provided, returns labels for that specific team; if omitted, returns all labels across the workspace. Label names are not unique across teams, always use returned IDs, not nam…All levels
List linear projects
LINEAR_LIST_LINEAR_PROJECTS
Retrieves all projects from the Linear account.All levels
List linear states
LINEAR_LIST_LINEAR_STATES
Retrieves all workflow states for a specified team in Linear, representing the stages an issue progresses through in that team's workflow.All levels
List linear teams
LINEAR_LIST_LINEAR_TEAMS
Retrieves all teams with their members and projects.All levels
List linear users
LINEAR_LIST_LINEAR_USERS
Lists all workspace users (not team-scoped) with their IDs, names, emails, and active status.All levels
List project updates
LINEAR_LIST_PROJECT_UPDATES
Retrieves all project updates from the Linear workspace.Full access
Remove issue label
LINEAR_REMOVE_ISSUE_LABEL
Removes a specified label from an existing Linear issue using their IDs; successful even if the label isn't on the issue.Full access
Remove reaction
LINEAR_REMOVE_REACTION
Remove a reaction on a comment. Use when you have a reaction ID and need to delete it.Full access
Resolve comment
LINEAR_RESOLVE_COMMENT
Marks a Linear comment as resolved. This action is used when a comment thread or discussion has been addressed and should be marked as complete. Use this action when you need to resolve a comment after addressing the fe…Full access
Run query or mutation
LINEAR_RUN_QUERY_OR_MUTATION
Execute any GraphQL query or mutation against Linear's API.Full access
Search issues
LINEAR_SEARCH_ISSUES
Search Linear issues using full-text search across identifier, title, and description.All levels
Unarchive project update
LINEAR_UNARCHIVE_PROJECT_UPDATE
Unarchive a previously archived project update in Linear.Full access
Unresolve comment
LINEAR_UNRESOLVE_COMMENT
Unresolves a previously resolved Linear comment, marking it as requiring attention again.Full access
Update issue
LINEAR_UPDATE_ISSUE
Updates an existing Linear issue using its issue_id; requires at least one other attribute for modification, and all provided entity IDs (for state, assignee, labels, etc.) must be valid UUIDs, only issueId accepts…Create + comment, Full access
Update linear comment
LINEAR_UPDATE_LINEAR_COMMENT
Update an existing Linear comment's body text.Create + comment, Full access
Update linear project
LINEAR_UPDATE_LINEAR_PROJECT
Update an existing Linear project. Use when you need to modify project properties like name, description, state, dates, or lead. All fields except project_id are optional - only provide the fields you want to update.Create + comment, Full access
Update project update
LINEAR_UPDATE_PROJECT_UPDATE
Update an existing Linear project update post.Full access
Update team
LINEAR_UPDATE_TEAM
Updates an existing Linear team's settings and configuration.Full access
Validate credential
LINEAR_VALIDATE_CREDENTIAL
Validates the Linear API credentials by checking if the authentication token can successfully query the current user.Full access

What agents can't do in Linear (yet)

  • Anything not in the table above. The tools mirror what Linear makes available to connected apps. If Linear doesn't expose an operation, agents can't perform it either.
  • If something you need is missing, there's usually a path: add the service's API key under Settings → Custom integrations and your agents can call it directly. See custom integrations & secrets. You can also ask your lead agent to open a ticket describing what it needs.

Using it in missions

Just ask in plain language: “check Linear for …”, “create … in Linear”, “every Monday, … ”, and the agent finds the right tool, runs it, and reports back with a receipt in your Runs ledger. Anything outward-facing (sending, posting, publishing) that a mission didn't clearly authorize comes back to you as a ticket first.

Troubleshooting

Agent saysWhat's happeningFix
"Linear isn't connected"No active connection (or this agent is denied)Connect on the Integrations page; check the agent's per-app policy
"The connection has expired"Linear ended the authorization (they all do periodically)Click Reconnect on the account, same settings, one click
"I'm not allowed to do that"The action is above the account's access level, or the agent is scoped downRaise the level under Manage, or adjust that agent's policy
It did something unexpectedThe ask was ambiguous (e.g. matched an existing item)Be explicit, "create a NEW …", and give agents a working folder where relevant