Command Palette

Search for a command to run...

UnylyUnyly
Browse all

SystemDeskMCP

FreeNot checked

MCP Server for controlling dSPACE SystemDesk

GitHubEmbed

About

MCP Server for controlling dSPACE SystemDesk

README

This MCP server automates dSPACE SystemDesk through its COM automation interface. It covers the SystemDesk lifecycle, project operations, and AUTOSAR file import/validation.

SystemDesk acts as a strong partner for AI-driven AUTOSAR generation, where AI agents create comprehensive architecture descriptions and SystemDesk ensures correctness, consistency, and compliance through its robust validation capabilities.

Prerequisites

  • Installed dSPACE SystemDesk with a valid license
  • Python 3.10 or newer
  • uv, the Python package and project manager used to create the environment, install dependencies, and run the server from this checkout. Install it from the official Astral documentation: https://docs.astral.sh/uv/getting-started/installation/
  • An MCP client (e.g. VS Code, Cursor, Claude Desktop)

Installation

  1. Open the repository/folder.
  2. Create the project environment and install dependencies from pyproject.toml using the following command:
uv sync

Using with an MCP Client

  1. In your MCP client (e.g. VS Code, Claude Code, Cursor, Claude Desktop), add a new MCP server.

  2. Configure it as a stdio MCP server using the following command:

     path\to\this\cloned\repo\SystemDeskMCP.cmd
    

    For example, as a .vscode/mcp.json entry:

    {
     "servers": {
      "SystemDeskMCP": {
       "type": "stdio",
       "command": "path\\to\\this\\cloned\\repo\\SystemDeskMCP.cmd",
       "args": []
      }
     }
    }
    
  3. Reconnect/reload MCP servers in your client.

  4. Run a quick check prompt, for example: "Call start_systemdesk() and report the result."

Usage (Tool Order)

Recommended flow:

  1. start_systemdesk()
  2. create_project(project_path, project_name) or open an existing project
  3. import_autosar_file(file_path)
  4. validate_autosar(output_format="markdown" | "json")
  5. close_project(save_project=True)
  6. close_systemdesk(save_project=True)

Important:

  • start_systemdesk() must be called before any other SystemDesk tool.
  • import_autosar_file only supports files with the .arxml extension.
  • If SystemDesk shows blocking dialogs, startup/COM access may fail transiently.

Development Setup

Create the project environment and install the development dependencies from pyproject.toml using the following command:

uv sync --extra dev

Running Tests

uv run pytest

To also collect coverage:

uv run pytest --cov=systemdesk_mcp

For an end-to-end smoke test against an existing SystemDesk installation, use the prompt in .github/prompts/smoke-test.prompt.md.

Available MCP Tools

  • start_systemdesk()
  • get_systemdesk_status()
  • close_systemdesk(save_project=True)
  • create_project(project_path, project_name)
  • close_project(save_project=True)
  • import_autosar_file(file_path)
  • validate_autosar(output_format="markdown" | "json")

Extending the Server

Add a new tool by defining a function decorated with @mcp.tool() in src/systemdesk_mcp/server.py:

@mcp.tool()
def my_new_tool(param: str) -> str:
    """Description shown to the MCP client."""
    app = _get_app()  # retrieve the active COM connection
    # ... call app.* COM methods ...
    return "result"

Use _get_app() to access the live SystemDesk COM object.

Troubleshooting

  • win32com is not installed: run uv sync to install pywin32
  • class not registered / invalid class string: check SystemDesk installation/COM registration
  • blocked / rejected: close open dialogs in SystemDesk and try again
  • access denied: start the MCP server with elevated privileges if needed

File Overview

  • src/systemdesk_mcp/server.py: MCP server and tools
  • tests/: unit tests and ARXML test fixtures
  • pyproject.toml: project metadata and Python dependencies (managed with uv)
  • SystemDeskMCP.cmd: Convenience launcher used by MCP clients
  • .github/prompts/smoke-test.prompt.md: end-to-end smoke test prompt

from github.com/dspace-group/SystemDeskMCP

Installing SystemDeskMCP

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/dspace-group/SystemDeskMCP

FAQ

Is SystemDeskMCP MCP free?

Yes, SystemDeskMCP MCP is free — one-click install via Unyly at no cost.

Does SystemDeskMCP need an API key?

No, SystemDeskMCP runs without API keys or environment variables.

Is SystemDeskMCP hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install SystemDeskMCP in Claude Desktop, Claude Code or Cursor?

Open SystemDeskMCP on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare SystemDeskMCP with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs