Get the FREE Ultimate OpenClaw Setup Guide →

yamcs

Model Context Protocol (MCP) Server for Yamcs Mission Control System

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio paulmramirez-yamcs-mcp-server uv --directory /path/to/yamcs-mcp-server run yamcs-mcp \
  --env MCP_HOST="127.0.0.1" \
  --env MCP_PORT="8000" \
  --env YAMCS_URL="http://localhost:8090" \
  --env MCP_TRANSPORT="stdio" \
  --env YAMCS_INSTANCE="simulator" \
  --env YAMCS_PASSWORD="password" \
  --env YAMCS_USERNAME="admin"

How to use

The Yamcs MCP Server exposes Yamcs capabilities as MCP tools and resources, enabling AI assistants and other MCP clients to interact with Yamcs through a standardized interface. It implements FastMCP 2.x with a modular architecture, providing access to a Mission Database (MDB), TM/TC processing, link management, object storage, instance management, and alarm management. Tools are organized by category (MDB, Processor, Link, Instance, Storage, Alarm, Command) and can be queried or invoked to list resources, describe details, or execute actions against a running Yamcs instance. The server also exposes read-only resources for quick status checks and discovery of available capabilities. To use it, configure the MCP bridge (for example in Claude Desktop) to point at the Yamcs MCP server and supply any necessary Yamcs connection credentials and server-specific settings. The server will translate MCP requests into Yamcs API calls and return structured responses that clients can present to users.

How to install

Prerequisites:

  • Python 3.12 or higher
  • A running Yamcs server instance (local or remote)
  • uv package manager (recommended) or pip

Install and run with uv (recommended):

# Clone the repository
git clone https://github.com/PaulMRamirez/yamcs-mcp-server.git
cd yamcs-mcp-server

# Install dependencies with uv
uv sync

# Run the server (from project root, using the uv-based entry point as configured in README)
uv run yamcs-mcp

Install and run with pip (editable install):

# Clone the repository
git clone https://github.com/PaulMRamirez/yamcs-mcp-server.git
cd yamcs-mcp-server

# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install the package in editable mode
pip install -e .

# Run the server
yamcs-mcp

Running Yamcs (optional, for local testing):

# Run Yamcs in a container (example with simulator data)
docker run -d --name yamcs -p 8090:8090 yamcs/example-simulation

Notes:

  • Ensure YAMCS_URL, YAMCS_INSTANCE, and credentials are configured either via environment variables or a .env file.
  • The MCP transport and host/port can be adjusted in the environment as needed.
  • For development, you can run in demo mode if a Yamcs server is not available.

Additional notes

  • The MCP server exposes a comprehensive set of tools across MDB, Processor, Link, Storage, Instance, Alarm, and Command categories. Use the Available Tools section in the README as a reference to discover exact tool names.
  • If you encounter connection issues to Yamcs, verify that YAMCS_URL, YAMCS_INSTANCE, and credentials are correct and that the Yamcs instance is reachable from the MCP server host.
  • Environment variables can be placed in a .env file or provided directly in the mcp_config env map; the server will read them at startup.
  • When using uv, the --directory argument must point to the yamcs-mcp-server project root so uv can locate the entrypoint named yamcs-mcp.
  • For Claude Desktop or other clients, ensure the MCP host/port in the client configuration matches MCP_HOST and MCP_PORT values used by the Yamcs MCP server.

Related MCP Servers

Sponsor this space

Reach thousands of developers