Skip to main content

Radicle MCP Server

PyPI version PyPI license Python versions

A Model Context Protocol (MCP) server for Radicle CLI with versioning support.

Features

  • Version Detection: Automatically detects Radicle CLI version at startup
  • Version Management: Supports semantic versioning with base definitions and incremental updates
  • Command Validation: Validates commands against version definitions
  • Deprecation Handling: Warns about deprecated/obsolete features
  • Hybrid Tool Approach: Dedicated tools for common commands + generic executor
  • Error Handling: Structured error responses with JSON output when possible

Supported Commands

Dedicated Tools

The server automatically generates dedicated MCP tools for all Radicle commands and subcommands based on the installed version. For Radicle 1.5.0, this includes 71 dedicated tools:

Main Commands:

  • rad_auth, rad_block, rad_checkout, rad_clean, rad_clone
  • rad_cob, rad_config, rad_follow, rad_fork, rad_help
  • rad_id, rad_inbox, rad_init, rad_inspect, rad_issue
  • rad_ls, rad_node, rad_patch, rad_path, rad_remote
  • rad_seed, rad_self, rad_stats, rad_sync, rad_unblock
  • rad_unfollow, rad_unseed

Subcommand Examples:

  • rad_issue_open, rad_issue_list, rad_issue_show, rad_issue_edit
  • rad_patch_open, rad_patch_list, rad_patch_show, rad_patch_merge
  • rad_node_start, rad_node_stop, rad_node_status, rad_node_logs
  • rad_config_get, rad_config_set, rad_config_schema
  • rad_cob_create, rad_cob_show, rad_cob_update, rad_cob_log

Generic Tool

  • rad_execute: Execute any rad command (fallback for unsupported commands)

Version Support

  • Supported Versions: 1.1.0, 1.2.0, 1.3.0, 1.4.0, 1.5.0
  • Version Resolution: Falls back to closest available version if exact match not found
  • Warning System: One-time warnings for version mismatches and deprecated features
  • Dynamic Tool Generation: Tools are generated based on the specific version's capabilities

Installation

pip install radicle-mcp-server

Development

# Clone the repository
git clone <repository-url>

# Install dependencies
cd radicle-mcp-server
uv sync

Running the Server

just run                    # Stdio transport (default)
just run-http              # HTTP transport on localhost:8000

Using UV Directly

uv run python -m src.server                    # Stdio transport
uv run python -m src.server --transport http   # HTTP transport

MCP Client Configuration

OpenCode

Add to your MCP configuration:

{
  "mcpServers": {
    "radicle": {
      "command": "radicle-mcp-server"
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "radicle": {
      "command": "radicle-mcp-server"
    }
  }
}

Development (from source)

If you're developing from source, use:

{
  "mcpServers": {
    "radicle": {
      "command": "uv",
      "args": ["run", "python", "-m", "src.server"],
      "cwd": "/path/to/radicle-mcp-server"
    }
  }
}

Usage

The server provides MCP tools that can be used with any MCP-compatible client. It automatically detects the installed Radicle CLI version and adapts its behavior accordingly.

Development

This project uses:

  • FastMCP: For MCP server implementation
  • uv: For dependency management
  • Python 3.13+: For modern type annotations

Versioning System

The versioning system uses YAML definitions stored in src/definitions/:

  • radicle-1.1.0.yaml through radicle-1.5.0.yaml: Complete command definitions for each version
  • schema.py: Validation schema and data structures
  • Each version file contains all available commands, subcommands, options, and examples

This design allows for efficient handling of semantic versioning while maintaining backward compatibility.

Metadata

Release files for radicle-mcp-server 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for radicle-mcp-server 0.1.6
File Size Uploaded Provenance
radicle_mcp_server-0.1.6.tar.gz 101.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for radicle-mcp-server 0.1.6
File Interpreter ABI Platform
radicle_mcp_server-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 142.8 kB

Release files / radicle_mcp_server-0.1.6.tar.gz

Download URL radicle_mcp_server-0.1.6.tar.gz
Size 101.1 kB
Tags Source
SHA-256 checksum
How to use checksums
a997c7b3e26caf1bd3951fd321d57ae91ff9bd86cc1bf1d0111d2cca9ca25291
BLAKE2b-256 checksum
How to use checksums
559536f4570cce7e7b1fd9d81bd56f0b650c92091160ce483f22a01e6c7b5eef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.16 {"installer":{"name":"uv","version":"0.9.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / radicle_mcp_server-0.1.6-py3-none-any.whl

Download URL radicle_mcp_server-0.1.6-py3-none-any.whl
Size 41.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8cf0075fadab75c930accc7d6cccd6d92ef3e04c7263e2dab737bea70358cdea
BLAKE2b-256 checksum
How to use checksums
40e09ed24ba68bde91fb381db3058815a2f70ff11a2cd7499d49e97c29ba3c8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.16 {"installer":{"name":"uv","version":"0.9.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for radicle-mcp-server 0.1.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page