Skip to main content
Glama
KazKozDev
by KazKozDev

create_directory

Create directories for organizing Markdown files in the Markdown Editor MCP Server. Specify a path to establish folders that structure your document hierarchy.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYes

Implementation Reference

  • Core implementation of the create_directory tool: validates path safety using _validate_path, resolves absolute path, creates directory with os.makedirs (exist_ok=True), returns success dict or error.
    async def create_directory(self, path: str) -> Dict[str, Any]:
        """Create directory"""
        # Validate path safety
        error = self._validate_path(path)
        if error:
            return {"error": error}
    
        try:
            abs_path = self._get_abs_path(path)
            os.makedirs(abs_path, exist_ok=True)
            return {"success": True, "path": path}
        except Exception as e:
            return {"error": str(e)}
  • Registers the create_directory tool in the MCP server's list_tools() handler, defining name, title, description (implied), inputSchema (path: string required), and outputSchema.
    Tool(
        name="create_directory",
        title="Create Directory",
        inputSchema={
            "type": "object",
            "properties": {
                "path": {
                    "type": "string",
                    "examples": ["./new_folder", "./docs/archive"],
                }
            },
            "required": ["path"],
            "additionalProperties": False,
        },
        outputSchema={
            "type": "object",
            "properties": {
                "success": {"type": "boolean"},
                "path": {"type": "string"},
            },
        },
    ),
  • JSON schema definitions for create_directory tool inputs (object with required 'path' string) and outputs (object with 'success' boolean and 'path' string).
    inputSchema={
        "type": "object",
        "properties": {
            "path": {
                "type": "string",
                "examples": ["./new_folder", "./docs/archive"],
            }
        },
        "required": ["path"],
        "additionalProperties": False,
    },
    outputSchema={
        "type": "object",
        "properties": {
            "success": {"type": "boolean"},
            "path": {"type": "string"},
        },
    },
  • Standalone async wrapper function that delegates to the singleton FileOperationsTool instance's create_directory method.
    async def create_directory(path: str):
        return await _instance.create_directory(path)
  • Dispatch logic in MCP call_tool handler: calls the create_directory function and wraps result in CallToolResult with success message.
    elif name == "create_directory":
        res = await create_directory(arguments["path"])
        return CallToolResult(
            content=[TextContent(type="text", text="Directory created")],
            structuredContent=res,
            isError="error" in res,
        )

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/KazKozDev/markdown-editor-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server