From dd1ff237a83580ef39e077abcb50252b5ebdd766 Mon Sep 17 00:00:00 2001 From: vipyne Date: Tue, 24 Jun 2025 12:35:55 -0500 Subject: [PATCH 1/2] lint mcp_service --- src/pipecat/services/mcp_service.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pipecat/services/mcp_service.py b/src/pipecat/services/mcp_service.py index 2e519dd24..a644d8f1b 100644 --- a/src/pipecat/services/mcp_service.py +++ b/src/pipecat/services/mcp_service.py @@ -94,7 +94,7 @@ class MCPClient(BaseObject): url=self._server_params.url, headers=self._server_params.headers, timeout=self._server_params.timeout, - sse_read_timeout=self._server_params.sse_read_timeout + sse_read_timeout=self._server_params.sse_read_timeout, ) as (read, write): async with self._session(read, write) as session: await session.initialize() @@ -103,15 +103,15 @@ class MCPClient(BaseObject): error_msg = f"Error calling mcp tool {function_name}: {str(e)}" logger.error(error_msg) logger.exception("Full exception details:") - await result_callback(error_msg)\ - + await result_callback(error_msg) + logger.debug(f"SSE server parameters: {self._server_params}") - + async with self._client( url=self._server_params.url, headers=self._server_params.headers, timeout=self._server_params.timeout, - sse_read_timeout=self._server_params.sse_read_timeout + sse_read_timeout=self._server_params.sse_read_timeout, ) as (read, write): async with self._session(read, write) as session: await session.initialize() From 20047c369e2f07453f2b3d8e0c785dcc3f66e583 Mon Sep 17 00:00:00 2001 From: vipyne Date: Tue, 24 Jun 2025 12:37:18 -0500 Subject: [PATCH 2/2] mcp: update examples to use SseServerParameter --- examples/foundational/39a-mcp-run-sse.py | 3 ++- examples/foundational/39b-multiple-mcp.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/foundational/39a-mcp-run-sse.py b/examples/foundational/39a-mcp-run-sse.py index 8b43b3022..fbbcbcc6a 100644 --- a/examples/foundational/39a-mcp-run-sse.py +++ b/examples/foundational/39a-mcp-run-sse.py @@ -9,6 +9,7 @@ import os from dotenv import load_dotenv from loguru import logger +from mcp.client.session_group import SseServerParameters from pipecat.audio.vad.silero import SileroVADAnalyzer from pipecat.pipeline.pipeline import Pipeline @@ -63,7 +64,7 @@ async def run_example(transport: BaseTransport, _: argparse.Namespace, handle_si try: # https://docs.mcp.run/integrating/tutorials/mcp-run-sse-openai-agents/ - mcp = MCPClient(server_params=os.getenv("MCP_RUN_SSE_URL")) + mcp = MCPClient(server_params=SseServerParameters(url=os.getenv("MCP_RUN_SSE_URL"))) except Exception as e: logger.error(f"error setting up mcp") logger.exception("error trace:") diff --git a/examples/foundational/39b-multiple-mcp.py b/examples/foundational/39b-multiple-mcp.py index 3ba90d580..7d1396834 100644 --- a/examples/foundational/39b-multiple-mcp.py +++ b/examples/foundational/39b-multiple-mcp.py @@ -15,6 +15,7 @@ import aiohttp from dotenv import load_dotenv from loguru import logger from mcp import StdioServerParameters +from mcp.client.session_group import SseServerParameters from PIL import Image from pipecat.adapters.schemas.tools_schema import ToolsSchema @@ -149,7 +150,7 @@ async def run_example(transport: BaseTransport, _: argparse.Namespace, handle_si # https://docs.mcp.run/integrating/tutorials/mcp-run-sse-openai-agents/ # ie. "https://www.mcp.run/api/mcp/sse?..." # ensure the profile has a tool or few installed - mcp_run = MCPClient(server_params=os.getenv("MCP_RUN_SSE_URL")) + mcp_run = MCPClient(server_params=SseServerParameters(url=os.getenv("MCP_RUN_SSE_URL"))) except Exception as e: logger.error(f"error setting up mcp.run") logger.exception("error trace:")