Skip to main content
Glama

delete_user

Remove a user account from BookStack wiki while optionally transferring content ownership to another user. Requires administrator permissions to execute.

Instructions

Delete a user account (requires admin permissions)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesUser ID
migrate_ownership_idNoID of user to transfer ownership of content to

Implementation Reference

  • Input schema for the 'delete_user' tool defining parameters: id (required number) and optional migrate_ownership_id (number).
    { name: "delete_user", description: "Delete a user account (requires admin permissions)", inputSchema: { type: "object", properties: { id: { type: "number", description: "User ID" }, migrate_ownership_id: { type: "number", description: "ID of user to transfer ownership of content to", }, }, required: ["id"], }, },
  • Handler logic in handleSearchAndUserTool function that parses arguments, calls client.deleteUser, and returns success message.
    case "delete_user": { const { id, migrate_ownership_id } = args; const userId = parseInteger(id); const migrateId = migrate_ownership_id ? parseInteger(migrate_ownership_id) : undefined; await client.deleteUser(userId, migrateId); return `User ${userId} deleted successfully`; }
  • src/index.ts:55-59 (registration)
    Registration of tools by including createSearchAndUserTools (which defines delete_user) in the allTools array returned by ListToolsRequestSchema handler.
    // Combine all tools const allTools: Tool[] = [ ...createContentTools(bookStackClient), ...createSearchAndUserTools(bookStackClient), ];
  • src/index.ts:126-128 (registration)
    Dispatch logic in CallToolRequestSchema handler routes 'delete_user' (listed in searchUserToolNames) to handleSearchAndUserTool.
    } else if (searchUserToolNames.includes(name)) { result = await handleSearchAndUserTool(name, args, bookStackClient); } else {
  • BookStackClient helper method that performs the actual API DELETE request to delete a user, optionally migrating ownership.
    async deleteUser(id: number, migrateOwnershipId?: number): Promise<void> { const data = migrateOwnershipId ? { migrate_ownership_id: migrateOwnershipId } : undefined; await this.api.delete(`/users/${id}`, { data }); }

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/lautarobarba/bookstack_mcp_server'

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