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
| Parameter | Type | Required | Description | Examples |
|---|---|---|---|---|
path | string | No | Directory path to pack | /path/to/repo |
style | enum | No | Output format style | xml, markdown, plain |
compress | boolean | No | Compress output to reduce token count | true, false |
include | string | No | Files to include (glob pattern) | *.md,*.ts,*.js, *.py, src/**/*.go |
ignore | string | No | Files to exclude (glob pattern) | *test*,*spec*,dist/**,build/** |
remote | string | No | Remote repository URL to process | https://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:
- First check size:
use repomix-estimate tool - If size is reasonable:
use repomix tool - If too large, try with compression:
use repomix-estimate tool with compress=true - 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
