feat: add version string parameter to 'create_initialization_options'

This commit is contained in:
restlessronin 2024-12-05 10:30:01 +05:30 • committed by David Soria Parra
commit 937c640f04
No known key found for this signature in database
3 changed files with 5 additions and 10 deletions

View file

@ -135,14 +135,7 @@ async def run():
await server.run(
read_stream,
write_stream,
InitializationOptions(
server_name="example",
server_version="0.1.0",
capabilities=server.get_capabilities(
notification_options=NotificationOptions(),
experimental_capabilities={},
)
)
server.create_initialization_options("0.1.0")
)
if __name__ == "__main__":

View file

@ -114,6 +114,7 @@ class Server:
def create_initialization_options(
self,
version: str | None = None,
notification_options: NotificationOptions | None = None,
experimental_capabilities: dict[str, dict[str, Any]] | None = None,
) -> InitializationOptions:
@ -133,7 +134,7 @@ class Server:
return InitializationOptions(
server_name=self.name,
server_version=pkg_version("mcp"),
server_version=version if version else pkg_version("mcp"),
capabilities=self.get_capabilities(
notification_options or NotificationOptions(),
experimental_capabilities or {},

View file

@ -19,8 +19,9 @@ Example usage:
async with sse.connect_sse(
request.scope, request.receive, request._send
) as streams:
# Pass user visible version string, egs. 0.1.0
await app.run(
streams[0], streams[1], app.create_initialization_options()
streams[0], streams[1], app.create_initialization_options("0.1.0")
)
async def handle_messages(request):