[DOC] Fix example usage of get_context (plus a little more) (#801)

Co-authored-by: Really Him <hesereallyhim@proton.me>
This commit is contained in:
Really Him
2025-05-26 05:22:39 -04:00
committed by GitHub
parent f2f4dbdcbd
commit 294fc6b4d3

View File

@@ -160,7 +160,7 @@ from dataclasses import dataclass
from fake_database import Database # Replace with your actual DB type
from mcp.server.fastmcp import Context, FastMCP
from mcp.server.fastmcp import FastMCP
# Create a named server
mcp = FastMCP("My App")
@@ -192,9 +192,10 @@ mcp = FastMCP("My App", lifespan=app_lifespan)
# Access type-safe lifespan context in tools
@mcp.tool()
def query_db(ctx: Context) -> str:
def query_db() -> str:
"""Tool that uses initialized resources"""
db = ctx.request_context.lifespan_context.db
ctx = mcp.get_context()
db = ctx.request_context.lifespan_context["db"]
return db.query()
```
@@ -631,7 +632,7 @@ server = Server("example-server", lifespan=server_lifespan)
# Access lifespan context in handlers
@server.call_tool()
async def query_db(name: str, arguments: dict) -> list:
ctx = server.get_context()
ctx = server.request_context
db = ctx.lifespan_context["db"]
return await db.query(arguments["query"])
```