import random from fastmcp import FastMCP from fastmcp.server.auth import BearerAuthProvider from fastmcp.server.auth.providers.bearer import RSAKeyPair key_pair = RSAKeyPair.generate() access_token = key_pair.create_token(audience="dice-server") auth = BearerAuthProvider( public_key=key_pair.public_key, audience="dice-server", ) mcp = FastMCP( name="Dice Roller", # auth=auth, ) @mcp.tool() def roll_dice(n_dice: int) -> list[int]: """Roll `n_dice` 6-sided dice and return the results.""" return [random.randint(1, 6) for _ in range(n_dice)] if __name__ == "__main__": print(f"\n---\n\nšŸ”‘ Dice Roller access token:\n\n{access_token}\n\n---\n") # mcp.run(transport="sse", port=8000) mcp.run()