awslabs.memcached-mcp-server 0.1.1__py3-none-any.whl → 1.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- awslabs/memcached_mcp_server/main.py +2 -23
- {awslabs_memcached_mcp_server-0.1.1.dist-info → awslabs_memcached_mcp_server-1.0.0.dist-info}/METADATA +28 -19
- {awslabs_memcached_mcp_server-0.1.1.dist-info → awslabs_memcached_mcp_server-1.0.0.dist-info}/RECORD +7 -7
- awslabs_memcached_mcp_server-1.0.0.dist-info/entry_points.txt +2 -0
- awslabs_memcached_mcp_server-0.1.1.dist-info/entry_points.txt +0 -2
- {awslabs_memcached_mcp_server-0.1.1.dist-info → awslabs_memcached_mcp_server-1.0.0.dist-info}/WHEEL +0 -0
- {awslabs_memcached_mcp_server-0.1.1.dist-info → awslabs_memcached_mcp_server-1.0.0.dist-info}/licenses/LICENSE +0 -0
- {awslabs_memcached_mcp_server-0.1.1.dist-info → awslabs_memcached_mcp_server-1.0.0.dist-info}/licenses/NOTICE +0 -0
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
|
|
12
12
|
"""awslabs memcached MCP Server implementation."""
|
|
13
13
|
|
|
14
|
-
import argparse
|
|
15
14
|
from awslabs.memcached_mcp_server.common.server import mcp
|
|
16
15
|
from awslabs.memcached_mcp_server.tools import cache # noqa: F401
|
|
17
16
|
from loguru import logger
|
|
@@ -32,35 +31,15 @@ async def health_check(request):
|
|
|
32
31
|
class MemcachedMCPServer:
|
|
33
32
|
"""Memcached MCP Server wrapper."""
|
|
34
33
|
|
|
35
|
-
def __init__(self, sse=False, port=None):
|
|
36
|
-
"""Initialize MCP Server wrapper."""
|
|
37
|
-
self.sse = sse
|
|
38
|
-
self.port = port
|
|
39
|
-
|
|
40
34
|
def run(self):
|
|
41
35
|
"""Run server with appropriate transport."""
|
|
42
|
-
|
|
43
|
-
mcp.settings.port = int(self.port) if self.port is not None else 8888
|
|
44
|
-
mcp.run(transport='sse')
|
|
45
|
-
else:
|
|
46
|
-
mcp.run()
|
|
36
|
+
mcp.run()
|
|
47
37
|
|
|
48
38
|
|
|
49
39
|
def main():
|
|
50
40
|
"""Run the MCP server with CLI argument support."""
|
|
51
|
-
parser = argparse.ArgumentParser(
|
|
52
|
-
description='An AWS Labs Model Context Protocol (MCP) server for Amazon ElastiCache Memcached'
|
|
53
|
-
)
|
|
54
|
-
parser.add_argument('--sse', action='store_true', help='Use SSE transport')
|
|
55
|
-
parser.add_argument('--port', type=int, default=8888, help='Port to run the server on')
|
|
56
|
-
|
|
57
|
-
args = parser.parse_args()
|
|
58
|
-
|
|
59
41
|
logger.info('Amazon ElastiCache Memcached MCP Server Started...')
|
|
60
|
-
|
|
61
|
-
# Run server with appropriate transport
|
|
62
|
-
server = MemcachedMCPServer(args.sse, args.port)
|
|
63
|
-
server.run()
|
|
42
|
+
MemcachedMCPServer().run()
|
|
64
43
|
|
|
65
44
|
|
|
66
45
|
if __name__ == '__main__':
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: awslabs.memcached-mcp-server
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 1.0.0
|
|
4
4
|
Summary: An AWS Labs Model Context Protocol (MCP) server for Amazon ElastiCache Memcached
|
|
5
5
|
Project-URL: homepage, https://awslabs.github.io/mcp/
|
|
6
6
|
Project-URL: docs, https://awslabs.github.io/mcp/servers/memcached-mcp-server/
|
|
@@ -28,7 +28,7 @@ Requires-Dist: pymemcache>=4.0.0
|
|
|
28
28
|
Requires-Dist: python-dotenv>=0.9.9
|
|
29
29
|
Description-Content-Type: text/markdown
|
|
30
30
|
|
|
31
|
-
# Memcached MCP Server
|
|
31
|
+
# Amazon ElastiCache Memcached MCP Server
|
|
32
32
|
|
|
33
33
|
MCP server for interacting with Amazon ElastiCache Memcached through a secure and reliable connection
|
|
34
34
|
|
|
@@ -41,27 +41,13 @@ MCP server for interacting with Amazon ElastiCache Memcached through a secure an
|
|
|
41
41
|
- Automatic connection management and pooling
|
|
42
42
|
- Built-in retry mechanism for failed operations
|
|
43
43
|
|
|
44
|
-
### Robust Connection Management
|
|
45
|
-
|
|
46
|
-
- Configurable connection settings and timeouts
|
|
47
|
-
- Automatic connection retrying with customizable parameters
|
|
48
|
-
- Connection pooling for improved performance
|
|
49
|
-
- Comprehensive error handling and recovery
|
|
50
|
-
|
|
51
|
-
### Security and Reliability
|
|
52
|
-
|
|
53
|
-
- SSL/TLS support for encrypted communication
|
|
54
|
-
- Certificate-based authentication
|
|
55
|
-
- Configurable verification settings
|
|
56
|
-
- Automatic handling of connection failures
|
|
57
|
-
|
|
58
44
|
## Prerequisites
|
|
59
45
|
|
|
60
46
|
1. Install `uv` from [Astral](https://docs.astral.sh/uv/getting-started/installation/) or the [GitHub README](https://github.com/astral-sh/uv#installation)
|
|
61
47
|
2. Install Python using `uv python install 3.10`
|
|
62
|
-
3. Access to a Memcached server
|
|
63
|
-
|
|
64
|
-
|
|
48
|
+
3. Access to a Memcached server.
|
|
49
|
+
4. For instructions to connect to an Amazon ElastiCache Memcached cache [click here](https://github.com/awslabs/mcp/blob/main/src/memcached-mcp-server/ELASTICACHECONNECT.md)
|
|
50
|
+
|
|
65
51
|
|
|
66
52
|
## Installation
|
|
67
53
|
|
|
@@ -146,3 +132,26 @@ The server automatically handles:
|
|
|
146
132
|
- SSL/TLS encryption when enabled
|
|
147
133
|
- Automatic retrying of failed operations
|
|
148
134
|
- Timeout enforcement and error handling
|
|
135
|
+
|
|
136
|
+
## Development
|
|
137
|
+
|
|
138
|
+
### Running Tests
|
|
139
|
+
```bash
|
|
140
|
+
uv venv
|
|
141
|
+
source .venv/bin/activate
|
|
142
|
+
uv sync
|
|
143
|
+
uv run --frozen pytest
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Building Docker Image
|
|
147
|
+
```bash
|
|
148
|
+
docker build -t awslabs/memcached-mcp-server .
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### Running Docker Container
|
|
152
|
+
```bash
|
|
153
|
+
docker run -p 8080:8080 \
|
|
154
|
+
-e MEMCACHED_HOST=host.docker.internal \
|
|
155
|
+
-e MEMCACHED_PORT=11211 \
|
|
156
|
+
awslabs/memcached-mcp-server
|
|
157
|
+
```
|
{awslabs_memcached_mcp_server-0.1.1.dist-info → awslabs_memcached_mcp_server-1.0.0.dist-info}/RECORD
RENAMED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
awslabs/__init__.py,sha256=47wJeKcStxEJwX7SVVV2pnAWYR8FxcaYoT3YTmZ5Plg,674
|
|
2
2
|
awslabs/memcached_mcp_server/__init__.py,sha256=D_E0pVUBpiPlnOQ5tR2T4vyLicn7wvNUYkTWgMxT9y4,617
|
|
3
|
-
awslabs/memcached_mcp_server/main.py,sha256=
|
|
3
|
+
awslabs/memcached_mcp_server/main.py,sha256=XJNNPRAvc2z93DJuLDaMlAzqDhe8SRFlH48axTr4GI0,1572
|
|
4
4
|
awslabs/memcached_mcp_server/common/config.py,sha256=8onPAqIuxVqMg-8Sq2IoKteGPFpJe5biOv_LVc-VvL8,149
|
|
5
5
|
awslabs/memcached_mcp_server/common/connection.py,sha256=rTNQTVnojDooBVs5syLMbrhxOTcDcFApEzD1tlDE77Y,3088
|
|
6
6
|
awslabs/memcached_mcp_server/common/server.py,sha256=dAUIguTwnU6puNdh2S5QEhT9XuVnB6uMfoZXJ9vrDoQ,589
|
|
7
7
|
awslabs/memcached_mcp_server/tools/cache.py,sha256=gvpRMx68czsFDAC4XcVyoZqLa3kypuF50jEBxWujMA8,12155
|
|
8
|
-
awslabs_memcached_mcp_server-0.
|
|
9
|
-
awslabs_memcached_mcp_server-0.
|
|
10
|
-
awslabs_memcached_mcp_server-0.
|
|
11
|
-
awslabs_memcached_mcp_server-0.
|
|
12
|
-
awslabs_memcached_mcp_server-0.
|
|
13
|
-
awslabs_memcached_mcp_server-0.
|
|
8
|
+
awslabs_memcached_mcp_server-1.0.0.dist-info/METADATA,sha256=NlMN_V5WQ3ieYLPAml0nVvALnAwNhpuFuixXFhmyeRo,4781
|
|
9
|
+
awslabs_memcached_mcp_server-1.0.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
10
|
+
awslabs_memcached_mcp_server-1.0.0.dist-info/entry_points.txt,sha256=L6eXQdXenEsLGoVjKoZCyrrEMfDfXrSqGn_i-jYmES8,88
|
|
11
|
+
awslabs_memcached_mcp_server-1.0.0.dist-info/licenses/LICENSE,sha256=CeipvOyAZxBGUsFoaFqwkx54aPnIKEtm9a5u2uXxEws,10142
|
|
12
|
+
awslabs_memcached_mcp_server-1.0.0.dist-info/licenses/NOTICE,sha256=Wxt-EHT4RdVQIf79fYjNk-uwPDYiRwXxH_QNfGIG5Lg,96
|
|
13
|
+
awslabs_memcached_mcp_server-1.0.0.dist-info/RECORD,,
|
{awslabs_memcached_mcp_server-0.1.1.dist-info → awslabs_memcached_mcp_server-1.0.0.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|