Skip to main content
Glama
arclabs-studio

ARCLinearGitHub-MCP

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GITHUB_ORGYesGitHub organization name
DEFAULT_REPOYesDefault GitHub repository name
GITHUB_TOKENYesGitHub Personal Access Token
GITHUB_API_URLNoCustom GitHub API base URLhttps://api.github.com
LINEAR_API_KEYNoLinear API token (single-workspace mode)
LINEAR_API_URLNoCustom Linear API base URLhttps://api.linear.app
DEFAULT_PROJECTYesDefault Linear project key
REQUEST_TIMEOUTNoHTTP request timeout in seconds30
LINEAR_WORKSPACESNoJSON object mapping workspace names to API tokens (multi-workspace mode)

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
linear_list_issuesA

List issues from a Linear project.

Args: project: Project/team key (e.g., 'MYPROJECT'). Defaults to configured default_project. state: Optional state filter (e.g., 'In Progress', 'Todo', 'Done') limit: Maximum number of issues to return (default: 50)

Returns: Dictionary with list of issues and count

linear_get_issueA

Get details of a specific Linear issue.

Args: issue_id: Issue identifier (e.g., 'PROJ-123')

Returns: Dictionary with issue details or error

linear_create_issueA

Create a new issue in Linear.

Args: title: Issue title description: Optional issue description (supports Markdown) project: Project/team key. Defaults to configured default_project. priority: Priority level (1=Urgent, 2=High, 3=Normal, 4=Low) labels: Optional list of label names to apply

Returns: Dictionary with created issue details or error

linear_update_issueA

Update an existing Linear issue.

Args: issue_id: Issue identifier (e.g., 'PROJ-123') state: New state name (e.g., 'In Progress', 'Done') assignee: Assignee name or email title: New title priority: New priority (1=Urgent, 2=High, 3=Normal, 4=Low)

Returns: Dictionary with updated issue details or error

linear_list_statesA

List available workflow states for a project.

Args: project: Project/team key. Defaults to configured default_project.

Returns: Dictionary with list of states

linear_list_labelsA

List available labels for a project.

Args: project: Project/team key. Defaults to configured default_project.

Returns: Dictionary with list of labels

linear_list_workspacesA

List all configured workspaces and their teams.

Returns: Dictionary with workspace names and their associated teams

github_list_branchesA

List branches in a GitHub repository.

Args: repo: Repository name (defaults to configured default repo) limit: Maximum number of branches to return

Returns: Dictionary with list of branches

github_create_branchA

Create a branch following naming conventions.

Args: branch_type: Type of branch (feature, bugfix, hotfix, docs, spike, release) description: Short description for the branch name issue_id: Optional Linear issue ID (e.g., 'PROJ-123') repo: Repository name (defaults to configured default repo) base_branch: Base branch to create from (defaults to repo default branch)

Returns: Dictionary with created branch details or error

Example branch names: - feature/PROJ-123-user-authentication - bugfix/PROJ-456-login-crash - docs/update-readme

github_list_prsA

List pull requests in a repository.

Args: repo: Repository name (defaults to configured default repo) state: PR state filter ('open', 'closed', 'all') limit: Maximum number of PRs to return

Returns: Dictionary with list of pull requests

github_create_prA

Create a pull request with proper naming.

Args: branch: Head branch name title: PR title (will be formatted with issue_id if provided) body: PR description (optional) issue_id: Linear issue ID to link (e.g., 'PROJ-123') repo: Repository name (defaults to configured default repo) base_branch: Base branch (defaults to repo default branch) draft: Create as draft PR

Returns: Dictionary with created PR details or error

The PR title will be formatted as: '/: ' Example: 'Feature/PROJ-123: User Authentication'

github_get_prB

Get details of a specific pull request.

Args: pr_number: Pull request number repo: Repository name (defaults to configured default repo)

Returns: Dictionary with PR details or error

github_get_default_branchA

Get the default branch for a repository.

Args: repo: Repository name (defaults to configured default repo)

Returns: Dictionary with default branch name

workflow_start_featureA

Start a new feature workflow: create Linear issue and GitHub branch.

This is a convenience tool that combines:

  1. Creates a new issue in Linear

  2. Creates a properly named branch in GitHub

Args: title: Feature title (used for both issue and branch) description: Optional description for the Linear issue repo: GitHub repository name. Defaults to configured default_repo. project: Linear project/team key. Defaults to configured default_project. priority: Issue priority (1=Urgent, 2=High, 3=Normal, 4=Low) branch_type: Type of branch (default: 'feature')

Returns: Dictionary with created issue and branch details

workflow_validate_branch_nameA

Validate a branch name against naming conventions.

Args: branch_name: The branch name to validate

Returns: Dictionary with validation result and details

Valid branch format: /- Types: feature, bugfix, hotfix, docs, spike, release Examples: - feature/PROJ-123-user-authentication - bugfix/PROJ-456-login-crash - docs/update-readme

workflow_validate_commit_messageA

Validate a commit message against Conventional Commits format.

Args: message: The commit message to validate

Returns: Dictionary with validation result and details

Valid commit format: (): Types: feat, fix, docs, style, refactor, perf, test, chore, build, ci, revert Examples: - feat(auth): add user authentication - fix(map): resolve annotation crash - docs(readme): update installation steps

workflow_generate_branch_nameA

Generate a valid branch name following naming conventions.

Args: branch_type: Type of branch (feature, bugfix, hotfix, docs, spike, release) description: Short description for the branch issue_id: Optional Linear issue ID (e.g., 'PROJ-123')

Returns: Dictionary with generated branch name

Examples: - branch_type='feature', issue_id='PROJ-123', description='user authentication' -> 'feature/PROJ-123-user-authentication' - branch_type='docs', description='Update README' -> 'docs/update-readme'

workflow_generate_commit_messageB

Generate a valid commit message following Conventional Commits.

Args: commit_type: Type of commit (feat, fix, docs, etc.) subject: The commit subject/description scope: Optional scope of the commit

Returns: Dictionary with generated commit message

Examples: - commit_type='feat', scope='auth', subject='Add user authentication' -> 'feat(auth): add user authentication' - commit_type='fix', subject='Resolve annotation crash' -> 'fix: resolve annotation crash'

workflow_get_conventionsA

Get naming conventions reference.

Returns a reference of all naming conventions used by this MCP server.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/arclabs-studio/ARCLinearGitHub-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server