wrap tools = await mcp.register_tools(llm) in try in examples
This commit is contained in:
@@ -144,7 +144,12 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
|
|||||||
|
|
||||||
mcp_image = UrlToImageProcessor(aiohttp_session=session)
|
mcp_image = UrlToImageProcessor(aiohttp_session=session)
|
||||||
|
|
||||||
tools = await mcp.register_tools(llm)
|
tools = {}
|
||||||
|
try:
|
||||||
|
tools = await mcp.register_tools(llm)
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(f"error registering tools")
|
||||||
|
logger.exception("error trace:")
|
||||||
|
|
||||||
system = f"""
|
system = f"""
|
||||||
You are a helpful LLM in a WebRTC call.
|
You are a helpful LLM in a WebRTC call.
|
||||||
|
|||||||
@@ -79,7 +79,12 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
|
|||||||
logger.error(f"error setting up mcp")
|
logger.error(f"error setting up mcp")
|
||||||
logger.exception("error trace:")
|
logger.exception("error trace:")
|
||||||
|
|
||||||
tools = await mcp.register_tools(llm)
|
tools = {}
|
||||||
|
try:
|
||||||
|
tools = await mcp.register_tools(llm)
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(f"error registering tools")
|
||||||
|
logger.exception("error trace:")
|
||||||
|
|
||||||
system = f"""
|
system = f"""
|
||||||
You are a helpful LLM in a WebRTC call.
|
You are a helpful LLM in a WebRTC call.
|
||||||
|
|||||||
@@ -132,9 +132,10 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
|
|||||||
system = f"""
|
system = f"""
|
||||||
You are a helpful LLM in a WebRTC call.
|
You are a helpful LLM in a WebRTC call.
|
||||||
Your goal is to demonstrate your capabilities in a succinct way.
|
Your goal is to demonstrate your capabilities in a succinct way.
|
||||||
You have access to a number of tools provided by NASA MCP. Use any and all tools to help users.
|
You have access to tools to search the Rijksmuseum collection.
|
||||||
When asked for today's date, use 'https://www.datetoday.net/'.
|
Offer, for example, to show the earliest Rembrandt work from the museum. Use the `search_artwork` tool.
|
||||||
When asked for the astronomy picture of the day, use 'https://www.datetoday.net/', to get today's date.
|
The tool may respond with a JSON object with an `artworks` array. Choose the art from that array.
|
||||||
|
Once the tool has responded, tell the user the title and use the `open_image_in_browser` tool.
|
||||||
Your output will be converted to audio so don't include special characters in your answers.
|
Your output will be converted to audio so don't include special characters in your answers.
|
||||||
Respond to what the user said in a creative and helpful way.
|
Respond to what the user said in a creative and helpful way.
|
||||||
Don't overexplain what you are doing.
|
Don't overexplain what you are doing.
|
||||||
@@ -147,13 +148,13 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
|
|||||||
mcp = MCPClient(
|
mcp = MCPClient(
|
||||||
server_params=StdioServerParameters(
|
server_params=StdioServerParameters(
|
||||||
command=shutil.which("npx"),
|
command=shutil.which("npx"),
|
||||||
args=["-y", "@programcomputer/nasa-mcp-server@latest"],
|
# https://github.com/r-huijts/rijksmuseum-mcp
|
||||||
# https://api.nasa.gov
|
args=["-y", "mcp-server-error setting up mcp"],
|
||||||
env={"NASA_API_KEY": os.getenv("NASA_API_KEY")},
|
env={"RIJKSMUSEUM_API_KEY": os.getenv("RIJKSMUSEUM_API_KEY")},
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"error setting up nasa mcp")
|
logger.error(f"error setting up rijksmuseum mcp")
|
||||||
logger.exception("error trace:")
|
logger.exception("error trace:")
|
||||||
try:
|
try:
|
||||||
# https://docs.mcp.run/integrating/tutorials/mcp-run-sse-openai-agents/
|
# https://docs.mcp.run/integrating/tutorials/mcp-run-sse-openai-agents/
|
||||||
@@ -164,8 +165,14 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
|
|||||||
logger.error(f"error setting up mcp.run")
|
logger.error(f"error setting up mcp.run")
|
||||||
logger.exception("error trace:")
|
logger.exception("error trace:")
|
||||||
|
|
||||||
tools = await mcp.register_tools(llm)
|
tools = {}
|
||||||
run_tools = await mcp_run.register_tools(llm)
|
run_tools = {}
|
||||||
|
try:
|
||||||
|
tools = await mcp.register_tools(llm)
|
||||||
|
run_tools = await mcp_run.register_tools(llm)
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(f"error registering tools")
|
||||||
|
logger.exception("error trace:")
|
||||||
|
|
||||||
all_standard_tools = run_tools.standard_tools + tools.standard_tools
|
all_standard_tools = run_tools.standard_tools + tools.standard_tools
|
||||||
all_tools = ToolsSchema(standard_tools=all_standard_tools)
|
all_tools = ToolsSchema(standard_tools=all_standard_tools)
|
||||||
@@ -219,9 +226,9 @@ async def bot(runner_args: RunnerArguments):
|
|||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
if not os.getenv("NASA_API_KEY") or not os.getenv("MCP_RUN_SSE_URL"):
|
if not os.getenv("RIJKSMUSEUM_API_KEY") or not os.getenv("MCP_RUN_SSE_URL"):
|
||||||
logger.error(
|
logger.error(
|
||||||
f"Please set NASA_API_KEY and MCP_RUN_SSE_URL environment variables. See https://api.nasa.gov and https://mcp.run"
|
f"Please set RIJKSMUSEUM_API_KEY and MCP_RUN_SSE_URL environment variables. See https://github.com/r-huijts/rijksmuseum-mcp and https://mcp.run"
|
||||||
)
|
)
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
|||||||
@@ -85,7 +85,12 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
|
|||||||
logger.error(f"error setting up mcp")
|
logger.error(f"error setting up mcp")
|
||||||
logger.exception("error trace:")
|
logger.exception("error trace:")
|
||||||
|
|
||||||
tools = await mcp.register_tools(llm)
|
tools = {}
|
||||||
|
try:
|
||||||
|
tools = await mcp.register_tools(llm)
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(f"error registering tools")
|
||||||
|
logger.exception("error trace:")
|
||||||
|
|
||||||
system = f"""
|
system = f"""
|
||||||
You are a helpful LLM in a WebRTC call.
|
You are a helpful LLM in a WebRTC call.
|
||||||
|
|||||||
Reference in New Issue
Block a user