Skip to main content
Glama
farhankaz

Redis MCP Server

by farhankaz

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
NameRequiredDescriptionDefault
keyYesSorted set key
membersYesArray of score-value pairs to add

Implementation Reference

  • 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}`);
      }
    }
  • 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']
    };
  • TypeScript interface defining the arguments for the zadd tool.
    export interface ZAddArgs {
      key: string;
      members: Array<{score: number; value: string}>;
    }
  • Instantiation of ZAddTool in the default tools array for registration in ToolRegistry.
    new ZAddTool(),
  • 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'
        );
    }

Tool Definition Quality

Score is being calculated. Check back soon.

Install Server

Other Tools

Related Tools

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/farhankaz/redis-mcp'

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