container-manager-mcp 1.1.0__tar.gz → 1.1.3__tar.gz

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.

Potentially problematic release.


This version of container-manager-mcp might be problematic. Click here for more details.

Files changed (17) hide show
  1. {container_manager_mcp-1.1.0/container_manager_mcp.egg-info → container_manager_mcp-1.1.3}/PKG-INFO +2 -2
  2. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/README.md +1 -1
  3. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp/container_manager_mcp.py +32 -14
  4. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3/container_manager_mcp.egg-info}/PKG-INFO +2 -2
  5. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/pyproject.toml +1 -1
  6. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/LICENSE +0 -0
  7. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/MANIFEST.in +0 -0
  8. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp/__init__.py +0 -0
  9. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp/__main__.py +0 -0
  10. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp/container_manager.py +0 -0
  11. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp.egg-info/SOURCES.txt +0 -0
  12. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp.egg-info/dependency_links.txt +0 -0
  13. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp.egg-info/entry_points.txt +0 -0
  14. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp.egg-info/requires.txt +0 -0
  15. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/container_manager_mcp.egg-info/top_level.txt +0 -0
  16. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/requirements.txt +0 -0
  17. {container_manager_mcp-1.1.0 → container_manager_mcp-1.1.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: container-manager-mcp
3
- Version: 1.1.0
3
+ Version: 1.1.3
4
4
  Summary: Container Manager manage Docker, Docker Swarm, and Podman containers as an MCP Server
5
5
  Author-email: Audel Rouhi <knucklessg1@gmail.com>
6
6
  License: MIT
@@ -48,7 +48,7 @@ Dynamic: license-file
48
48
  ![PyPI - Wheel](https://img.shields.io/pypi/wheel/container-manager-mcp)
49
49
  ![PyPI - Implementation](https://img.shields.io/pypi/implementation/container-manager-mcp)
50
50
 
51
- *Version: 1.1.0*
51
+ *Version: 1.1.3*
52
52
 
53
53
  Container Manager MCP Server provides a robust interface to manage Docker and Podman containers, networks, volumes, and Docker Swarm services through a FastMCP server, enabling programmatic and remote container management.
54
54
 
@@ -20,7 +20,7 @@
20
20
  ![PyPI - Wheel](https://img.shields.io/pypi/wheel/container-manager-mcp)
21
21
  ![PyPI - Implementation](https://img.shields.io/pypi/implementation/container-manager-mcp)
22
22
 
23
- *Version: 1.1.0*
23
+ *Version: 1.1.3*
24
24
 
25
25
  Container Manager MCP Server provides a robust interface to manage Docker and Podman containers, networks, volumes, and Docker Swarm services through a FastMCP server, enabling programmatic and remote container management.
26
26
 
@@ -5,7 +5,7 @@ import argparse
5
5
  import os
6
6
  import sys
7
7
  import logging
8
- from typing import Optional, List, Dict
8
+ from typing import Optional, List, Dict, Union
9
9
 
10
10
  from fastmcp import FastMCP, Context
11
11
  from pydantic import Field
@@ -27,7 +27,11 @@ def setup_logging(
27
27
  mcp = FastMCP(name="ContainerManagerServer")
28
28
 
29
29
 
30
- def to_boolean(string):
30
+ def to_boolean(string: Union[str, bool] = None) -> bool:
31
+ if isinstance(string, bool):
32
+ return string
33
+ if not string:
34
+ return False
31
35
  normalized = str(string).strip().lower()
32
36
  true_values = {"t", "true", "y", "yes", "1"}
33
37
  false_values = {"f", "false", "n", "no", "0"}
@@ -1533,24 +1537,38 @@ async def compose_logs(
1533
1537
  def container_manager_mcp():
1534
1538
  parser = argparse.ArgumentParser(description="Container Manager MCP Server")
1535
1539
  parser.add_argument(
1536
- "-t", "--transport", type=str, default="stdio", help="Transport (stdio/http)"
1540
+ "-t",
1541
+ "--transport",
1542
+ default="stdio",
1543
+ choices=["stdio", "http", "sse"],
1544
+ help="Transport method: 'stdio', 'http', or 'sse' [legacy] (default: stdio)",
1545
+ )
1546
+ parser.add_argument(
1547
+ "-s",
1548
+ "--host",
1549
+ default="0.0.0.0",
1550
+ help="Host address for HTTP transport (default: 0.0.0.0)",
1537
1551
  )
1538
- parser.add_argument("-s", "--host", type=str, default="0.0.0.0", help="Host")
1539
- parser.add_argument("-p", "--port", type=int, default=8000, help="Port")
1552
+ parser.add_argument(
1553
+ "-p",
1554
+ "--port",
1555
+ type=int,
1556
+ default=8000,
1557
+ help="Port number for HTTP transport (default: 8000)",
1558
+ )
1559
+
1540
1560
  args = parser.parse_args()
1541
1561
 
1542
- transport = args.transport
1543
- host = args.host
1544
- port = args.port
1545
- if not (0 <= port <= 65535):
1546
- print(f"Error: Port {port} is out of valid range (0-65535).")
1562
+ if args.port < 0 or args.port > 65535:
1563
+ print(f"Error: Port {args.port} is out of valid range (0-65535).")
1547
1564
  sys.exit(1)
1548
1565
 
1549
- setup_logging(is_mcp_server=True, log_file="container_manager_mcp.log")
1550
- if transport == "stdio":
1566
+ if args.transport == "stdio":
1551
1567
  mcp.run(transport="stdio")
1552
- elif transport == "http":
1553
- mcp.run(transport="http", host=host, port=port)
1568
+ elif args.transport == "http":
1569
+ mcp.run(transport="http", host=args.host, port=args.port)
1570
+ elif args.transport == "sse":
1571
+ mcp.run(transport="sse", host=args.host, port=args.port)
1554
1572
  else:
1555
1573
  logger = logging.getLogger("ContainerManager")
1556
1574
  logger.error("Transport not supported")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: container-manager-mcp
3
- Version: 1.1.0
3
+ Version: 1.1.3
4
4
  Summary: Container Manager manage Docker, Docker Swarm, and Podman containers as an MCP Server
5
5
  Author-email: Audel Rouhi <knucklessg1@gmail.com>
6
6
  License: MIT
@@ -48,7 +48,7 @@ Dynamic: license-file
48
48
  ![PyPI - Wheel](https://img.shields.io/pypi/wheel/container-manager-mcp)
49
49
  ![PyPI - Implementation](https://img.shields.io/pypi/implementation/container-manager-mcp)
50
50
 
51
- *Version: 1.1.0*
51
+ *Version: 1.1.3*
52
52
 
53
53
  Container Manager MCP Server provides a robust interface to manage Docker and Podman containers, networks, volumes, and Docker Swarm services through a FastMCP server, enabling programmatic and remote container management.
54
54
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "container-manager-mcp"
7
- version = "1.1.0"
7
+ version = "1.1.3"
8
8
  description = "Container Manager manage Docker, Docker Swarm, and Podman containers as an MCP Server"
9
9
  readme = "README.md"
10
10
  authors = [{ name = "Audel Rouhi", email = "knucklessg1@gmail.com" }]