@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
git clone https://github.com/rog0x/mcp-file-tools.git
cd mcp-file-tools
npm install
npm run build
Configuration
Claude Code
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:
{
"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