remove_file
Deletes specific files from Obsidian vaults in iCloud Drive via the Obsidian iCloud MCP. Simplifies file management by enabling AI-assisted removal of notes or documents securely.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
Implementation Reference
- src/file-system.ts:266-275 (handler)The primary handler function that implements the remove_file tool logic. It validates input using RemoveFileArgsSchema, unlinks the specified file using fs.unlink, and returns a success message.export async function removeFile(args?: Record<string, unknown>) { const parsed = RemoveFileArgsSchema.safeParse(args) if (!parsed.success) { throw new Error(`Invalid arguments for remove_file: ${parsed.error}`) } const result = await fs.unlink(parsed.data.path) return { content: [{ type: 'text', text: result }] } }
- src/schemas.ts:17-19 (schema)Zod schema defining the input arguments for the remove_file tool: a required 'path' string.export const RemoveFileArgsSchema = z.object({ path: z.string() })
- src/index.ts:121-124 (registration)Registration of the remove_file tool in the ListToolsRequestHandler, providing name, description (from prompt), and input schema.name: 'remove_file', description: removeFilePrompt(), inputSchema: zodToJsonSchema(RemoveFileArgsSchema) as ToolInput },
- src/index.ts:187-189 (registration)Dispatch logic in the CallToolRequestHandler switch statement that routes 'remove_file' calls to the removeFile handler.case 'remove_file': { return removeFile(args) }