Makefile

small MCP server to go Makefile -> MCP targets
  • typescript

0

GitHub Stars

typescript

Language

7 months ago

First Indexed

3 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "mparker3-makefilemcp": {
      "command": "node",
      "args": [
        "/absolute/path/to/makefilemcpserver/build/index.js",
        "/path/to/your/project"
      ]
    }
  }
}

You have an MCP server that exposes Makefile targets as callable tools for AI assistants. It runs your Make commands with arguments you provide, turning each Make target into a usable tool while keeping the execution local to trusted environments.

How to use

Connect your MCP client to the Makefile MCP server to call Make targets as tools. Each Make target becomes a separate tool named make_<target>, and you can pass optional arguments to customize behavior. You can start by listing targets in your Makefile and then invoking them through your MCP client to perform build, test, deployment, or other workflow steps directly from conversations or automation.

How to install

Prerequisites you need before installing this server are straightforward.

Install Node.js 16 or higher and ensure the make command is available in your PATH. You also need a Makefile in your project directory.

Step by step install flow you can follow.

# 1. Clone the project
git clone https://github.com/mparker3/makefilemcpserver.git
cd makefilemcpserver

# 2. Install dependencies
npm install

# 3. Build the server
npm run build

Configuration example

Configure the MCP server in your MCP configuration to point to the local stdio server command and its arguments. The server will interpret Makefile targets as tools when it starts.

{
  "mcpServers": {
    "makefilemcpserver": {
      "command": "node",
      "args": [
        "/absolute/path/to/makefilemcpserver/build/index.js",
        "/path/to/your/project"
      ]
    }
  }
}

Security considerations

This server executes shell commands via Make. It is intended for local use in trusted environments. Exercise caution about what you expose in your Makefile, since any accessible target can be invoked by MCP clients. Apply sanitization and access controls appropriate to your environment.

Notes on usage and behavior

During startup, the server reads your Makefile and exposes each target as a tool named make_<target>. Comments above targets become tool descriptions, helping you understand what each tool does. You can pass optional arguments to targets, with best-effort parsing to match the documented inputs.

Development

If you are developing or debugging locally, you can build and run the server while watching for changes and inspecting behavior.

# Install dependencies
npm install

# Build once
npm run build

# Build and watch for changes
npm run watch

# Run the MCP Inspector for debugging
npm run inspector

Troubleshooting

If targets do not appear as tools or commands fail, verify that your Makefile is in the expected location and that the Make targets have valid commands. Check that the server has permission to execute the Makefile commands and that the environment where you run the server allows shell execution.

Example Makefile targets exposed as tools

A Makefile with targets like build, test, and deploy will expose corresponding tools named make_build, make_test, and make_deploy. Each tool will execute the Make target with any arguments you supply.

Available tools

make_build

Runs the Make target named build and passes any supplied arguments to the command.

make_test

Runs the Make target named test and passes any supplied arguments to the command.

make_deploy

Runs the Make target named deploy and passes any supplied arguments to the command.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational