Skip to main content

Linear

The Linear agent connector is a Python package that equips AI agents to interact with Linear through strongly typed, well-documented tools. It's ready to use directly in your Python app, in an agent framework, or exposed through an MCP.

Linear is a modern issue tracking and project management tool built for software development teams. This connector provides access to issues, projects, and teams for sprint planning, backlog management, and development workflow analysis.

Example prompts

The Linear connector is optimized to handle prompts like these.

  • Show me the open issues assigned to my team this week
  • List out all projects I'm currently involved in
  • List all users in my Linear workspace
  • Who is assigned to the most recently updated issue?
  • Create a new issue titled 'Fix login bug'
  • Update the priority of a recent issue to urgent
  • Change the title of a recent issue to 'Updated feature request'
  • Add a comment to a recent issue saying 'This is ready for review'
  • Update my most recent comment to say 'Revised feedback after testing'
  • Create a high priority issue about API performance
  • Assign a recent issue to a teammate
  • Unassign the current assignee from a recent issue
  • Reassign a recent issue from one teammate to another
  • Create a new issue in the 'Backend Improvements' project
  • Add a recent issue to a specific project
  • Move an issue to a different project
  • Create a new project called 'Q3 Platform Migration'
  • Update the description of the 'Backend Improvements' project
  • Change the target date of a project to next month
  • Mark a project as started
  • Set a project lead for the 'API Redesign' project
  • Analyze the workload distribution across my development team
  • What are the top priority issues in our current sprint?
  • Identify the most active projects in our organization right now
  • Summarize the recent issues for {team_member} in the last two weeks
  • Compare the issue complexity across different teams
  • Which projects have the most unresolved issues?
  • Give me an overview of my team's current project backlog

Unsupported prompts

The Linear connector isn't currently able to handle prompts like these.

  • Delete an outdated project from our workspace
  • Schedule a sprint planning meeting
  • Delete this issue
  • Remove a comment from an issue

Entities and actions

This connector supports the following entities and actions. For more details, see this connector's full reference documentation.

EntityActions
IssuesList, Get, Create, Update, Context Store Search
ProjectsList, Get, Create, Update, Context Store Search
TeamsList, Get, Context Store Search
Workflow StatesList, Context Store Search
UsersList, Get, Context Store Search
CommentsList, Get, Create, Update, Context Store Search

Linear API docs

See the official Linear API reference.

SDK installation

uv pip install airbyte-agent-sdk

SDK usage

Connectors can run in hosted or open source mode.

Hosted

In hosted mode, API credentials are stored securely in Airbyte Agents. You provide your Airbyte credentials instead. If your Airbyte client can access multiple organizations, also set organization_id.

This example assumes you've already authenticated your connector with Airbyte. See Authentication to learn more about authenticating. If you need a step-by-step guide, see the hosted execution tutorial.

The connect() factory returns a fully typed LinearConnector and reads AIRBYTE_CLIENT_ID / AIRBYTE_CLIENT_SECRET from the environment:

Pydantic AI
from pydantic_ai import Agent
from airbyte_agent_sdk import connect
from airbyte_agent_sdk.connectors.linear import LinearConnector

connector = connect("linear", workspace_name="<your_workspace_name>")

agent = Agent("openai:gpt-4o")

@agent.tool_plain
@LinearConnector.tool_utils
async def linear_execute(entity: str, action: str, params: dict | None = None):
return await connector.execute(entity, action, params or {})

Or pass credentials explicitly (equivalent, useful when you're not loading them from the environment):

Pydantic AI
from pydantic_ai import Agent
from airbyte_agent_sdk.connectors.linear import LinearConnector
from airbyte_agent_sdk.types import AirbyteAuthConfig

connector = LinearConnector(
auth_config=AirbyteAuthConfig(
workspace_name="<your_workspace_name>",
organization_id="<your_organization_id>", # Optional for multi-org clients
airbyte_client_id="<your-client-id>",
airbyte_client_secret="<your-client-secret>"
)
)

agent = Agent("openai:gpt-4o")

@agent.tool_plain
@LinearConnector.tool_utils
async def linear_execute(entity: str, action: str, params: dict | None = None):
return await connector.execute(entity, action, params or {})

Open source

In open source mode, you provide API credentials directly to the connector.

Pydantic AI
from pydantic_ai import Agent
from airbyte_agent_sdk.connectors.linear import LinearConnector
from airbyte_agent_sdk.connectors.linear.models import LinearAuthConfig

connector = LinearConnector(
auth_config=LinearAuthConfig(
api_key="<Your Linear API key from Settings > API > Personal API keys>"
)
)

agent = Agent("openai:gpt-4o")

@agent.tool_plain
@LinearConnector.tool_utils
async def linear_execute(entity: str, action: str, params: dict | None = None):
return await connector.execute(entity, action, params or {})

Authentication

For all authentication options, see the connector's authentication documentation.

Version information

Connector version: 0.1.19