Skip to main content

An AWS Labs Model Context Protocol (MCP) server for Amazon ElastiCache Memcached

Project description

Amazon ElastiCache Memcached MCP Server

MCP server for interacting with Amazon ElastiCache Memcached through a secure and reliable connection

Features

Complete Memcached Protocol Support

  • Full support for all standard Memcached operations
  • Secure communication with SSL/TLS encryption
  • Automatic connection management and pooling
  • Built-in retry mechanism for failed operations

Prerequisites

  1. Install uv from Astral or the GitHub README
  2. Install Python using uv python install 3.10
  3. Access to a Memcached server.
  4. For instructions to connect to an Amazon ElastiCache Memcached cache click here

Installation

Here are some ways you can work with MCP (e.g. for Amazon Q Developer CLI MCP, ~/.aws/amazonq/mcp.json):

{
  "mcpServers": {
    "awslabs.memcached-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.memcached-mcp-server@latest"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "MEMCACHED_HOST": "your-memcached-host",
        "MEMCACHED_PORT": "11211"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

or docker after a successful docker build -t awslabs/memcached-mcp-server .:

{
  "mcpServers": {
    "awslabs.memcached-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "--interactive",
        "--env",
        "FASTMCP_LOG_LEVEL=ERROR",
        "--env",
        "MEMCACHED_HOST=your-memcached-host",
        "--env",
        "MEMCACHED_PORT=11211",
        "awslabs/memcached-mcp-server:latest"
      ],
      "env": {},
      "disabled": false,
      "autoApprove": []
    }
  }
}

Configuration

Basic Connection Settings

Configure the connection using these environment variables:

# Basic settings
MEMCACHED_HOST=127.0.0.1          # Memcached server hostname
MEMCACHED_PORT=11211              # Memcached server port
MEMCACHED_TIMEOUT=1              # Operation timeout in seconds
MEMCACHED_CONNECT_TIMEOUT=5      # Connection timeout in seconds
MEMCACHED_RETRY_TIMEOUT=1        # Retry delay in seconds
MEMCACHED_MAX_RETRIES=3         # Maximum number of retry attempts

SSL/TLS Configuration

Enable and configure SSL/TLS support with these variables:

# SSL/TLS settings
MEMCACHED_USE_TLS=true                           # Enable SSL/TLS
MEMCACHED_TLS_CERT_PATH=/path/to/client-cert.pem # Client certificate
MEMCACHED_TLS_KEY_PATH=/path/to/client-key.pem   # Client private key
MEMCACHED_TLS_CA_CERT_PATH=/path/to/ca-cert.pem  # CA certificate
MEMCACHED_TLS_VERIFY=true                        # Enable cert verification

The server automatically handles:

  • Connection establishment and management
  • SSL/TLS encryption when enabled
  • Automatic retrying of failed operations
  • Timeout enforcement and error handling

Development

Running Tests

uv venv
source .venv/bin/activate
uv sync
uv run --frozen pytest

Building Docker Image

docker build -t awslabs/memcached-mcp-server .

Running Docker Container

docker run -p 8080:8080 \
  -e MEMCACHED_HOST=host.docker.internal \
  -e MEMCACHED_PORT=11211 \
  awslabs/memcached-mcp-server

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

awslabs_memcached_mcp_server-0.1.2.tar.gz (66.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

awslabs_memcached_mcp_server-0.1.2-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file awslabs_memcached_mcp_server-0.1.2.tar.gz.

File metadata

File hashes

Hashes for awslabs_memcached_mcp_server-0.1.2.tar.gz
Algorithm Hash digest
SHA256 f6a00182779526dcadd72a0be74d510b507caa0dbea3f86c63846631e7861fb8
MD5 0512c848ef3322dda25c0330ec7253a5
BLAKE2b-256 580a9b4edf84a80de234c6b4fbd4aa7e0a7c16335c6c567c34ae09361a1bac15

See more details on using hashes here.

Provenance

The following attestation bundles were made for awslabs_memcached_mcp_server-0.1.2.tar.gz:

Publisher: release.yml on awslabs/mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file awslabs_memcached_mcp_server-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for awslabs_memcached_mcp_server-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 76c6782400c01a5906dd213299d24b0fed33761eef26ee93643c74922bfdb122
MD5 fd0977780c0d6881e629012702a594c8
BLAKE2b-256 2133c8c89a073145db6016b543b2db70cc55bf4781de2cd2b74b9c2dfc6be81e

See more details on using hashes here.

Provenance

The following attestation bundles were made for awslabs_memcached_mcp_server-0.1.2-py3-none-any.whl:

Publisher: release.yml on awslabs/mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page