Enables conversion of Python code into Abstract Syntax Trees for precise code structure visualization and analysis
Provides parsing capabilities for Ruby code into Abstract Syntax Trees, allowing for detailed code structure analysis
Supports parsing Rust code into Abstract Syntax Trees, enabling detailed structural analysis of Rust programs
Table of Contents
MCP Server: code-to-tree
The code-to-tree server's goals are:
- Give LLMs the capability of accurately converting source code into AST(Abstract Syntax Tree), regardless of language.
- One standalone binary should be everything the MCP client needs.
These goals imply:
- The underlying syntax parser should be versatile enough. Here we choose tree-sitter, and languages are: C, C++, Rust, Ruby, Go, Java, Python.
- The server should be able to carry all capabilities within itself, imposing minimum software dependencies on the end user's machine. Here we choose mcpc.
Screenshots:
The above screenshots are obtained by asking the question specified
in q.md
.
(IMPORTANT NOTE: LLMs have no responsibility of generating the identical result for the same question, you will likely get a completely different style or content. The screenshots or questions provided here are just for the reference)
Using code-to-tree
Before everthing, you need to have the code-to-tree executable on your
machine (code-to-tree.exe
for Windows, code-to-tree
for macOS),
you can download at GitHub release page or build it yourself. Once
downloaded, you configure your MCP clients to install it, check the section
"Configure MCP Clients" for more details.
Configure MCP Clients
Here we use Claude as the example.
Windows
In your Claude configuration
(C:\Users\YOUR_NAME\AppData\Roaming\Claude\claude_desktop_config.json
),
specify the location of code-to-tree.exe
:
macOS
In your Claude configuration,
(~/Library/Application Support/Claude/claude_desktop_config.json
)
specify the location of code-to-tree
Building (Windows)
1. Prepare environment
- download & install MSYS2.
- open application "MSYS2 MINGW64"
- run
pacman -S make gcc git
2. Prepare tree-sitter libraries
Here we need to compile and install tree-sitter and all related grammars.
Clone them:
Compile and install them:
3. Build code-to-tree
Install mcpc:
Compile code-to-tree:
Building (macOS)
1. Prepare environment
- Xcode Command Line Tools
2. Prepare tree-sitter libraries
Here we need to compile and install tree-sitter and all related grammars.
Clone them:
Compile and install them:
3. Build code-to-tree
Install mcpc:
Compile code-to-tree:
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
A runtime-free MCP server that converts source code into AST🌲, regardless of language.
Related MCP Servers
- RustMIT License
- Python
- GoMIT License
- TypeScript