Skip to main content
Glama

MCP Server Make

CI Release PyPI version

make 기능을 제공하는 Model Context Protocol 서버입니다. 이 서버를 통해 LLM은 모든 Makefile의 make 타겟을 안전하고 제어된 방식으로 실행할 수 있습니다.

개요

이 서버는 Model Context Protocol을 통해 make 기능을 노출하여 Claude와 같은 LLM이 다음을 수행할 수 있도록 합니다:

  • 출력 캡처와 함께 안전하게 make 타겟 실행

  • 빌드 프로세스 이해 및 탐색

  • 개발 작업 지원

  • 오류 적절히 처리

  • 작업 디렉토리 컨텍스트 준수

MCP Server Make는 모든 유효한 Makefile과 함께 작동합니다. 포함된 표준 Makefile을 사용하거나 사용자 정의 빌드 스크립트를 사용할 수 있습니다.

Related MCP server: MCP Python Toolbox

빠른 시작

설치

uv 사용 (권장):

uv pip install mcp-server-make

pip 사용:

pip install mcp-server-make

기본 사용법

# Run with default Makefile in current directory
uvx mcp-server-make

# Run with specific Makefile and working directory
uvx mcp-server-make --make-path /path/to/Makefile --working-dir /path/to/working/dir

MCP 클라이언트 설정

Claude Desktop에서 사용하려면 Claude 설정(claude_desktop_config.json)에 다음을 추가하세요:

{
  "mcpServers": {
    "make": {
      "command": "uvx",
      "args": [
        "mcp-server-make",
        "--make-path", "/absolute/path/to/Makefile",
        "--working-dir", "/absolute/path/to/working/dir"
      ]
    }
  }
}

문서

MCP Server Make 사용에 대한 자세한 내용은 다음 문서를 참조하세요:

개발 워크플로우 향상

이 서버는 LLM이 make 기능에 직접 액세스할 수 있도록 하여 강력한 개발 워크플로우를 가능하게 합니다:

개발자를 위한 이점

  1. 자동화된 지원

    • Claude가 테스트 결과를 실행하고 해석하도록 합니다.

    • 빌드 시스템 제안 및 개선 사항을 얻습니다.

    • 반복적인 개발 작업을 자동화합니다.

  2. 프로젝트 관리

    • Claude가 의존성 업데이트를 처리하도록 합니다.

    • 릴리스 프로세스를 자동화합니다.

    • 일관된 코드 품질을 유지합니다.

Make 타겟 작업

MCP Server Make는 Makefile에서 사용 가능한 타겟을 자동으로 검색하지 않습니다. Claude와 효과적으로 사용하려면 다음을 수행하세요:

  1. make help로 시작: 잘 설계된 대부분의 Makefile에는 help 타겟이 포함되어 있습니다.

    Human: Please run make help to see what commands are available.
  2. Claude에게 타겟 알리기: 사용 가능한 타겟과 그 목적을 명시적으로 언급하세요.

    Human: Our project has these make targets: test, lint, format, build, and clean.
  3. 표준 규칙 사용: 많은 Makefile에 포함된 일반적인 타겟:

    • make test - 테스트 실행

    • make lint - 코드 품질 검사

    • make format - 코드 포맷팅

    • make build - 프로젝트 빌드

    • make clean - 빌드 아티팩트 정리

저장소에는 추가 유틸리티 타겟이 포함된 표준 Makefile이 포함되어 있습니다. 이러한 확장 기능이나 사용자 정의 타겟 생성에 대한 자세한 내용은 사용자 가이드를 참조하세요.

참고: Claude는 대화 간에 사용 가능한 타겟을 기억하지 못합니다. 각 대화 시작 시 타겟을 알려주어야 합니다.

통합 예시

Claude가 개발 작업을 돕는 방법은 다음과 같습니다:

Human: Can you run our test suite and format any code that needs it?

Claude: I'll help run the tests and format the code:

1. First, let's format the code:
[Calling make tool with args {"target": "format"}]
2 files reformatted, 3 files left unchanged

2. Now let's run the tests:
[Calling make tool with args {"target": "test"}]
Running tests...
4 passed, 0 failed

All formatting and tests completed successfully. The code is now properly formatted and all tests are passing.

사용 가능한 도구

이 서버는 단일 도구를 노출합니다:

  • make - Makefile에서 make 타겟 실행

    • target (문자열, 필수): 실행할 타겟 이름

기여

mcp-server-make 개선을 위한 기여를 환영합니다! 개발 환경 설정, 프로젝트 도구 사용 및 변경 사항 제출에 대한 자세한 지침은 CONTRIBUTING.md를 참조하세요.

라이선스

MIT 라이선스 - 자세한 내용은 LICENSE 파일을 참조하세요

Available Tools

1 tool
makeA

Run a make target from the Makefile

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesMake target to run
argsNoList of command line arguments (e.g. VAR=value)

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description does not mention potential side effects like file creation or environment changes, and with no annotations, the agent lacks awareness of destructive behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, direct sentence with no unnecessary words; highly concise and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the essential functionality for a simple tool, though it could mention that the Makefile must exist in the current working directory.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds no extra meaning beyond the schema's parameter descriptions, earning a baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (run) and the resource (make target from the Makefile), leaving no ambiguity about the tool's purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool or prerequisites, but given the absence of sibling tools, the description is minimally adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev0.4.0
    • Changedmake1 field changed
      • addedInput schema / properties / args
        Added value: +{
        +  "description": "List of command line arguments (e.g. VAR=value)",
        +  "items": {
        +    "type": "string"
        +  },
        +  "title": "Args",
        +  "type": "array"
        +}
  2. 1 tool updatev1.0.0
    • Addedmake

TDQS

A3.8/5.0

Scored across 1 tool

Disambiguation5/5

Only one tool exists, so there is no possibility of confusion between tools. The single tool 'make' is clearly distinct by default.

Naming Consistency5/5

With only one tool, naming consistency is perfect. The name 'make' directly describes the action, though it's a verb alone rather than verb_noun pattern.

Tool Count3/5

A single tool for a server named 'MCP Server Make' is borderline. While it directly serves the core purpose, the domain could benefit from additional tools like listing targets or showing help.

Completeness4/5

The tool fulfills its stated function of running a make target. Minor gaps exist (e.g., no way to list targets or specify options), but the core workflow is supported.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    A Model Context Protocol server that enables AI assistants like Claude to perform Python development tasks through file operations, code analysis, project management, and safe code execution.
    9
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.
    42 npm
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that enables LLMs to run ANY code safely in isolated Docker containers.
    122
    MIT