Python nats.py 不像 Go 客户端会自动拆逗号串,把 nats://a:4222,nats://a:4223 整串当单 URL 解析端口 → ValueError: Port '4222,nats:' → invalid connect url,mcp-py 崩溃重启循环。 按逗号拆成 servers 列表传入即可。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -62,9 +62,12 @@ class McpGateway:
|
||||
|
||||
async def serve(self, url: str | None = None) -> None:
|
||||
url = url or os.getenv("NATS_URL", "nats://localhost:4222")
|
||||
# NATS_URL 可为逗号分隔的多节点(集群);Go 客户端能识别逗号串,Python nats.py 不会,
|
||||
# 须拆成列表传给 servers,否则把整串当单 URL 解析端口时报 "invalid connect url"。
|
||||
servers = [u.strip() for u in url.split(",") if u.strip()]
|
||||
# 容忍服务先于 NATS 启动:无限重连 + 等待间隔。
|
||||
self._nc = await nats.connect(
|
||||
url,
|
||||
servers,
|
||||
allow_reconnect=True,
|
||||
max_reconnect_attempts=-1,
|
||||
reconnect_time_wait=1,
|
||||
|
||||
Reference in New Issue
Block a user