Repomix

Packs code repositories into a single, AI-friendly file using the repomix tool.

Repomix MCP Server

A Model Context Protocol (MCP) server that provides access to the repomix tool for packing repositories into AI-friendly files.

Security

  • Input paths: The server restricts file access to the directory from which it was started. Any attempts to access files outside this directory (like /etc/) will be denied.
  • Output files: All output is written to the system's temporary directory and automatically cleaned up after the contents are returned.
  • Remote URLs: Remote repository URLs are still allowed for processing.

Installation

npm install
npm run build

Usage

Claude Code

claude mcp add --scope user repomix node /path/to/repomix-mcp/dist/index.js

Claude Desktop

Add this server to your MCP client configuration in your claude_desktop_config.json:

{
  "mcpServers": {
    "repomix": {
      "command": "node",
      "args": ["/path/to/repomix-mcp/dist/index.js"]
    }
  }
}

Available Tools

Both tools accept the same parameters:

Parameters

ParameterTypeRequiredDescriptionExamples
pathstringNoDirectory path to pack/path/to/repo
styleenumNoOutput format stylexml, markdown, plain
compressbooleanNoCompress output to reduce token counttrue, false
includestringNoFiles to include (glob pattern)*.md,*.ts,*.js, *.py, src/**/*.go
ignorestringNoFiles to exclude (glob pattern)*test*,*spec*,dist/**,build/**
remotestringNoRemote repository URL to processhttps://github.com/user/repo

repomix-estimate

Estimate the size of repomix output without retrieving the content. Use this first to check if the output will fit in your context window.

Returns:

  • File size in KB/MB
  • Estimated token count (~4 characters per token)
  • Whether compression is enabled

repomix-estimate output

Repomix output size estimate:
- Size: 5.27 KB (0.01 MB)
- Estimated tokens: ~1,349
- Compression: disabled

Use the repomix tool with these same parameters to retrieve the actual content.

repomix

Pack a repository into a single, AI-friendly file. Returns the contents of the generated file.

Best Practice: Always use repomix-estimate first to check the output size, then use repomix with appropriate parameters (especially compress=true for large repos).

Example usage in Claude:

  1. First check size: use repomix-estimate tool
  2. If size is reasonable: use repomix tool
  3. If too large, try with compression: use repomix-estimate tool with compress=true
  4. Then retrieve: use repomix tool with compress=true

Workflow: Always estimate first, then retrieve only if the size fits your needs.

repomix output (first 15 lines)

This file is a merged representation of a subset of the codebase, containing specifically included files, combined into a single document by Repomix.

<file_summary>
This section contains a summary of this file.

<purpose>
This file contains a packed representation of the entire repository's contents.
It is designed to be easily consumable by AI systems for analysis, code review,
or other automated processes.
</purpose>

<file_format>
The content is organized as follows:
1. This summary section
2. Repository information

Related Servers