How to integrate Linear MCP with Grok Build

Connect Grok Build to Linear MCP. Create a new bug for team mobile, add a comment to issue lin-123, and more from your terminal, 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 integrate Linear MCP with Grok Build

Grok Build is xAI's terminal coding agent. It runs on Grok 4.5, plans its work before it acts, and can run multiple sub-agents in parallel. It also reads Claude Code's MCP configuration, so any server you already have in a .mcp.json is picked up with no changes.

In this guide, I will show you how to connect your Linear account to Grok Build through Composio, so it can create a new bug for team Mobile, add a comment to issue LIN-123, list all cycles for the Design team, and more without leaving the terminal. Composio holds the OAuth tokens for you, and Grok Build only calls the tools you approve.

Also integrate Linear with

Why use Composio over a standalone MCP server?

  • Read and write access. Composio's Linear integration lets Grok Build take real actions like creating drafts, sending updates, and labeling records, not just reading data.
  • 1,700+ SaaS toolkits out of the box. One endpoint gives you a full catalog of pre-built connectors, from Gmail and Slack to Notion, Linear, and Salesforce.
  • One MCP server for every app. Wire up a single Composio server instead of maintaining a separate MCP entry for each app.
  • Smart, context-aware tool loading. Grok Build caps how many tools it holds in a single request. Composio loads only the tools a task needs, so you do not spend that budget on tools you are not using.
  • Cross-app automation. Chain actions across apps in one run. Pull a thread, summarize it in Notion, and post the highlights to Slack from a single prompt.

Prerequisites

  • Grok Build installed and signed in. Install with curl -fsSL https://x.ai/cli/install.sh | bash on macOS or Linux, or irm https://x.ai/cli/install.ps1 | iex on Windows PowerShell. On first launch Grok opens a browser to authenticate; for headless or CI use, set an XAI_API_KEY environment variable instead (create the key at console.x.ai).
  • Access to the Linear account you want to connect.
  • The Composio MCP endpoint. Composio's server is remote and hosted, so there is nothing to run locally and no tunnel to set up.

Step-by-step: Connect Linear to Grok Build

1. Install and verify Grok Build

Install the CLI, then restart your shell so the grok binary lands on your PATH:

bash
curl -fsSL https://x.ai/cli/install.sh | bash
which grok

On Windows, install with PowerShell instead: irm https://x.ai/cli/install.ps1 | iex. If which grok returns a path, you are set. Grok Build runs on Grok 4.5 by default; you can switch models inside the session with /model <name>.

2. Add the Composio server

Add Composio as a remote HTTP MCP server with the grok mcp add command:

bash
grok mcp add --transport http composio https://connect.composio.dev/mcp

You can also add and manage servers from inside a session. Run /mcps to open the extensions modal on the MCP tab, then add a new server and paste the Composio URL. Added this way, Grok auto-detects the name from the URL and lists the server as connect:

bash
https://connect.composio.dev/mcp
Grok Build /mcps extensions modal listing MCP servers Grok Build adding the Composio MCP server with its URL

Grok also reads Claude Code-style config, so an entry in ~/.grok/config.toml or a project .mcp.json works the same way.

3. Authenticate

Composio uses OAuth. In the /mcps modal, select the Composio server and press i to authenticate (Grok also triggers this browser flow automatically the first time it uses a Composio tool). Click Allow to authorize access. Grok stores the tokens under ~/.grok/mcp_credentials.json, and /mcps shows Composio as connected.

Grok Build prompting to authenticate the Composio MCP server Composio authorization screen with the Allow button for Grok Build

4. Start building

Ask Grok to work with your Linear account through Composio. On the first Linear action, Composio prompts you to connect the account through OAuth. Approve the scopes once, and Composio handles token refresh from there.

What you can do after connecting Linear

  • Create a new bug for team Mobile
  • Add a comment to issue LIN-123
  • List all cycles for the Design team
  • Download the latest attachment from issue LIN-456

Security + privacy notes (important)

  • Use least-privilege access. Grant only the Linear scopes you actually need.
  • Review OAuth scopes before approving. Check that the requested scopes match what you expect Composio and Grok Build to do.
  • Keep write actions human-reviewed. Grok Build proposes a plan before it acts. Leave that approval step on for actions like sending messages or editing records.
  • Keep secrets out of version control. Your XAI_API_KEY and any tokens should never be committed. Use environment variables or a secrets manager.
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

Start with Linear.It takes 30 seconds.

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

Start building