zadd
Add one or more score-value pairs to a sorted set in Redis, enabling organized data storage and retrieval for efficient database management.
Instructions
Add one or more members to a sorted set
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Sorted set key | |
| members | Yes | Array of score-value pairs to add |
Implementation Reference
- src/tools/zadd_tool.ts:39-55 (handler)The execute method of ZAddTool that performs the zadd operation: validates input, maps members, calls Redis client.zAdd, and returns success or error response.async execute(args: unknown, client: RedisClientType): Promise<ToolResponse> { if (!this.validateArgs(args)) { return this.createErrorResponse('Invalid arguments for zadd'); } try { const members = args.members.map(member => ({ score: member.score, value: member.value })); const result = await client.zAdd(args.key, members); return this.createSuccessResponse(`Added ${result} new members to the sorted set`); } catch (error) { return this.createErrorResponse(`Failed to add members to sorted set: ${error}`); } }
- src/tools/zadd_tool.ts:8-26 (schema)Input schema definition for the zadd tool, specifying the structure of key and members array with score-value objects.inputSchema = { type: 'object', properties: { key: { type: 'string', description: 'Sorted set key' }, members: { type: 'array', description: 'Array of score-value pairs to add', items: { type: 'object', properties: { score: { type: 'number', description: 'Score for the member' }, value: { type: 'string', description: 'Member value' } }, required: ['score', 'value'] } } }, required: ['key', 'members'] };
- src/interfaces/types.ts:46-49 (schema)TypeScript interface defining the arguments for the zadd tool.export interface ZAddArgs { key: string; members: Array<{score: number; value: string}>; }
- src/tools/tool_registry.ts:33-33 (registration)Instantiation of ZAddTool in the default tools array for registration in ToolRegistry.new ZAddTool(),
- src/tools/zadd_tool.ts:28-37 (helper)Validation function for zadd arguments ensuring correct types for key and members array.validateArgs(args: unknown): args is ZAddArgs { return typeof args === 'object' && args !== null && 'key' in args && typeof (args as any).key === 'string' && 'members' in args && Array.isArray((args as any).members) && (args as any).members.every((member: any) => typeof member === 'object' && member !== null && 'score' in member && typeof member.score === 'number' && 'value' in member && typeof member.value === 'string' ); }