Get the FREE Ultimate OpenClaw Setup Guide →

schedcp

MCP Server for Linux Scheduler Management and Auto optimization

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio eunomia-bpf-schedcp bash -lc ./mcp/target/release/schedcp \
  --env SCHEDCP_SUDO_PASSWORD="sudo password if required for privileged operations"

How to use

SchedCP provides an MCP server that enables AI-assisted optimization of Linux scheduler behavior via the sched-ext framework. The server exposes a set of MCP tools for managing schedulers, profiling workloads, and measuring performance across different scheduling strategies. Typical tools include listing available schedulers, starting a scheduler with custom configuration, stopping running schedulers, monitoring execution status and system metrics, and creating or verifying custom BPF schedulers. You can interact with the server using the built MCP CLI (schedcp-cli) to list, run, monitor, and manage schedulers. The goal is to let an AI agent select and synthesize appropriate schedulers for a given workload and track performance in real time.

To use the MCP server, start it (the binary is produced in the mcp crate) and then interact with the CLI shipped alongside the project. Example commands include listing schedulers, running a chosen scheduler with elevated privileges when needed, and monitoring system metrics during workload execution. The included workload workflows and autotune integration enable end-to-end optimization where workloads are profiled, scheduler options are evaluated, and the best-performing scheduler is deployed and observed for ongoing performance data.

How to install

Prerequisites:

  • Linux kernel 6.12+ with sched-ext support
  • Rust toolchain (stable recommended)
  • Git

Installation steps:

  1. Clone the repository and fetch submodules git clone https://github.com/eunomia-bpf/schedcp cd schedcp git submodule update --init --recursive scheduler/scx

  2. Build dependencies and components

    Build schedulers

    cd scheduler && make && make install && cd ..

    Build autotune (optional for autotuning workflows)

    cd autotune && cargo build --release && cd ..

    Build MCP server (schedcp)

    cd mcp && cargo build --release && cd ..

  3. Run the MCP server

    • Ensure prerequisites are running (as needed by your environment)
    • Start the MCP server binary produced in the mcp crate ./mcp/target/release/schedcp
  4. Optional: use MCP CLI to interact with the server ./mcp/target/release/schedcp-cli list ./mcp/target/release/schedcp-cli run <scheduler-name> --sudo ./mcp/target/release/schedcp-cli monitor

Additional notes

Tips and notes:

  • The environment often requires a sudo password for privileged operations; you can set SCHEDCP_SUDO_PASSWORD in your environment to streamline prompts.
  • The sched-ext framework and its workloads have separate dependencies; ensure you’ve pulled submodules and built the scheduler components before starting the MCP server.
  • The README references a .mcp.json for details; check the repository for MCP configuration examples and integration guidance.
  • If you encounter kernel or BPF compilation issues, verify kernel headers and BPF tooling are installed on your system.
  • For workload optimization, you can use autotune to automatically profile workloads and generate scheduler configurations, feeding results into the MCP server workflow.

Related MCP Servers

Sponsor this space

Reach thousands of developers