@@ -80,6 +80,8 @@ class Settings(BaseSettings, Generic[LifespanResultT]):
8080 # prompt settings
8181 warn_on_duplicate_prompts : bool = True
8282
83+ show_server_info : bool = True
84+
8385 dependencies : list [str ] = Field (
8486 default_factory = list ,
8587 description = "List of dependencies to install in the server environment" ,
@@ -140,7 +142,7 @@ def name(self) -> str:
140142 def instructions (self ) -> str | None :
141143 return self ._mcp_server .instructions
142144
143- def run (self , transport : Literal ["stdio" , "sse" ] = "stdio" , show_server_info = True ) -> None :
145+ def run (self , transport : Literal ["stdio" , "sse" ] = "stdio" ) -> None :
144146 """Run the FastMCP server. Note this is a synchronous function.
145147
146148 Args:
@@ -150,25 +152,26 @@ def run(self, transport: Literal["stdio", "sse"] = "stdio", show_server_info = T
150152 if transport not in TRANSPORTS .__args__ : # type: ignore
151153 raise ValueError (f"Unknown transport: { transport } " )
152154
153- run = lambda : self ._run (transport , show_server_info )
155+ run = lambda : self ._run (transport )
154156 anyio .run (run )
155157
156- async def _run (transport : Literal ["stdio" , "sse" ], show_server_info : bool = True ):
157- logger .info (f"Server name: { mcp .name } " )
158- logger .info (f"Server: { mcp .settings .host } :{ mcp .settings .port } " )
159- assets = {
160- 'tools' : await mcp .list_tools (),
161- 'resources' : await mcp .list_resources (),
162- 'prompts' : await mcp .list_prompts (),
163- 'resource_templates' : await mcp .list_resource_templates ()
164- }
165- for asset_type , asset_list in assets .items ():
166- if not asset_list :
167- continue
168- logger .info (f"{ asset_type } :" )
169- for asset in asset_list :
170- logger .info (f" - { asset .name } - { asset .description } " )
171- logger .info ("Server running..." )
158+ async def _run (transport : Literal ["stdio" , "sse" ]):
159+ if self .settings .show_server_info :
160+ logger .info (f"Server name: { mcp .name } " )
161+ logger .info (f"Server: { mcp .settings .host } :{ mcp .settings .port } " )
162+ assets = {
163+ 'tools' : await mcp .list_tools (),
164+ 'resources' : await mcp .list_resources (),
165+ 'prompts' : await mcp .list_prompts (),
166+ 'resource_templates' : await mcp .list_resource_templates ()
167+ }
168+ for asset_type , asset_list in assets .items ():
169+ if not asset_list :
170+ continue
171+ logger .info (f"{ asset_type } :" )
172+ for asset in asset_list :
173+ logger .info (f" - { asset .name } - { asset .description } " )
174+ logger .info ("Server running..." )
172175 if transport == "stdio" :
173176 await self .run_stdio_async ()
174177 else : # transport == "sse"
0 commit comments