project-explorer-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| dir_treeA | Returns a compact file and folder tree with depth limitation. Agent usage guidelines: - Use this tool when you need to get a quick overview of the file and folder structure of a project or directory. - Use when you need to display or analyze the hierarchy of files and folders up to a certain depth. - Do not use for reading file contents or for non-existent/relative paths. Path requirements: - The path must not contain URL-encoding (e.g., '%'). - The path must be absolute. - The path must exist on disk. Example paths: - Windows: "C:\Users\User\project" - Linux: "/home/user/project" Args: root_path (str): Absolute path to the root directory. max_depth (int): Maximum nesting depth. Default is 1. output_format (str | None): Output format ('json' or 'markdown'). Defaults to server setting (markdown by default). Returns: str | dict: File and folder tree in the requested format or error dict. |
| python_outlineA | Returns an outline for each Python file: imports, classes, functions, docstrings. Agent usage guidelines: - Use this tool when you need to understand the structure of Python code files, such as for code review, navigation, or documentation generation. - Use when you need to extract or display the list of imports, classes, functions, and their docstrings from Python files. - Do not use for non-Python files or for reading file contents in detail. Path requirements: - Paths must not contain URL-encoding (e.g., '%'). - Paths must be absolute. - Paths must exist on disk. Example paths: - Windows: "C:\Users\User\project\main.py" - Linux: "/home/user/project/main.py" Args: paths (list[str]): List of absolute paths to Python files. output_format (str | None): Output format ('json' or 'markdown'). Defaults to server setting (markdown by default). Returns: dict | str: Outline for each file in the requested format. |
| markdown_outlineA | Returns an outline for each Markdown file: headings, levels, line. Agent usage guidelines: - Use this tool when you need to extract or display the structure of Markdown documents, such as for navigation, summary, or documentation analysis. - Use when you need to list headings, their levels, and line numbers in Markdown files. - Do not use for non-Markdown files or for reading the full content of the file. Path requirements: - Paths must not contain URL-encoding (e.g., '%'). - Paths must be absolute. - Paths must exist on disk. Example paths: - Windows: "C:\Users\User\project\README.md" - Linux: "/home/user/project/README.md" Args: paths (list[str]): List of absolute paths to Markdown files. output_format (str | None): Output format ('json' or 'markdown'). Defaults to server setting (markdown by default). Returns: dict | str: Outline for each file in the requested format. |
| openapi_list_operationsA | List operations from an OpenAPI specification file. Agent usage guidelines: - Use this tool when you need to explore the available API operations in an OpenAPI spec. - Use when you want to see endpoints, methods, and summaries without detailed schemas. - Do not use for getting detailed parameter or response information. Path requirements: - The path must not contain URL-encoding (e.g., '%'). - The path must be absolute. - The path must exist on disk and be a valid OpenAPI JSON or YAML file. Args: spec_path (str): Absolute path to the OpenAPI JSON or YAML file. output_format (str | None): Output format ('json' or 'markdown'). Defaults to server setting. filter_by_tag (str | None): Filter operations by tag. Only operations with this tag will be included. filter_by_method (str | None): Filter operations by HTTP method (e.g., 'GET', 'POST'). filter_by_path (str | None): Filter operations by path containing this substring (case-insensitive). limit (int): Maximum number of operations to return. Defaults to 50. offset (int): Number of operations to skip from the start. Defaults to 0. Examples: - To get operations related to users: {"spec_path": "/path/to/spec.json", "filter_by_path": "user"} - To get all GET operations: {"spec_path": "/path/to/spec.json", "filter_by_method": "GET"} - To get operations with a specific tag: {"spec_path": "/path/to/spec.json", "filter_by_tag": "users"} - To paginate through results: {"spec_path": "/path/to/spec.json", "limit": 20, "offset": 40} Returns: dict | str: For format_output="json": Dictionary containing operations list and metadata. - operations: list of operation dicts with method, path, operation_id, summary, tags - count: number of operations returned (after filtering and pagination) - total_count: total number of operations matching filters (before pagination) - error: error message if any, None otherwise For format_output="markdown": formatted markdown string |
| openapi_get_operation_detailsA | Get detailed information for specific OpenAPI operations. Agent usage guidelines: - Use this tool when you need detailed information about specific API operations. - Use selectors to target specific operations by operationId, method+path, or path. - Set expand_refs=True to resolve schema references for full schema details. - Choose format_output="json" for structured data, "markdown" for formatted output. Path requirements: - The path must not contain URL-encoding (e.g., '%'). - The path must be absolute. - The path must exist on disk and be a valid OpenAPI JSON or YAML file. Args: spec_path (str): Absolute path to the OpenAPI JSON or YAML file. selectors (list[str]): List of selectors. Each selector can be: - operationId (exact match) - "METHOD /path" (e.g. "GET /users/{id}") - just a path (e.g. "/users/{id}") to match all methods on that path expand_refs (bool): Whether to resolve local $ref references in schemas. Defaults to False. format_output (str | None): Output format ('json' or 'markdown'). Defaults to server setting. Returns: dict | str: For format_output="json": Dictionary containing operation details and metadata. - details: list of detailed operation records - count: number of matching operations - error: error message if any, None otherwise For format_output="markdown": formatted markdown string |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool targets a distinct resource: directory tree, Python code structure, Markdown structure, and OpenAPI operations (list vs. details). There is no overlap in purpose, and the descriptions clearly specify when to use each tool.
Most tools follow a descriptive prefix (dir, python, markdown, openapi), but the verb placement differs: 'python_outline' and 'markdown_outline' are noun-phrases, while 'openapi_list_operations' and 'openapi_get_operation_details' use verb + object. This is readable and somewhat predictable, but not perfectly consistent.
With 5 tools, the server is well-scoped for a project explorer, covering directory trees, Python and Markdown outlines, and OpenAPI exploration. Each tool serves a distinct purpose without redundancy.
The server provides good coverage of structural exploration for a project, including directory hierarchy, Python and Markdown outlines, and OpenAPI operations with both listing and detailed views. It lacks support for other file types (e.g., JavaScript, JSON), but this appears to be an intentional scope limitation.