Skip to content

Commit d6380dc

Browse files
committed
refactor
1 parent ee6251e commit d6380dc

File tree

1 file changed

+26
-18
lines changed

1 file changed

+26
-18
lines changed

mcp_server_rabbitmq/server.py

Lines changed: 26 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,15 @@
2222

2323

2424
class RabbitMQMCPServer:
25-
def __init__(self):
25+
def __init__(
26+
self,
27+
rabbitmq_host=None,
28+
rabbitmq_port=None,
29+
rabbitmq_username=None,
30+
rabbitmq_password=None,
31+
rabbitmq_use_tls=None,
32+
rabbitmq_api_port=None,
33+
):
2634
# Setup logger
2735
logger.remove()
2836
logger.add(sys.stderr, level=os.getenv("FASTMCP_LOG_LEVEL", "WARNING"))
@@ -36,12 +44,12 @@ def __init__(self):
3644
)
3745

3846
# Connection parameters
39-
self.rabbitmq_host = None
40-
self.rabbitmq_port = None
41-
self.rabbitmq_username = None
42-
self.rabbitmq_password = None
43-
self.rabbitmq_use_tls = None
44-
self.rabbitmq_api_port = None
47+
self.rabbitmq_host = rabbitmq_host
48+
self.rabbitmq_port = rabbitmq_port
49+
self.rabbitmq_username = rabbitmq_username
50+
self.rabbitmq_password = rabbitmq_password
51+
self.rabbitmq_use_tls = rabbitmq_use_tls
52+
self.rabbitmq_api_port = rabbitmq_api_port
4553

4654
# Register tools
4755
self._register_tools()
@@ -62,7 +70,6 @@ def enqueue(queue: str, message: str) -> str:
6270
handle_enqueue(rabbitmq, queue, message)
6371
return "Message successfully enqueued"
6472
except Exception as e:
65-
print(e, file=sys.stderr)
6673
self.logger.error(f"{e}")
6774
return f"Failed to enqueue message: {e}"
6875

@@ -87,7 +94,6 @@ def fanout(exchange: str, message: str) -> str:
8794
@self.mcp.tool()
8895
def list_queues() -> str:
8996
"""List all the queues in the broker."""
90-
print("triggered list queues", file=sys.stderr)
9197
try:
9298
admin = RabbitMQAdmin(
9399
self.rabbitmq_host,
@@ -99,7 +105,6 @@ def list_queues() -> str:
99105
result = handle_list_queues(admin)
100106
return str(result)
101107
except Exception as e:
102-
print(e, file=sys.stderr)
103108
self.logger.error(f"{e}")
104109
return f"Failed to list queues: {e}"
105110

@@ -212,13 +217,6 @@ def get_exchange_info(exchange: str, vhost: str = "/") -> str:
212217

213218
def run(self, args):
214219
"""Run the MCP server with the provided arguments."""
215-
self.rabbitmq_host = args.rabbitmq_host
216-
self.rabbitmq_port = args.port
217-
self.rabbitmq_username = args.username
218-
self.rabbitmq_password = args.password
219-
self.rabbitmq_use_tls = args.use_tls
220-
self.rabbitmq_api_port = args.api_port
221-
222220
self.logger.info(f"Starting RabbitMQ MCP Server v{MCP_SERVER_VERSION}")
223221
self.logger.info(f"Connecting to RabbitMQ at {self.rabbitmq_host}:{self.rabbitmq_port}")
224222

@@ -251,7 +249,17 @@ def main():
251249

252250
args = parser.parse_args()
253251

254-
server = RabbitMQMCPServer()
252+
# Create server with connection parameters from args
253+
server = RabbitMQMCPServer(
254+
rabbitmq_host=args.rabbitmq_host,
255+
rabbitmq_port=args.port,
256+
rabbitmq_username=args.username,
257+
rabbitmq_password=args.password,
258+
rabbitmq_use_tls=args.use_tls,
259+
rabbitmq_api_port=args.api_port,
260+
)
261+
262+
# Run the server with remaining args
255263
server.run(args)
256264

257265

0 commit comments

Comments
 (0)