mcp-server-tree-sitter
mcp-server-tree-sitter is hosted online, so all tools can be tested directly either in theInspector tabor in theOnline Client.
If you are the rightful owner of mcp-server-tree-sitter and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The MCP Tree-sitter Server is a Model Context Protocol server that provides code analysis capabilities using tree-sitter, designed to give AI assistants intelligent access to codebases with appropriate context management.
EvaluationTotal Score: 8/10
The agent demonstrates a strong understanding of its capabilities related to code exploration and analysis using the MCP server. It effectively requests necessary information to perform tasks such as project registration, file operations, code analysis, and language support. The responses are generally clear, concise, and directly address the user's requests, showcasing the agent's ability to guide users through complex tasks. However, the agent could improve by providing more detailed explanations of how it utilizes the provided information to perform tasks, offering users a clearer understanding of the processes involved. Additionally, mentioning prerequisites or potential limitations, such as supported programming languages or file types, would enhance the completeness of the responses. In some cases, the agent lacks specific implementation details, such as configuring server settings or diagnosing issues, which could be improved by including concrete steps or referencing official documentation. Overall, the agent is accurate and useful but could benefit from more detailed guidance and explanations.
Test case 1
Score: 9/10Can you register a new project for code exploration, list all the files in the project, and retrieve the abstract syntax tree (AST) for a specific file within this project?To help you with this, I'll need a few details:
- Project Path: The path to the directory where the project is located.
- Project Name: An optional name for the project (if you don't provide one, I'll use the directory name).
- File Path: The specific file within the project for which you want to retrieve the AST.
Once you provide these details, I can proceed with registering the project, listing the files, and retrieving the AST for the specified file.
Test case 2
Score: 9/10Can you search for a specific text pattern within a registered project and provide a report on the occurrences, including file names and line numbers where the pattern is found?To search for a specific text pattern within a registered project and provide a report on the occurrences, including file names and line numbers, I'll need to know the following details:
- The name of the registered project you want to search in.
- The text pattern you are looking for.
- Any specific file pattern or extensions you want to include in the search (e.g., only
.py
files). - Whether the search should be case-sensitive or not.
- Whether the pattern should match whole words only.
- If the pattern should be treated as a regular expression.
Once I have this information, I can proceed with the search and provide you with the report.
Test case 3
Score: 8/10Can you analyze the code complexity of a specific file within a project and provide insights on potential areas for optimization?To analyze the code complexity of a specific file within a project, I'll need to know the name of the project and the path to the file you want to analyze. Once I have that information, I can use the available tools to provide insights on potential areas for optimization. Could you please provide these details?
Test case 4
Score: 9/10Can you list all available languages supported by the server and check if a language parser is available for a specific language of your choice?The server supports the following languages:
- bash
- c
- C#
- clojure
- cpp
- css
- elixir
- elm
- go
- haskell
- html
- java
- javascript
- json
- kotlin
- lua
- markdown
- objective_c
- ocaml
- php
- proto
- python
- ruby
- rust
- scala
- scss
- sql
- swift
- typescript
- xml
- yaml
I checked for the availability of a parser for Python, and it is indeed available via the tree-sitter-language-pack. If you have any other requests or need further information, feel free to ask!
Test case 5
Score: 7/10Can you configure the server to optimize performance for a large-scale project and diagnose any potential configuration issues that may arise?To optimize the server for a large-scale project, we can adjust the configuration settings to enable parse tree caching, increase the maximum file size, and set an appropriate logging level. After configuring, we can diagnose any potential configuration issues.
Here's the plan:
-
Configure the server with the following settings:
- Enable parse tree caching.
- Set the maximum file size to a higher value, such as 100 MB.
- Set the logging level to "INFO" to balance between verbosity and performance.
-
Diagnose any potential configuration issues using the YAML configuration file.
Let's proceed with these steps. Do you have a specific path to a YAML configuration file that you'd like to use for diagnosis, or should I proceed with the configuration first?
-