list_allowed_directories
Check which directories the Project Explorer MCP Server can access to understand available exploration paths before using other tools.
Instructions
Returns the list of directories that this MCP server is allowed to access. This is useful for understanding which directories can be explored or searched before attempting to use other tools. The allowed directories are configured when the server starts and cannot be modified at runtime.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/list-allowed.ts:15-38 (handler)The async handler function that constructs and returns a markdown-formatted list of allowed directories as MCP tool response content.export async function handleListAllowed(args: any, allowedDirectories: string[]) { let result = "# Allowed Directories\n\n"; if (allowedDirectories.length === 0) { result += "No directories are currently allowed."; } else { result += `This MCP server has access to ${allowedDirectories.length} director${allowedDirectories.length === 1 ? 'y' : 'ies'}:\n\n`; allowedDirectories.forEach((dir, index) => { result += `${index + 1}. ${dir}\n`; }); result += "\nYou can use these directories with other tools like explore_project, search_files, etc."; } return { content: [ { type: "text", text: result } ] }; }
- src/list-allowed.ts:4-12 (schema)The tool object definition including name, description, and empty input schema (no parameters required).export const listAllowedTool = { name: "list_allowed_directories", description: "Returns the list of directories that this MCP server is allowed to access. This is useful for understanding which directories can be explored or searched before attempting to use other tools. The allowed directories are configured when the server starts and cannot be modified at runtime.", inputSchema: { type: "object", properties: {}, required: [] } };
- src/index.ts:53-54 (registration)Switch case in the CallToolRequestSchema handler that routes execution to the list_allowed_directories handler function.case "list_allowed_directories": return await handleListAllowed(args, ALLOWED_DIRECTORIES);
- src/index.ts:34-43 (registration)Inclusion of the listAllowedTool in the response to ListToolsRequestSchema, registering it for discovery.return { tools: [ exploreProjectTool, listAllowedTool, searchTool, renameFileTool, deleteFileTool, checkOutdatedTool ] };