Get the FREE Ultimate OpenClaw Setup Guide →

mcp -make

MCP Server for GNU Make

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio wrale-mcp-server-make uvx mcp-server-make --make-path /absolute/path/to/Makefile --working-dir /absolute/path/to/working/dir

How to use

MCP Server Make provides a safe, controlled interface for LLMs to run make targets from any Makefile. It exposes a single tool, make, which executes specified targets and captures the output so that the LLM can reason about build steps, results, and errors. To use it, install the server and run it (via uvx as shown in the installation guide). Once running, you can invoke the make tool with a target name to run that target in the given Makefile and working directory. The server does not auto-discover targets; you should typically start by running make help to enumerate available targets, then inform the LLM of the exact targets and their purposes. This helps maintain safety and clarity when delegating build-related tasks to an LLM.

How to install

Prerequisites:\n- Python 3.8+ installed on your system.\n- pip available for Python package installation.\n- Optional: uv (or uvx) for running the MCP server in a managed runtime.\n\nInstallation steps:\n1) Install the MCP server package (Python):\n\n pip install mcp-server-make\n``\n\n2) Run the server using uvx (recommended) or directly with Python if you prefer. Example using uvx:\n\n uvx mcp-server-make ``\n\n3) If you prefer using uv (uv) to run the package directly, you can install it and run the package as a module:\n\n``` uv pip install mcp-server-make

or run with Python module if you prefer a direct module invocation (depending on your environment):

``\n\n4) Configure your MCP client to connect to the running server using the provided mcp_config snippet. Ensure the Makefile path and working directory you configure are accessible to the server process.\n\nNotes:\n- The server does not auto-discover targets; ensure your Makefile includes a help target or clearly state available targets to the LLM.\n- For security, constrain the Makefile execution context and paths to prevent unintended actions.\n

Additional notes

Tips and common issues:\n- Use make help to surface available targets before instructing the LLM about what to run.\n- Ensure the Makefile path (--make-path) and working directory (--working-dir) are absolute paths accessible by the server process.\n- If your Makefile relies on environment-specific tools, consider exporting those environment variables within the server's runtime or via the env block in the mcp_config.\n- For better UX, document the available targets within your project and provide a short description of each to the LLM prior to invoking builds.\n- If the LLM outputs unexecutable targets, request clarification and present a safe default (e.g., run make help).

Related MCP Servers

Sponsor this space

Reach thousands of developers