systemd-coredump MCP Server - UBOS

✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

systemd-coredump MCP Server

A Model Context Protocol (MCP) server for interacting with systemd-coredump functionality. This enables MCP-capable applications to access, manage, and analyze system core dumps.

npm version License: MIT

Features

  • List all available coredumps in the system
  • Get detailed information about specific coredumps
  • Extract coredump files to a specified location
  • Remove coredumps from the system

Prerequisites

  • Node.js 18+ and npm
  • systemd-coredump must be installed and configured on the system
  • coredumpctl command-line utility must be available

Installation

From npm (recommended)

Global Installation

npm install -g @taskjp/server-systemd-coredump

Local Installation

npm install @taskjp/server-systemd-coredump

From Source

  1. Clone the repository or download the source code
  2. Install dependencies:
cd systemd-coredump-server
npm install
  1. Build the server:
npm run build

Configuration

Add the server to your MCP settings configuration file:

If installed from npm globally:

"systemd-coredump": {
  "command": "systemd-coredump-server",
  "args": [],
  "disabled": false,
  "autoApprove": []
}

If installed from npm locally:

"systemd-coredump": {
  "command": "node",
  "args": ["node_modules/@taskjp/server-systemd-coredump/build/index.js"],
  "disabled": false,
  "autoApprove": []
}

If installed from source:

"systemd-coredump": {
  "command": "node",
  "args": ["/path/to/systemd-coredump-server/build/index.js"],
  "disabled": false,
  "autoApprove": []
}

Usage

Available Tools

The server provides the following tools:

  1. list_coredumps: List all available coredumps in the system

    {
      "name": "list_coredumps"
    }
    
  2. get_coredump_info: Get detailed information about a specific coredump

    {
      "name": "get_coredump_info",
      "arguments": {
        "id": "2023-04-20 12:34:56-12345"
      }
    }
    
  3. extract_coredump: Extract a coredump to a file

    {
      "name": "extract_coredump",
      "arguments": {
        "id": "2023-04-20 12:34:56-12345",
        "outputPath": "/path/to/output/core.dump"
      }
    }
    
  4. remove_coredump: Remove a coredump from the system

    {
      "name": "remove_coredump",
      "arguments": {
        "id": "2023-04-20 12:34:56-12345"
      }
    }
    
  5. get_coredump_config: Get the current core dump configuration of the system

    {
      "name": "get_coredump_config"
    }
    

    This tool returns information about the current core dump configuration, including:

    • Whether core dumps are enabled
    • The current core pattern
    • The core size limit
    • Whether systemd is handling the core dumps
  6. set_coredump_enabled: Enable or disable core dump generation

    {
      "name": "set_coredump_enabled",
      "arguments": {
        "enabled": true
      }
    }
    

    Setting enabled to true will enable core dumps, while false will disable them. Note: This changes the ulimit settings for the current shell. For permanent system-wide changes, root privileges and modification of system configuration files would be required.

  7. get_stacktrace: Get stack trace from a coredump using GDB

    {
      "name": "get_stacktrace",
      "arguments": {
        "id": "2023-04-20 12:34:56-12345"
      }
    }
    

    This tool uses GDB to extract a formatted stack trace from the coredump. Note: Requires the GDB debugger to be installed on the system.

Available Resources

The server exposes two types of resources:

  1. Coredump Information

    • URI format: coredump:///<id>
    • Returns JSON with detailed coredump information
  2. Stack Traces

    • URI format: stacktrace:///<id>
    • Returns a formatted stack trace from the coredump

Where <id> is the unique identifier for a coredump in the format: <timestamp>-<pid>.

For example:

coredump:///2023-04-20 12:34:56-12345
stacktrace:///2023-04-20 12:34:56-12345

Note on Permissions

Some operations may require elevated privileges, especially when extracting or removing coredumps. Ensure the user running the MCP server has appropriate permissions to access system coredumps.

License

MIT

Featured Templates

View More
Data Analysis
Pharmacy Admin Panel
232 1461
AI Assistants
Talk with Claude 3
153 1002
Customer service
Multi-language AI Translator
135 523
AI Characters
Sarcastic AI Chat Bot
126 1228

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.