delete_agent
Remove an agent from the Lightning Wallet MCP server, returning its remaining balance to the operator. Requires operator authorization and confirmation.
Instructions
Permanently delete an agent. Remaining balance is returned to operator. REQUIRES OPERATOR KEY.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID to delete | |
| confirm | Yes | Must be true to confirm deletion |
Implementation Reference
- src/lightning-faucet.ts:1158-1175 (handler)The deleteAgent method performs the actual API call to the backend for 'delete_agent'.
* Delete an agent permanently */ async deleteAgent(agentId: number): Promise<{ message: string; balanceReturned: number; rawResponse: ApiResponse; }> { const result = await this.request<ApiResponse & { message?: string; balance_returned?: number; }>('delete_agent', { agent_id: agentId }); return { message: result.message || 'Agent deleted', balanceReturned: result.balance_returned || 0, rawResponse: result, }; } - src/index.ts:258-261 (schema)The Zod schema definition for input validation of the 'delete_agent' tool.
const DeleteAgentSchema = z.object({ agent_id: z.number().int().positive().describe('Agent ID to permanently delete'), confirm: z.boolean().describe('Must be true to confirm deletion'), }); - src/index.ts:742-752 (registration)Tool registration for 'delete_agent' in the MCP server's tool list.
name: 'delete_agent', description: 'Permanently delete an agent. Remaining balance is returned to operator. REQUIRES OPERATOR KEY.', inputSchema: { type: 'object', properties: { agent_id: { type: 'integer', description: 'Agent ID to delete' }, confirm: { type: 'boolean', description: 'Must be true to confirm deletion' }, }, required: ['agent_id', 'confirm'], }, }, - src/index.ts:1604-1633 (handler)The MCP request handler logic for 'delete_agent', including validation and calling the client method.
case 'delete_agent': { const parsed = DeleteAgentSchema.parse(args); if (!parsed.confirm) { return { content: [ { type: 'text', text: JSON.stringify({ success: false, error: 'Must set confirm: true to delete agent', }, null, 2), }, ], isError: true, }; } const result = await session.requireClient().deleteAgent(parsed.agent_id); return { content: [ { type: 'text', text: JSON.stringify({ success: true, message: result.message || 'Agent deleted', balance_returned: result.balanceReturned, }, null, 2), }, ], }; }