The MCP Source Tree Server generates a hierarchical JSON representation of a directory's file tree while applying intelligent filtering:
Generate File Tree: Creates a JSON-formatted structure of a specified directory
Filter with : Excludes files and directories based on
.gitignorerulesExclude Hidden Items: Automatically ignores directories and files starting with
.(e.g.,.git/)Preserve Hierarchy: Maintains the original directory structure in the output
Respects .gitignore patterns to exclude files and directories according to Git's ignore rules when generating the file tree.
MCP Source Tree Server
It is an MCP server that generates a file tree under a specified directory. It excludes certain files and directories, such as directories starting with . or conditions in .gitignore . By incorporating it into Claude, it helps Claude to quickly see the structure of the project and identify the files that Claude should edit.
function
Gets the file tree under the specified directory in JSON format.
Exclude files/directories according to
.gitignoreconditionsRepresents the directory structure as hierarchical JSON
Related MCP server: MCP Source Relation Server
set up
Prerequisites
Python 3.10 or later
uv
install
Claude for Desktop Settings
Add the following to claude_desktop_config.json :
Claude usage example
Please specify the root directory one level above src. When considering .gitignore , it is assumed that .gitignore exists directly under the root directory. It will work if you specify something like /Users/xxx/GitHub/xxx/ のソースツリーを確認してください
It responds as follows:
This allows Claude to quickly see the project structure.
File Exclusions
Directories beginning with . are automatically excluded. Files and directories that match a pattern in .gitignore are automatically excluded from the tree. For example, the following .gitignore configuration is valid: