io.github.rog0x/file
Dir tree, file stats, duplicates, LOC for AI agents
Open source Open in the app JSON README (API)
About
Dir tree, file stats, duplicates, LOC for AI agents
Details
- Kind
- MCP servers
- Topic
- No topic detected
- Publisher
- rog0x
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 1.0.1
- Last push
- 2026-03-21T20:22:01Z
- Repository state
- ativo
- Language
- TypeScript
- License
- MIT
- Added
- 2026-08-29 04:01:19
- Updated
- 2026-08-29 04:01:19
- Origin id
io.github.rog0x/file
README
# @rog0x/mcp-file-tools
MCP server providing file and directory analysis tools for AI agents. Gives Claude (and other MCP-compatible AI) the ability to explore, analyze, and search file systems.
## Tools
| Tool | Description |
|------|-------------|
| `dir_tree` | Generate a visual directory tree structure with configurable depth and ignore patterns |
| `file_stats` | Analyze a directory: total files, size breakdown by extension, largest/newest/oldest files |
| `duplicate_finder` | Find duplicate files by size + MD5 hash, report wasted space |
| `code_counter` | Count lines of code by language: code, comments, and blank lines (like cloc/scc) |
| `file_search` | Search files by name glob, content regex, size range, and date range |
## Installation
```bash
git clone https://github.com/rog0x/mcp-file-tools.git
cd mcp-file-tools
npm install
npm run build
```
## Configuration
### Claude Code
```bash
claude mcp add mcp-file-tools node /absolute/path/to/mcp-file-tools/dist/index.js
```
### Claude Desktop
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"mcp-file-tools": {
"command": "node",
"args": ["/absolute/path/to/mcp-file-tools/dist/index.js"]
}
}
}
```
## Tool Details
### dir_tree
Generate a visual directory tree like the `tree` command.
```
Parameters:
dir_path (required) - Absolute path to the directory
max_depth (optional) - Max depth to traverse (default: 5, 0 = unlimited)
ignore_patterns (optional) - Patterns to ignore (default: node_modules, .git, dist, etc.)
```
### file_stats
Get a comprehensive analysis of a directory's contents.
```
Parameters:
dir_path (required) - Absolute path to the directory
max_depth (optional) - Max depth to traverse (default: 10)
```
Returns: total files, total size, file counts by extension, top 10 largest files, top 10 newest/oldest files.
### duplicate_finder
Find duplicate files using size pre-filtering and MD5 hashing.
```
Parameters:
dir_path (required) - Absolute path to the directory
min_size (optional) - Minimum file size in bytes (default: 1)
max_depth (optional) - Max depth to traverse (default: 10)
```
Returns: duplicate groups with file paths, sizes, and total wasted space.
### code_counter
Count lines of code across 20+ languages with comment detection.
```
Parameters:
dir_path (required) - Absolute path to the directory
max_depth (optional) - Max depth to traverse (default: 10)
```
Supported languages: TypeScript, JavaScript, Python, Java, C/C++, C#, Go, Rust, Ruby, PHP, Swift, Kotlin, HTML, CSS, JSON, YAML, Markdown, Shell, SQL, Lua.
### file_search
Search for files using multiple criteria simultaneously.
```
Parameters:
dir_path (required) - Absolute path to the directory
name_pattern (optional) - Glob pattern (e.g. "**/*.ts")
content_pattern (optional) - Regex to search file contents
min_size (optional) - Minimum file size in bytes
max_size (optional) - Maximum file size in bytes
modified_after (optional) - ISO date string
modified_before (optional) - ISO date string
max_results (optional) - Max results (default: 100)
```
## License
MIT