Compare commits

..

No commits in common. "f24f12c4ba3b6dfb1e17efcbcab8674ded05023b" and "5ab63b71cda35a773e92d0ef90373dad762896a9" have entirely different histories.

4 changed files with 5 additions and 20 deletions

View File

@ -3,7 +3,6 @@ import json
import logging
from contextlib import AbstractAsyncContextManager
from typing import Literal, Callable, Any
from importlib import metadata
import jsonref
from maintainer.ai.model.nacos_mcp_info import McpToolMeta, McpServerDetailInfo, \
@ -279,10 +278,6 @@ class NacosServer(Server):
asyncio.create_task(self.subscribe())
if self._nacos_settings.SERVICE_REGISTER and (self.type == "mcp-sse"
or self.type == "mcp-streamable"):
version = metadata.version('nacos-mcp-wrapper-python')
service_meta_data = {
"source": f"nacos-mcp-wrapper-python-{version}",
**self._nacos_settings.SERVICE_META_DATA}
await self.naming_client.register_instance(
request=RegisterInstanceParam(
group_name=server_detail_info.remoteServerConfig.serviceRef.groupName,
@ -290,10 +285,8 @@ class NacosServer(Server):
ip=self._nacos_settings.SERVICE_IP,
port=self._nacos_settings.SERVICE_PORT if self._nacos_settings.SERVICE_PORT else port,
ephemeral=self._nacos_settings.SERVICE_EPHEMERAL,
metadata=service_meta_data
)
)
logging.info(f"Register to nacos success,{self.name},version:{self.version}")
return
mcp_tool_specification = None
@ -342,7 +335,7 @@ class NacosServer(Server):
mcp_tool_specification,
endpoint_spec)
except Exception as e:
logger.info(f"Found MCP server {self.name} in Nacos,try to update it")
logger.info(f"Failed to create MCP server to Nacos,try to update mcp server")
version_detail = None
try:
version_detail = await self.mcp_service.get_mcp_server_detail(
@ -351,12 +344,12 @@ class NacosServer(Server):
self.version
)
except Exception as e_2:
logger.info(f" Version {self.version} of Mcp server {self.name} is not in Nacos, try to update it")
logger.info(f"Cant found version {self.version} of Mcp server {self.name}")
if version_detail is None:
await self.mcp_service.update_mcp_server(
self._nacos_settings.NAMESPACE,
self.name,
True,
False,
server_basic_info,
mcp_tool_specification,
endpoint_spec
@ -369,8 +362,6 @@ class NacosServer(Server):
f"mcp server info is not compatible,{self.name},version:{self.version},reason:{error_msg}"
)
if self._nacos_settings.SERVICE_REGISTER:
version = metadata.version('nacos-mcp-wrapper-python')
service_meta_data = {"source": f"nacos-mcp-wrapper-python-{version}",**self._nacos_settings.SERVICE_META_DATA}
await self.naming_client.register_instance(
request=RegisterInstanceParam(
group_name="DEFAULT_GROUP" if self._nacos_settings.SERVICE_GROUP is None else self._nacos_settings.SERVICE_GROUP,
@ -378,10 +369,8 @@ class NacosServer(Server):
ip=self._nacos_settings.SERVICE_IP,
port=self._nacos_settings.SERVICE_PORT if self._nacos_settings.SERVICE_PORT else port,
ephemeral=self._nacos_settings.SERVICE_EPHEMERAL,
metadata=service_meta_data,
)
)
asyncio.create_task(self.subscribe())
logging.info(f"Register to nacos success,{self.name},version:{self.version}")
except Exception as e:
logging.error(f"Failed to register MCP server to Nacos: {e}")

View File

@ -63,10 +63,6 @@ class NacosSettings(BaseSettings):
description="nacos connection labels",
default={})
SERVICE_META_DATA : Optional[dict] = Field(
description="nacos service metadata",
default={})
class Config:
env_prefix = "NACOS_MCP_SERVER_"

View File

@ -1,7 +1,7 @@
psutil==7.0.0
anyio==4.9.0
mcp==1.9.2
nacos-sdk-python>=2.0.9
nacos-sdk-python>=2.0.8
pydantic==2.11.3
pydantic-settings==2.9.1
jsonref==1.1.0

View File

@ -9,7 +9,7 @@ def read_requirements():
setup(
name='nacos-mcp-wrapper-python',
version='1.0.9', # 项目的版本号
version='1.0.7', # 项目的版本号
packages=find_packages(
exclude=["test", "*.tests", "*.tests.*", "tests.*", "tests"]), # 自动发现所有包
url="https://github.com/nacos-group/nacos-mcp-wrapper-python",