space-mcp

space-mcp

MCP server for JetBrains Space merge requests and Patronus CI dry runs, enabling creation, viewing, and management of merge requests as well as starting and monitoring CI dry runs.

Category
Visit Server

README

Space MCP

MCP server and CLI for JetBrains Space merge requests and Patronus CI dry runs.

Installation

Install uv, then:

uv tool install git+https://github.com/bindreams/space-mcp.git

This installs two entry points:

Command Purpose
space CLI for merge requests, CI runs, and auth
space-mcp MCP server (stdio transport)

Authentication

A JetBrains Space personal token is required. Generate one at Personal Tokens.

Token is resolved in order:

  1. SPACE_TOKEN environment variable
  2. OS keyring (stored via space auth login)
  3. ~/.config/space/credentials.json (plaintext fallback)
space auth login              # store token in keyring (prompted)
space auth login --token PAT  # non-interactive
space auth status             # show token source and detected context
space auth logout             # remove stored credentials

During login you will also be offered to authenticate Docker with registry.jetbrains.team.

MCP Tools

Tool Description Parameters
get_merge_request Get MR details (title, state, author, reviewers) project, repository, review_id
get_merge_requests List MRs for a repository project, repository, branch?, state?, limit?
get_merge_request_timeline Full MR timeline: comments, reviews, dry run results project, repository, review_id
put_merge_request Create a new merge request project, repository, source_branch, target_branch, title, description?
post_close_merge_request Close a merge request project, review_id
post_reopen_merge_request Reopen a closed merge request project, review_id
get_attachment Download a file attachment from MR discussion attachment_id
get_patronus_runs List Patronus runs (dry runs / safe merges) for an MR project, review_id
get_patronus_run Run details with TeamCity checks and problems run_id
put_patronus_dry_run Start a CI dry run for an MR project, review_id
post_cancel_patronus_run Cancel a running Patronus run run_id

Most tools return YAML; timeline returns Markdown. Parameters marked with ? are optional.

MCP server configuration

First, authenticate via the CLI — the MCP server picks up stored credentials automatically:

space auth login

Then add to .mcp.json (project) or ~/.claude.json (global):

{
  "mcpServers": {
    "space": {
      "command": "space-mcp"
    }
  }
}

CLI

Global options: -P/--project, -R/--repo, --json, --no-color. Project and repo are auto-detected from the git remote when inside a Space repository.

space mr — Merge requests

space mr view [REF]        # MR details (number, URL, branch, or current branch)
space mr list              # list MRs (-s open|closed|merged|all, -A author, -H branch)
space mr create BRANCH     # create MR from branch (-t title, -b base, -d description)
space mr close [REF]       # close an MR
space mr reopen [REF]      # reopen a closed MR
space mr timeline [REF]    # full timeline with discussions and dry run results
space mr checks [REF]      # Patronus CI check status (--watch to poll)
space mr diff [REF]        # diff between target and source (--stat, --name-only)
space mr checkout [REF]    # fetch and checkout the MR branch
space mr merge [REF]       # safe merge via Patronus (--rebase, --squash, --dry-run)
space mr download ID       # download attachment by ID (-o output path)

space run — Patronus CI runs

space run list            # list runs for current branch (-b branch, -B base)
space run view RUN        # run details with TeamCity checks (UUID or URL)
space run start [REF]     # start dry run (--merge, --rebase, --squash, --watch)
space run cancel RUN      # cancel a running Patronus run
space run watch RUN       # live progress with terminal animation

space auth — Authentication

space auth login          # store token (--token, --insecure-storage)
space auth logout         # remove credentials
space auth status         # show token source and context

space api — Raw API access

space api /api/http/...                   # authenticated GET to Space
space api /app/rest/... --patronus        # authenticated GET to Patronus
space api /api/http/... -X POST -f key=val  # POST with JSON body

space status — Dashboard

space status              # MR and latest CI run for current branch

Development

See CONTRIBUTING.md for development setup and testing.

License

Copyright 2026, Anna Zhukova

This project is licensed under MPL-2.0. The license text can be found at LICENSE.md.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured