Skip to main content
Glama
redis.json18.9 kB
{ "id": "redis", "schema": { "type": "object", "required": ["commands"], "properties": { "commands": { "type": "array", "minItems": 1, "title": "Commands", "items": { "type": "object", "required": ["keyExpr", "command"], "properties": { "outField": { "title": "Result field", "description": "Name of the field in which to store the returned value. Leave blank to discard returned value.", "type": "string" }, "command": { "title": "Command", "description": "Redis command to perform. For a complete list visit: https://redis.io/commands", "type": "string" }, "keyExpr": { "title": "Key", "description": "A JavaScript expression to compute the value of the key to operate on. Can also be a constant such as 'username'.", "type": "string", "jsExpression": true }, "argsExpr": { "title": "Args", "description": "A JavaScript expression to compute arguments to the operation. Can return an array.", "type": "string", "jsExpression": true } } } }, "deploymentType": { "title": "Deployment type", "type": "string", "description": "How the Redis server is configured. Defaults to Standalone", "enum": ["standalone", "cluster", "sentinel"], "enumNames": ["Standalone", "Cluster", "Sentinel"], "default": "standalone" }, "authType": { "type": "string", "title": "Authentication method", "default": "none", "enum": ["none", "manual", "credentialsSecret", "textSecret"], "enumNames": ["None", "Manual", "User Secret", "Admin Secret"] }, "maxBlockSecs": { "type": "number", "title": "Blocking time limit", "description": "Maximum amount of time (seconds) to wait before assuming that Redis is down and passing events through. Use 0 to disable.", "default": 60 }, "enableClientSideCaching": { "type": "boolean", "title": "Client-side cache", "description": "Enable client-side cache. Redundant when using Redis write operations. See more options at Settings > General > Limits > Redis Cache." } }, "dependencies": { "deploymentType": { "oneOf": [ { "required": ["url"], "properties": { "deploymentType": { "enum": ["standalone"] }, "url": { "title": "Redis URL", "description": "Redis URL to connect to. Format: redis[s]://[[user][:password@]][host][:port][/db-number][?db=db-number[&password=bar[&option=value]]]. Must be a JavaScript expression (which can evaluate to a constant value), enclosed in quotes or backticks. Can be evaluated only at init time. Example referencing a Global Variable: `myBucket-${C.vars.myVar}`", "type": "string", "jsExpression": "warning", "bindToVariable": true }, "tlsOptions": { "type": "object", "properties": { "rejectUnauthorized": { "type": "boolean", "title": "Validate server certs", "description": "Reject certificates that are not authorized by a CA in the 'CA certificate path', or by another trusted CA (such as the system's CA)", "default": true }, "servername": { "type": "string", "title": "Server name (SNI)", "description": "Server name for the SNI (Server Name Indication) TLS extension. Must be a host name, not an IP address." }, "certificateName": { "type": "string", "title": "Certificate", "description": "The name of the predefined certificate", "certificateRef": true }, "caPath": { "type": "string", "title": "CA certificate path", "description": "Path on client in which to find CA certificates to verify the server's certificate. PEM format. Can reference $ENV_VARS." }, "privKeyPath": { "type": "string", "title": "Private key path (mutual auth)", "description": "Path on client in which to find the private key to use. PEM format. Can reference $ENV_VARS." }, "certPath": { "type": "string", "title": "Certificate path (mutual auth)", "description": "Path on client in which to find certificates to use. PEM format. Can reference $ENV_VARS." }, "passphrase": { "type": "string", "title": "Passphrase", "description": "Passphrase to use to decrypt private key", "encrypt": true }, "minVersion": { "type": "string", "title": "Minimum TLS version", "description": "Minimum TLS version to use when connecting", "enum": ["TLSv1", "TLSv1.1", "TLSv1.2", "TLSv1.3"] }, "maxVersion": { "type": "string", "title": "Maximum TLS version", "description": "Maximum TLS version to use when connecting", "enum": ["TLSv1", "TLSv1.1", "TLSv1.2", "TLSv1.3"] } } } } }, { "properties": { "deploymentType": { "enum": ["cluster"] }, "rootNodes": { "title": "Root nodes", "description": "Root nodes to which the cluster connection should be initiated", "type": "array", "minItems": 1, "items": { "type": "object", "required": ["host", "port"], "properties": { "host": { "type": "string", "title": "Hostname", "description": "Hostname of cluster node. Must be a JavaScript expression (which can evaluate to a constant value), enclosed in quotes or backticks. Can be evaluated only at init time. Example referencing a Global Variable: `myBucket-${C.vars.myVar}`.", "jsExpression": "warning", "uiPatternWarn": "^(?!.*`?redi(?:s|ss)://).*$", "uiPatternWarnMsg": "When using the cluster deployment type, Redis URL should not include 'redis://' or 'rediss://'" }, "port": { "type": "number", "title": "Port", "description": "Port of cluster node" } } } }, "tls": { "title": "TLS", "type": "boolean", "description": "Use TLS for connections to this cluster" }, "scaleReads": { "title": "Scale reads", "type": "string", "description": "Which nodes read commands should be sent to", "enum": ["master", "replica", "all"], "enumNames": ["Masters", "Replicas", "Masters and Replicas"], "default": "master" } }, "dependencies": { "tls": { "oneOf": [ { "properties": { "tls": { "enum": [true] }, "tlsOptions": { "type": "object", "properties": { "rejectUnauthorized": { "type": "boolean", "title": "Validate server certs", "description": "Reject certs that are not authorized by a CA in the CA certificate path, or by another trusted CA (such as the system's CA)", "default": true }, "servername": { "type": "string", "title": "Server name (SNI)", "description": "Server name for the SNI (Server Name Indication) TLS extension. Must be a host name, not an IP address." }, "certificateName": { "type": "string", "title": "Certificate", "description": "The name of the predefined certificate", "certificateRef": true }, "caPath": { "type": "string", "title": "CA certificate path", "description": "Path on client in which to find CA certificates to verify the server's certificate. PEM format. Can reference $ENV_VARS." }, "privKeyPath": { "type": "string", "title": "Private key path (mutual auth)", "description": "Path on client in which to find the private key to use. PEM format. Can reference $ENV_VARS." }, "certPath": { "type": "string", "title": "Certificate path (mutual auth)", "description": "Path on client in which to find certificates to use. PEM format. Can reference $ENV_VARS." }, "passphrase": { "type": "string", "title": "Passphrase", "description": "Passphrase to use to decrypt private key", "encrypt": true }, "minVersion": { "type": "string", "title": "Minimum TLS version", "description": "Minimum TLS version to use when connecting", "enum": ["TLSv1", "TLSv1.1", "TLSv1.2", "TLSv1.3"] }, "maxVersion": { "type": "string", "title": "Maximum TLS version", "description": "Maximum TLS version to use when connecting", "enum": ["TLSv1", "TLSv1.1", "TLSv1.2", "TLSv1.3"] } } } } }, { "properties": { "tls": { "enum": [false] } } } ] } } }, { "required": ["masterName"], "properties": { "deploymentType": { "enum": ["sentinel"] }, "masterName": { "title": "Master group name", "type": "string" }, "rootNodes": { "title": "Sentinels", "description": "List of sentinels to be used", "type": "array", "minItems": 1, "items": { "type": "object", "required": ["host", "port"], "properties": { "host": { "type": "string", "title": "Hostname", "description": "Hostname of sentinel node. Must be a JavaScript expression (which can evaluate to a constant value), enclosed in quotes or backticks. Can be evaluated only at init time. Example referencing a Global Variable: `myBucket-${C.vars.myVar}`.", "jsExpression": "warning" }, "port": { "type": "number", "title": "Port", "description": "Port of sentinel node" } } } }, "tls": { "title": "TLS", "type": "boolean", "description": "Use TLS for connections to this cluster" } }, "dependencies": { "tls": { "oneOf": [ { "properties": { "tls": { "enum": [true] }, "tlsOptions": { "type": "object", "properties": { "rejectUnauthorized": { "type": "boolean", "title": "Validate server certs", "description": "Reject certs that are not authorized by a CA in the CA certificate path, or by another trusted CA (such as the system's CA)", "default": true }, "servername": { "type": "string", "title": "Server name (SNI)", "description": "Server name for the SNI (Server Name Indication) TLS extension. Must be a host name, not an IP address." }, "certificateName": { "type": "string", "title": "Certificate", "description": "The name of the predefined certificate", "certificateRef": true }, "caPath": { "type": "string", "title": "CA certificate path", "description": "Path on client in which to find CA certificates to verify the server's certificate. PEM format. Can reference $ENV_VARS." }, "privKeyPath": { "type": "string", "title": "Private key path (mutual auth)", "description": "Path on client in which to find the private key to use. PEM format. Can reference $ENV_VARS." }, "certPath": { "type": "string", "title": "Certificate path (mutual auth)", "description": "Path on client in which to find certificates to use. PEM format. Can reference $ENV_VARS." }, "passphrase": { "type": "string", "title": "Passphrase", "description": "Passphrase to use to decrypt private key", "encrypt": true }, "minVersion": { "type": "string", "title": "Minimum TLS version", "description": "Minimum TLS version to use when connecting", "enum": ["TLSv1", "TLSv1.1", "TLSv1.2", "TLSv1.3"] }, "maxVersion": { "type": "string", "title": "Maximum TLS version", "description": "Maximum TLS version to use when connecting", "enum": ["TLSv1", "TLSv1.1", "TLSv1.2", "TLSv1.3"] } } } } }, { "properties": { "tls": { "enum": [false] } } } ] } } } ] }, "authType": { "oneOf": [ { "properties": { "authType": { "enum": ["none"] } } }, { "required": ["password"], "properties": { "authType": { "enum": ["manual"] }, "username": { "title": "Username", "type": "string", "bindToVariable": true }, "password": { "title": "Password", "type": "string", "encrypt": true, "bindToVariable": true } } }, { "required": ["credentialsSecret"], "properties": { "authType": { "enum": ["credentialsSecret"] }, "credentialsSecret": { "type": "string", "title": "User secret", "description": "Secret that references Redis username and password", "secret": { "type": "credentials", "target": ["credentialsUsername", "credentialsPassword"] }, "secretRef": true } } }, { "required": ["textSecret"], "properties": { "authType": { "enum": ["textSecret"] }, "textSecret": { "type": "string", "title": "Admin secret", "description": "Secret that references Redis admin password", "secret": { "type": "text", "target": ["textPassword"] }, "secretRef": true } } } ] } } } }

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/atree1023/snc-cribl-mcp'

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