Skip to main content
Glama
KazKozDev
by KazKozDev

delete_item

Remove specified items from Markdown documents by providing their hierarchical paths to maintain clean, organized content structure.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYes

Implementation Reference

  • Core handler function that validates the path, resolves it, checks existence, and deletes the file using os.remove or directory using shutil.rmtree, returning success or error dict.
    async def delete_item(self, path: str) -> Dict[str, Any]:
        """Delete file or directory"""
        # Validate path safety
        error = self._validate_path(path)
        if error:
            return {"error": error}
    
        try:
            abs_path = self._get_abs_path(path)
            if not os.path.exists(abs_path):
                return {"error": "Item not found"}
    
            if os.path.isdir(abs_path):
                shutil.rmtree(abs_path)
            else:
                os.remove(abs_path)
            return {"success": True, "path": path}
        except Exception as e:
            return {"error": str(e)}
  • Registers the 'delete_item' tool in the MCP server's list_tools() function, including title, description (implied), input schema requiring 'path' string, and output schema with success boolean and path.
    Tool(
        name="delete_item",
        title="Delete File/Folder",
        inputSchema={
            "type": "object",
            "properties": {
                "path": {
                    "type": "string",
                    "examples": ["./old_file.md", "./temp_folder"],
                }
            },
            "required": ["path"],
            "additionalProperties": False,
        },
        outputSchema={
            "type": "object",
            "properties": {
                "success": {"type": "boolean"},
                "path": {"type": "string"},
            },
        },
    ),
  • Tool dispatcher in call_tool() that invokes the delete_item function with the provided path argument and wraps the result in MCP CallToolResult.
    elif name == "delete_item":
        res = await delete_item(arguments["path"])
        return CallToolResult(
            content=[TextContent(type="text", text="Item deleted")],
            structuredContent=res,
            isError="error" in res,
        )
  • Thin wrapper function that delegates to the singleton FileOperationsTool instance's delete_item method.
    async def delete_item(path: str):
        return await _instance.delete_item(path)

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