Skip to content

Commit 55e596e

Browse files
committed
show-server-info
1 parent 303bbf1 commit 55e596e

File tree

2 files changed

+20
-14
lines changed

2 files changed

+20
-14
lines changed

src/mcp/server/fastmcp/server.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,7 @@ async def _run(self, transport: Literal["stdio", "sse"]):
166166
server_info = await self.get_server_info()
167167
logger.debug(f"Server name: {server_info.name}")
168168
logger.debug(f"Server: {server_info.host}:{server_info.port}")
169+
logger.debug(f"Instructions: {server_info.instructions}")
169170
for asset_type, asset_list in server_info.assets.items():
170171
if not asset_list:
171172
continue
@@ -192,12 +193,10 @@ async def get_server_info(self) -> ServerInfo:
192193
host=self.settings.host,
193194
port=self.settings.port,
194195
instructions=self.instructions,
195-
assets=ServerInfo.ServerInfoAssets(
196-
tools=await self.list_tools(),
197-
resources=await self.list_resources(),
198-
prompts=await self.list_prompts(),
199-
resource_templates=await self.list_resource_templates()
200-
)
196+
tools=await self.list_tools() or [],
197+
resources=await self.list_resources() or [],
198+
prompts=await self.list_prompts() or [],
199+
resource_templates=await self.list_resource_templates() or []
201200
)
202201

203202
def _setup_handlers(self) -> None:

src/mcp/types.py

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1129,18 +1129,25 @@ class ServerResult(
11291129
):
11301130
pass
11311131

1132-
class ServerInfo(BaseModel):
1133-
class ServerInfoAssets(BaseModel):
1134-
tools: list[Tool]
1135-
prompts: list[Prompt]
1136-
resources: list[Resource]
1137-
resource_templates: list[ResourceTemplate]
1138-
1132+
class ServerInfo(BaseModel):
11391133
name: str
11401134
host: str
11411135
port: int
11421136
instructions: str | None
1143-
assets: ServerInfoAssets
1137+
tools: list[Tool]
1138+
prompts: list[Prompt]
1139+
resources: list[Resource]
1140+
resource_templates: list[ResourceTemplate]
1141+
1142+
@property
1143+
def assets(self) -> dict[str, list[Tool] | list[Prompt] | list[Resource] | list[ResourceTemplate]]:
1144+
assets_dict = {
1145+
"tools": self.tools,
1146+
"prompts": self.prompts,
1147+
"resources": self.resources,
1148+
"resource_templates": self.resource_templates
1149+
}
1150+
return assets_dict
11441151

11451152

11461153

0 commit comments

Comments
 (0)