# mcp
## <ApiType type="Class" slug="m-c-p-client" symbolName="MCPClient" /> MCPClient
Mirascope wrapper around a MCP ClientSession.
It provides a way to get MCP results that are pre-converted into Mirascope-friendly
types.
The underlying MCP ClientSession may be accessed by .session if needed.
<AttributesTable
attributes={[
{
"name": "session",
"type_info": {
"type_str": "ClientSession",
"description": null,
"kind": "simple",
"symbol_name": "ClientSession",
"doc_url": null
},
"description": "Access the underlying MCP ClientSession if needed."
}
]}
/>
## <ApiType type="Function" slug="mirascope-llm-mcp-mcp_client--m-c-p-client-list_tools" symbolName="list_tools" /> list_tools
List all tools available on the MCP server.
<ParametersTable
parameters={[
{
"name": "self",
"type_info": {
"type_str": "Any",
"description": null,
"kind": "simple",
"symbol_name": null,
"doc_url": null
}
}
]}
/>
<ReturnTable
returnType={{
"type_info": {
"type_str": "list[AsyncTool]",
"description": null,
"kind": "generic",
"base_type": {
"type_str": "list",
"description": null,
"kind": "simple",
"symbol_name": "list",
"doc_url": "https://docs.python.org/3/library/stdtypes.html#list"
},
"parameters": [
{
"type_str": "AsyncTool",
"description": null,
"kind": "simple",
"symbol_name": "AsyncTool",
"doc_url": "/docs/api/llm/tools#async-tool"
}
],
"doc_url": null
},
"description": "A list of dynamically created `AsyncTool`s."
}}
/>
## <ApiType type="Function" slug="sse_client" symbolName="sse_client" /> sse_client
Create a Mirascope MCPClient using sse.
<ParametersTable
parameters={[
{
"name": "url",
"type_info": {
"type_str": "str",
"description": null,
"kind": "simple",
"symbol_name": "str",
"doc_url": "https://docs.python.org/3/library/stdtypes.html#str"
}
},
{
"name": "read_timeout_seconds",
"type_info": {
"type_str": "timedelta | None",
"description": null,
"kind": "union",
"base_type": {
"type_str": "Union",
"description": null,
"kind": "simple",
"symbol_name": "Union",
"doc_url": "https://docs.python.org/3/library/typing.html#typing.Union"
},
"parameters": [
{
"type_str": "timedelta",
"description": null,
"kind": "simple",
"symbol_name": "timedelta",
"doc_url": "https://docs.python.org/3/library/datetime.html#datetime.timedelta"
},
{
"type_str": "None",
"description": null,
"kind": "simple",
"symbol_name": "None",
"doc_url": "https://docs.python.org/3/library/constants.html#None"
}
],
"doc_url": null
},
"default": "None"
}
]}
/>
<ReturnTable
returnType={{
"type_info": {
"type_str": "AsyncIterator[MCPClient]",
"description": null,
"kind": "generic",
"base_type": {
"type_str": "AsyncIterator",
"description": null,
"kind": "simple",
"symbol_name": "AsyncIterator",
"doc_url": null
},
"parameters": [
{
"type_str": "MCPClient",
"description": null,
"kind": "simple",
"symbol_name": "MCPClient",
"doc_url": "/docs/api/llm/mcp#m-c-p-client"
}
],
"doc_url": null
}
}}
/>
## <ApiType type="Function" slug="stdio_client" symbolName="stdio_client" /> stdio_client
Create a Mirascope MCPClient using stdio.
<ParametersTable
parameters={[
{
"name": "server_parameters",
"type_info": {
"type_str": "StdioServerParameters",
"description": null,
"kind": "simple",
"symbol_name": "StdioServerParameters",
"doc_url": null
}
},
{
"name": "name",
"type_info": {
"type_str": "str | None",
"description": null,
"kind": "union",
"base_type": {
"type_str": "Union",
"description": null,
"kind": "simple",
"symbol_name": "Union",
"doc_url": "https://docs.python.org/3/library/typing.html#typing.Union"
},
"parameters": [
{
"type_str": "str",
"description": null,
"kind": "simple",
"symbol_name": "str",
"doc_url": "https://docs.python.org/3/library/stdtypes.html#str"
},
{
"type_str": "None",
"description": null,
"kind": "simple",
"symbol_name": "None",
"doc_url": "https://docs.python.org/3/library/constants.html#None"
}
],
"doc_url": null
},
"default": "None"
}
]}
/>
<ReturnTable
returnType={{
"type_info": {
"type_str": "AsyncIterator[MCPClient]",
"description": null,
"kind": "generic",
"base_type": {
"type_str": "AsyncIterator",
"description": null,
"kind": "simple",
"symbol_name": "AsyncIterator",
"doc_url": null
},
"parameters": [
{
"type_str": "MCPClient",
"description": null,
"kind": "simple",
"symbol_name": "MCPClient",
"doc_url": "/docs/api/llm/mcp#m-c-p-client"
}
],
"doc_url": null
}
}}
/>
## <ApiType type="Function" slug="streamable_http_client" symbolName="streamable_http_client" /> streamable_http_client
Create a Mirascope MCPClient using StreamableHTTP.
<ParametersTable
parameters={[
{
"name": "url",
"type_info": {
"type_str": "str",
"description": null,
"kind": "simple",
"symbol_name": "str",
"doc_url": "https://docs.python.org/3/library/stdtypes.html#str"
}
}
]}
/>
<ReturnTable
returnType={{
"type_info": {
"type_str": "AsyncIterator[MCPClient]",
"description": null,
"kind": "generic",
"base_type": {
"type_str": "AsyncIterator",
"description": null,
"kind": "simple",
"symbol_name": "AsyncIterator",
"doc_url": null
},
"parameters": [
{
"type_str": "MCPClient",
"description": null,
"kind": "simple",
"symbol_name": "MCPClient",
"doc_url": "/docs/api/llm/mcp#m-c-p-client"
}
],
"doc_url": null
}
}}
/>