Linear Automation via Rube MCP
Automate Linear operations through Composio's Linear toolkit via Rube MCP.
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Linear connection via
RUBE_MANAGE_CONNECTIONS with toolkit linear
- Always call
RUBE_SEARCH_TOOLS first to get current tool schemas
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLS responds
- Call
RUBE_MANAGE_CONNECTIONS with toolkit linear
- If connection is not ACTIVE, follow the returned auth link to complete Linear OAuth
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Manage Issues
When to use: User wants to create, search, update, or list Linear issues
Tool sequence:
LINEAR_GET_ALL_LINEAR_TEAMS - Get team IDs [Prerequisite]
LINEAR_LIST_LINEAR_STATES - Get workflow states for a team [Prerequisite]
LINEAR_CREATE_LINEAR_ISSUE - Create a new issue [Optional]
LINEAR_SEARCH_ISSUES / LINEAR_LIST_LINEAR_ISSUES - Find issues [Optional]
LINEAR_GET_LINEAR_ISSUE - Get issue details [Optional]
LINEAR_UPDATE_ISSUE - Update issue properties [Optional]
Key parameters:
team_id: Team ID (required for creation)
title: Issue title
description: Issue description (Markdown supported)
state_id: Workflow state ID
assignee_id: Assignee user ID
priority: 0 (none), 1 (urgent), 2 (high), 3 (medium), 4 (low)
label_ids: Array of label IDs
Pitfalls:
- Team ID is required when creating issues; use GET_ALL_LINEAR_TEAMS first
- State IDs are team-specific; use LIST_LINEAR_STATES with the correct team
- Priority uses integer values 0-4, not string names
2. Manage Projects
When to use: User wants to create or update Linear projects
Tool sequence:
LINEAR_LIST_LINEAR_PROJECTS - List existing projects [Optional]
LINEAR_CREATE_LINEAR_PROJECT - Create a new project [Optional]
LINEAR_UPDATE_LINEAR_PROJECT - Update project details [Optional]
Key parameters:
name: Project name
description: Project description
team_ids: Array of team IDs associated with the project
state: Project state (e.g., 'planned', 'started', 'completed')
Pitfalls:
- Projects span teams; they can be associated with multiple teams
3. Manage Cycles
When to use: User wants to work with Linear cycles (sprints)
Tool sequence:
LINEAR_GET_ALL_LINEAR_TEAMS - Get team ID [Prerequisite]
LINEAR_GET_CYCLES_BY_TEAM_ID / LINEAR_LIST_LINEAR_CYCLES - List cycles [Required]
Key parameters:
team_id: Team ID for cycle operations
number: Cycle number
Pitfalls:
- Cycles are team-specific; always scope by team_id
4. Manage Labels and Comments
When to use: User wants to create labels or comment on issues
Tool sequence:
LINEAR_CREATE_LINEAR_LABEL - Create a new label [Optional]
LINEAR_CREATE_LINEAR_COMMENT - Comment on an issue [Optional]
LINEAR_UPDATE_LINEAR_COMMENT - Edit a comment [Optional]
Key parameters:
name: Label name
color: Label color (hex)
issue_id: Issue ID for comments
body: Comment body (Markdown)
Pitfalls:
- Labels can be team-scoped or workspace-scoped
- Comment body supports Markdown formatting
5. Custom GraphQL Queries
When to use: User needs advanced queries not covered by standard tools
Tool sequence:
LINEAR_RUN_QUERY_OR_MUTATION - Execute custom GraphQL [Required]
Key parameters:
query: GraphQL query or mutation string
variables: Variables for the query
Pitfalls:
- Requires knowledge of Linear's GraphQL schema
- Rate limits apply to GraphQL queries
Common Patterns
ID Resolution
Team name -> Team ID:
1. Call LINEAR_GET_ALL_LINEAR_TEAMS
2. Find team by name in response
3. Extract id field
State name -> State ID:
1. Call LINEAR_LIST_LINEAR_STATES with team_id
2. Find state by name
3. Extract id field
Pagination
- Linear tools return paginated results
- Check for pagination cursors in responses
- Pass cursor to next request for additional pages
Known Pitfalls
Team Scoping:
- Issues, states, and cycles are team-specific
- Always resolve team_id before creating issues
Priority Values:
- 0 = No priority, 1 = Urgent, 2 = High, 3 = Medium, 4 = Low
- Use integer values, not string names
Quick Reference
| Task |
Tool Slug |
Key Params |
| List teams |
LINEAR_GET_ALL_LINEAR_TEAMS |
(none) |
| Create issue |
LINEAR_CREATE_LINEAR_ISSUE |
team_id, title, description |
| Search issues |
LINEAR_SEARCH_ISSUES |
query |
| List issues |
LINEAR_LIST_LINEAR_ISSUES |
team_id, filters |
| Get issue |
LINEAR_GET_LINEAR_ISSUE |
issue_id |
| Update issue |
LINEAR_UPDATE_ISSUE |
issue_id, fields |
| List states |
LINEAR_LIST_LINEAR_STATES |
team_id |
| List projects |
LINEAR_LIST_LINEAR_PROJECTS |
(none) |
| Create project |
LINEAR_CREATE_LINEAR_PROJECT |
name, team_ids |
| Update project |
LINEAR_UPDATE_LINEAR_PROJECT |
project_id, fields |
| List cycles |
LINEAR_LIST_LINEAR_CYCLES |
team_id |
| Get cycles |
LINEAR_GET_CYCLES_BY_TEAM_ID |
team_id |
| Create label |
LINEAR_CREATE_LINEAR_LABEL |
name, color |
| Create comment |
LINEAR_CREATE_LINEAR_COMMENT |
issue_id, body |
| Update comment |
LINEAR_UPDATE_LINEAR_COMMENT |
comment_id, body |
| List users |
LINEAR_LIST_LINEAR_USERS |
(none) |
| Current user |
LINEAR_GET_CURRENT_USER |
(none) |
| Run GraphQL |
LINEAR_RUN_QUERY_OR_MUTATION |
query, variables |
When to Use
This skill is applicable to execute the workflow or actions described in the overview.
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Source: sickn33/agentic-awesome-skills → skills/linear-automation/SKILL.md
Also appears in: sickn33/agentic-awesome-skills/plugins/agentic-awesome-skills/skills/linear-automation/SKILL.md, sickn33/agentic-awesome-skills/plugins/agentic-awesome-skills-claude/skills/linear-automation/SKILL.md
1---2name: linear-automation3description: Automate Linear tasks via Rube MCP (Composio): issues, projects, cycles, teams, labels. Always search tools first for current schemas.4---567# Linear Automation via Rube MCP89Automate Linear operations through Composio's Linear toolkit via Rube MCP.1011## Prerequisites1213- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)14- Active Linear connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `linear`15- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas1617## Setup1819**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.2021221. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds232. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `linear`243. If connection is not ACTIVE, follow the returned auth link to complete Linear OAuth254. Confirm connection status shows ACTIVE before running any workflows2627## Core Workflows2829### 1. Manage Issues3031**When to use**: User wants to create, search, update, or list Linear issues3233**Tool sequence**:341. `LINEAR_GET_ALL_LINEAR_TEAMS` - Get team IDs [Prerequisite]352. `LINEAR_LIST_LINEAR_STATES` - Get workflow states for a team [Prerequisite]363. `LINEAR_CREATE_LINEAR_ISSUE` - Create a new issue [Optional]374. `LINEAR_SEARCH_ISSUES` / `LINEAR_LIST_LINEAR_ISSUES` - Find issues [Optional]385. `LINEAR_GET_LINEAR_ISSUE` - Get issue details [Optional]396. `LINEAR_UPDATE_ISSUE` - Update issue properties [Optional]4041**Key parameters**:42- `team_id`: Team ID (required for creation)43- `title`: Issue title44- `description`: Issue description (Markdown supported)45- `state_id`: Workflow state ID46- `assignee_id`: Assignee user ID47- `priority`: 0 (none), 1 (urgent), 2 (high), 3 (medium), 4 (low)48- `label_ids`: Array of label IDs4950**Pitfalls**:51- Team ID is required when creating issues; use GET_ALL_LINEAR_TEAMS first52- State IDs are team-specific; use LIST_LINEAR_STATES with the correct team53- Priority uses integer values 0-4, not string names5455### 2. Manage Projects5657**When to use**: User wants to create or update Linear projects5859**Tool sequence**:601. `LINEAR_LIST_LINEAR_PROJECTS` - List existing projects [Optional]612. `LINEAR_CREATE_LINEAR_PROJECT` - Create a new project [Optional]623. `LINEAR_UPDATE_LINEAR_PROJECT` - Update project details [Optional]6364**Key parameters**:65- `name`: Project name66- `description`: Project description67- `team_ids`: Array of team IDs associated with the project68- `state`: Project state (e.g., 'planned', 'started', 'completed')6970**Pitfalls**:71- Projects span teams; they can be associated with multiple teams7273### 3. Manage Cycles7475**When to use**: User wants to work with Linear cycles (sprints)7677**Tool sequence**:781. `LINEAR_GET_ALL_LINEAR_TEAMS` - Get team ID [Prerequisite]792. `LINEAR_GET_CYCLES_BY_TEAM_ID` / `LINEAR_LIST_LINEAR_CYCLES` - List cycles [Required]8081**Key parameters**:82- `team_id`: Team ID for cycle operations83- `number`: Cycle number8485**Pitfalls**:86- Cycles are team-specific; always scope by team_id8788### 4. Manage Labels and Comments8990**When to use**: User wants to create labels or comment on issues9192**Tool sequence**:931. `LINEAR_CREATE_LINEAR_LABEL` - Create a new label [Optional]942. `LINEAR_CREATE_LINEAR_COMMENT` - Comment on an issue [Optional]953. `LINEAR_UPDATE_LINEAR_COMMENT` - Edit a comment [Optional]9697**Key parameters**:98- `name`: Label name99- `color`: Label color (hex)100- `issue_id`: Issue ID for comments101- `body`: Comment body (Markdown)102103**Pitfalls**:104- Labels can be team-scoped or workspace-scoped105- Comment body supports Markdown formatting106107### 5. Custom GraphQL Queries108109**When to use**: User needs advanced queries not covered by standard tools110111**Tool sequence**:1121. `LINEAR_RUN_QUERY_OR_MUTATION` - Execute custom GraphQL [Required]113114**Key parameters**:115- `query`: GraphQL query or mutation string116- `variables`: Variables for the query117118**Pitfalls**:119- Requires knowledge of Linear's GraphQL schema120- Rate limits apply to GraphQL queries121122## Common Patterns123124### ID Resolution125126**Team name -> Team ID**:127```1281. Call LINEAR_GET_ALL_LINEAR_TEAMS1292. Find team by name in response1303. Extract id field131```132133**State name -> State ID**:134```1351. Call LINEAR_LIST_LINEAR_STATES with team_id1362. Find state by name1373. Extract id field138```139140### Pagination141142- Linear tools return paginated results143- Check for pagination cursors in responses144- Pass cursor to next request for additional pages145146## Known Pitfalls147148**Team Scoping**:149- Issues, states, and cycles are team-specific150- Always resolve team_id before creating issues151152**Priority Values**:153- 0 = No priority, 1 = Urgent, 2 = High, 3 = Medium, 4 = Low154- Use integer values, not string names155156## Quick Reference157158| Task | Tool Slug | Key Params |159|------|-----------|------------|160| List teams | LINEAR_GET_ALL_LINEAR_TEAMS | (none) |161| Create issue | LINEAR_CREATE_LINEAR_ISSUE | team_id, title, description |162| Search issues | LINEAR_SEARCH_ISSUES | query |163| List issues | LINEAR_LIST_LINEAR_ISSUES | team_id, filters |164| Get issue | LINEAR_GET_LINEAR_ISSUE | issue_id |165| Update issue | LINEAR_UPDATE_ISSUE | issue_id, fields |166| List states | LINEAR_LIST_LINEAR_STATES | team_id |167| List projects | LINEAR_LIST_LINEAR_PROJECTS | (none) |168| Create project | LINEAR_CREATE_LINEAR_PROJECT | name, team_ids |169| Update project | LINEAR_UPDATE_LINEAR_PROJECT | project_id, fields |170| List cycles | LINEAR_LIST_LINEAR_CYCLES | team_id |171| Get cycles | LINEAR_GET_CYCLES_BY_TEAM_ID | team_id |172| Create label | LINEAR_CREATE_LINEAR_LABEL | name, color |173| Create comment | LINEAR_CREATE_LINEAR_COMMENT | issue_id, body |174| Update comment | LINEAR_UPDATE_LINEAR_COMMENT | comment_id, body |175| List users | LINEAR_LIST_LINEAR_USERS | (none) |176| Current user | LINEAR_GET_CURRENT_USER | (none) |177| Run GraphQL | LINEAR_RUN_QUERY_OR_MUTATION | query, variables |178179## When to Use180This skill is applicable to execute the workflow or actions described in the overview.181182## Limitations183- Use this skill only when the task clearly matches the scope described above.184- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.185- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.186187---188189**Source:** [`sickn33/agentic-awesome-skills`](https://github.com/sickn33/agentic-awesome-skills) → `skills/linear-automation/SKILL.md`190191**Also appears in:** `sickn33/agentic-awesome-skills/plugins/agentic-awesome-skills/skills/linear-automation/SKILL.md`, `sickn33/agentic-awesome-skills/plugins/agentic-awesome-skills-claude/skills/linear-automation/SKILL.md`