How to connect Linear MCP with VS Code

Connect VS Code to Linear MCP. Create a new bug for team mobile, add a comment to issue lin-123, and more using natural language, with authentication handled for you.

Linear logoLinear
Oauth2Api Key

Linear is a modern issue tracking and project planning tool for fast-moving teams. It helps streamline workflows, organize projects, and boost productivity.

47 Tools12 Triggers

How to connect Linear MCP with VS Code

VS Code is the most popular code editor out there. With its recent AI makeover, it can do more than just help you write code. You can connect your applications to it and let LLMs automate many of the mundane tasks in your workflow.

In this guide, I will explain how to connect Linear with VS Code in the most secure and robust way possible via Composio.

Also integrate Linear with

Why use Composio?

Composio provides:

  • Access to 1,500+ managed apps from a single MCP endpoint. This makes it convenient for agents to run cross-app workflows.
  • Programmatic tool calling. Allows LLMs to write its code in a remote workbench to handle complex tool chaining. Reduces to-and-fro with LLMs for frequent tool calling.
  • Large tool response handling outside the LLM context. This minimizes context bloat from large tool responses.
  • Dynamic just-in-time access to thousands of tools across hundreds of apps. Composio loads the tools your agent needs, so LLMs are not overwhelmed by tools they do not need.

Integrate Linear MCP with VS Code

1. Install with one click

Click the button below to add Composio to VS Code. You will be prompted to authorize. This requires VS Code 1.99+ with GitHub Copilot.

+Install in VS Code

2. Or add manually

Open or create .vscode/mcp.json in your project root and add the following configuration:

bash
{
  "servers": {
    "composio": {
      "type": "http",
      "url": "https://connect.composio.dev/mcp"
    }
  }
}

3. Authorize

Click the install button to authorize VS Code to connect to Composio. VS Code will detect OAuth and prompt you to sign in.

VS Code MCP server install screen for Composio

A browser window will open to authorize.

Composio authorization browser window

4. Authenticate Linear and start working

Back in VS Code chat, ask the agent to connect to Linear or give it any Linear-related task.

For example, ask it to:

  • "Create a new bug for team Mobile"
  • "Add a comment to issue LIN-123"
  • "List all cycles for the Design team"

It will prompt you to authenticate and authorize access to Linear.

That is it. Composio tools are now available in VS Code, and your Linear account is ready to use.

Way Forward

Now that Linear is connected, extend your setup by connecting the other apps you already use every day, so your agent can run true cross-app workflows end to end.

  • Connect Calendar to turn threads into scheduled meetings automatically.
  • Connect Slack or Teams to post summaries, approvals, and alerts where your team works.
  • Connect Notion, Linear, Jira, or Asana to convert requests into tickets, tasks, and docs.
  • Connect Drive, Dropbox, or OneDrive to fetch, file, and share attachments without manual steps.
  • Connect HubSpot or Salesforce to log customer context, update records, and draft follow-ups.

Start with one workflow you do repeatedly, then keep adding apps as you find new handoffs. With everything behind a single MCP endpoint, your agent can coordinate multiple tools safely and reliably in one conversation.

TOOLS & TRIGGERS

Supported Tools and Triggers

Every Linear action and event your agent gets out of the box.

Archive issue

Archives an existing Linear issue by its UUID or shorthand identifier, removing it from active views while preserving its data for future reference.

Archive Project

Archives an existing Linear project by its UUID, removing it from active views.

Archive Project Update

Archives a project update in Linear, hiding it from the default view while preserving its data.

Create attachment

Creates a new attachment and associates it with a specific, existing Linear issue.

Add reaction to comment

Tool to add a reaction to an existing Linear comment.

Create a comment

Creates a new comment on a specified Linear issue.

Create linear issue

Creates an issue in a specified Linear team with a title and optional project, description, assignee, state, priority, cycle, due date, and other properties.

Create issue relation

Create a relationship between two Linear issues using the issueRelationCreate mutation.

Create a label

Creates a label for a specified Linear team, or returns an existing exact-name match found in the team's initial label results.

Create Project

Creates a new Linear project with specified name and team associations.

Create Project Milestone

Tool to create a project milestone in Linear with a name and optional target date and sort order.

Create Project Update

Tool to create a project status update post for a Linear project.

Create Team

Creates a new team in Linear with the specified name and key.

Delete issue

Archives an existing Linear issue by its ID, which is Linear's standard way of deleting issues; the operation is idempotent.

Download issue files

Downloads a Linear Attachment record or a private upload embedded in issue/comment Markdown; `file_name` must include the correct extension.

Get a comment

Retrieves a single Linear comment by its unique ID.

Get current user

Gets the currently authenticated Linear user's ID, name, email, and other profile information.

Get cycles by team ID

Lists cycles for a specified Linear team ID, including progress, creation and end times, and history.

Get create issue default params

Fetches a Linear team's default issue estimate and state, useful for pre-filling new issue forms.

Get Linear issue

Retrieves a Linear issue by UUID or shorthand identifier, including its details, parent, cycle, attachments, comments and subscribers.

Get Linear project

Retrieves a single Linear project by its unique identifier.

Get Project Update

Retrieves a specific project update by its unique identifier.

List comments

Lists comments from Linear workspace accessible to the authenticated user.

List issue drafts

Lists the connected user's issue drafts for review or editing.

List issues by team ID

Tool to list all issues for a specific Linear team, scoped by team ID.

Get all cycles

Lists cycles across the Linear account without filters, including team IDs and scheduled end times.

List Linear issues

Lists non-archived Linear issues with optional project and assignee filters, returning a paginated issues array and page_info.

Get labels

Retrieves paginated Linear issue labels for a specified team or across the workspace.

List linear projects

Retrieves all projects from the Linear account.

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.

Get teams

Lists visible Linear teams with their members and project IDs, with pagination for teams but not nested members or projects.

List Linear users

Lists workspace users with IDs, names, emails, and active status.

List project updates

Retrieves all project updates from the Linear workspace.

Remove label from Linear issue

Removes a specified label from a Linear issue using the issue and label IDs, and returns the updated issue and labels.

Remove reaction from comment

Tool to remove a reaction on a comment.

Resolve comment

Marks a Linear comment as resolved.

Run Query or Mutation

Execute a Linear GraphQL query or mutation to retrieve or change accessible data.

Search Linear issues

Searches Linear issues by full-text query, with pagination and an option to include archived issues.

Unarchive Project Update

Unarchive a previously archived project update in Linear.

Unresolve a comment

Unresolves a previously resolved Linear comment, marking it as requiring attention again.

Update issue

Updates an existing Linear issue by ID, requiring at least one field to modify; supplied fields overwrite existing values and labels replace the label set.

Update a comment

Tool to update an existing Linear comment's body text.

Update Project

Tool to update an existing Linear project.

Update Project Update

Tool to update an existing Linear project update post.

Update Team

Updates an existing Linear team's settings, including its name, key, cycle settings, and workflow state configuration.

Validate credential

Validates the Linear API credentials by checking if the authentication token can successfully query the current user.

Who Am I

Return the identity (name, email) of the connected Linear account.

FAQ

Frequently asked questions

With a standalone Linear MCP server, the agents and LLMs can only access a fixed set of Linear tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Linear and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. VS Code fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Linear tools.

Yes, absolutely. You can configure which Linear scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Linear data and credentials are handled as safely as possible.

Start with Linear.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Linear tool your agent needs.Free to start.

Start building