Back to Browse

Jlink MCP Server

Developer ToolsModerate6.6MCP RegistryLocal
Free

Server data from the Official MCP Registry

Debug embedded firmware on real hardware: J-Link probes, Cortex-M faults, RTT logs, GDB.

About

Debug embedded firmware on real hardware: J-Link probes, Cortex-M faults, RTT logs, GDB.

Security Report

6.6
Moderate6.6Moderate Risk

jlink-mcp is a well-engineered MCP server for embedded device debugging with proper architecture and thoughtful security practices. The codebase demonstrates strong quality: comprehensive input validation via Zod, appropriate error handling, no hardcoded credentials, secure token management through environment variables, and hardware-tested functionality. Permissions are appropriately scoped to the server's debugging purpose (process spawning for probe backends, network access for GDB/RTT/telnet, file I/O for firmware and config). Minor code quality observations (broad exception handling in a few places, verbose logging patterns) are typical for a complex system and do not create security risks. Supply chain analysis found 2 known vulnerabilities in dependencies (0 critical, 1 high severity). Package verification found 1 issue.

3 files analyzed · 6 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

network_websocket

Check that this permission is expected for this type of plugin.

env_vars

Check that this permission is expected for this type of plugin.

File System Read

Reads files on your machine. Normal for tools that analyze or process local data.

File System Write

Writes or modifies files on your machine. Check that this is expected for the tool.

process_spawn

Check that this permission is expected for this type of plugin.

system_info

Check that this permission is expected for this type of plugin.

What You'll Need

Set these up before or after installing:

Target device name, exactly as J-Link spells it (e.g. nRF52840_XXAA, STM32F407VG). Use the search_devices tool to find it.Optional

Environment variable: JLINK_DEVICE

Serial number of a specific probe, when more than one is attached.Optional

Environment variable: JLINK_SERIAL

CMSIS-SVD file for the target. Without it, peripheral reads are undecoded hex.Optional

Environment variable: SVD_PATH

Address of the firmware's _SEGGER_RTT symbol. Lets RTT survive a reset or flash.Optional

Environment variable: JLINK_RTT_ADDR

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-klievan-jlink-mcp": {
      "env": {
        "SVD_PATH": "your-svd-path-here",
        "JLINK_DEVICE": "your-jlink-device-here",
        "JLINK_SERIAL": "your-jlink-serial-here",
        "JLINK_RTT_ADDR": "your-jlink-rtt-addr-here"
      },
      "args": [
        "-y",
        "jlink-mcp"
      ],
      "command": "npx"
    }
  }
}

Reviews

No reviews yet

Be the first to review this server!