mcp-use 1.3.12__py3-none-any.whl → 1.3.13__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of mcp-use might be problematic. Click here for more details.

Files changed (101) hide show
  1. mcp_use/__init__.py +1 -1
  2. mcp_use/adapters/.deprecated +0 -0
  3. mcp_use/adapters/__init__.py +18 -7
  4. mcp_use/adapters/base.py +12 -185
  5. mcp_use/adapters/langchain_adapter.py +12 -219
  6. mcp_use/agents/adapters/__init__.py +10 -0
  7. mcp_use/agents/adapters/base.py +193 -0
  8. mcp_use/agents/adapters/langchain_adapter.py +228 -0
  9. mcp_use/agents/base.py +1 -1
  10. mcp_use/agents/managers/__init__.py +19 -0
  11. mcp_use/agents/managers/base.py +36 -0
  12. mcp_use/agents/managers/server_manager.py +131 -0
  13. mcp_use/agents/managers/tools/__init__.py +15 -0
  14. mcp_use/agents/managers/tools/base_tool.py +19 -0
  15. mcp_use/agents/managers/tools/connect_server.py +69 -0
  16. mcp_use/agents/managers/tools/disconnect_server.py +43 -0
  17. mcp_use/agents/managers/tools/get_active_server.py +29 -0
  18. mcp_use/agents/managers/tools/list_servers_tool.py +53 -0
  19. mcp_use/agents/managers/tools/search_tools.py +328 -0
  20. mcp_use/agents/mcpagent.py +16 -14
  21. mcp_use/agents/remote.py +14 -1
  22. mcp_use/auth/.deprecated +0 -0
  23. mcp_use/auth/__init__.py +19 -4
  24. mcp_use/auth/bearer.py +11 -12
  25. mcp_use/auth/oauth.py +11 -620
  26. mcp_use/auth/oauth_callback.py +16 -207
  27. mcp_use/client/__init__.py +1 -0
  28. mcp_use/client/auth/__init__.py +6 -0
  29. mcp_use/client/auth/bearer.py +23 -0
  30. mcp_use/client/auth/oauth.py +629 -0
  31. mcp_use/client/auth/oauth_callback.py +214 -0
  32. mcp_use/client/client.py +356 -0
  33. mcp_use/client/config.py +106 -0
  34. mcp_use/client/connectors/__init__.py +20 -0
  35. mcp_use/client/connectors/base.py +470 -0
  36. mcp_use/client/connectors/http.py +304 -0
  37. mcp_use/client/connectors/sandbox.py +332 -0
  38. mcp_use/client/connectors/stdio.py +109 -0
  39. mcp_use/client/connectors/utils.py +13 -0
  40. mcp_use/client/connectors/websocket.py +257 -0
  41. mcp_use/client/exceptions.py +31 -0
  42. mcp_use/client/middleware/__init__.py +50 -0
  43. mcp_use/client/middleware/logging.py +31 -0
  44. mcp_use/client/middleware/metrics.py +314 -0
  45. mcp_use/client/middleware/middleware.py +266 -0
  46. mcp_use/client/session.py +162 -0
  47. mcp_use/client/task_managers/__init__.py +20 -0
  48. mcp_use/client/task_managers/base.py +145 -0
  49. mcp_use/client/task_managers/sse.py +84 -0
  50. mcp_use/client/task_managers/stdio.py +69 -0
  51. mcp_use/client/task_managers/streamable_http.py +86 -0
  52. mcp_use/client/task_managers/websocket.py +68 -0
  53. mcp_use/client.py +12 -344
  54. mcp_use/config.py +20 -97
  55. mcp_use/connectors/.deprecated +0 -0
  56. mcp_use/connectors/__init__.py +46 -20
  57. mcp_use/connectors/base.py +12 -455
  58. mcp_use/connectors/http.py +13 -300
  59. mcp_use/connectors/sandbox.py +13 -306
  60. mcp_use/connectors/stdio.py +13 -104
  61. mcp_use/connectors/utils.py +15 -8
  62. mcp_use/connectors/websocket.py +13 -252
  63. mcp_use/exceptions.py +33 -18
  64. mcp_use/managers/.deprecated +0 -0
  65. mcp_use/managers/__init__.py +56 -17
  66. mcp_use/managers/base.py +13 -31
  67. mcp_use/managers/server_manager.py +13 -119
  68. mcp_use/managers/tools/__init__.py +45 -15
  69. mcp_use/managers/tools/base_tool.py +5 -16
  70. mcp_use/managers/tools/connect_server.py +5 -67
  71. mcp_use/managers/tools/disconnect_server.py +5 -41
  72. mcp_use/managers/tools/get_active_server.py +5 -26
  73. mcp_use/managers/tools/list_servers_tool.py +5 -51
  74. mcp_use/managers/tools/search_tools.py +17 -321
  75. mcp_use/middleware/.deprecated +0 -0
  76. mcp_use/middleware/__init__.py +89 -50
  77. mcp_use/middleware/logging.py +14 -26
  78. mcp_use/middleware/metrics.py +30 -303
  79. mcp_use/middleware/middleware.py +39 -246
  80. mcp_use/session.py +13 -149
  81. mcp_use/task_managers/.deprecated +0 -0
  82. mcp_use/task_managers/__init__.py +48 -20
  83. mcp_use/task_managers/base.py +13 -140
  84. mcp_use/task_managers/sse.py +13 -79
  85. mcp_use/task_managers/stdio.py +13 -64
  86. mcp_use/task_managers/streamable_http.py +15 -81
  87. mcp_use/task_managers/websocket.py +13 -63
  88. mcp_use/telemetry/events.py +58 -0
  89. mcp_use/telemetry/telemetry.py +71 -1
  90. mcp_use/types/.deprecated +0 -0
  91. mcp_use/types/sandbox.py +13 -18
  92. {mcp_use-1.3.12.dist-info → mcp_use-1.3.13.dist-info}/METADATA +59 -34
  93. mcp_use-1.3.13.dist-info/RECORD +109 -0
  94. mcp_use-1.3.12.dist-info/RECORD +0 -64
  95. mcp_use-1.3.12.dist-info/licenses/LICENSE +0 -21
  96. /mcp_use/{observability → agents/observability}/__init__.py +0 -0
  97. /mcp_use/{observability → agents/observability}/callbacks_manager.py +0 -0
  98. /mcp_use/{observability → agents/observability}/laminar.py +0 -0
  99. /mcp_use/{observability → agents/observability}/langfuse.py +0 -0
  100. {mcp_use-1.3.12.dist-info → mcp_use-1.3.13.dist-info}/WHEEL +0 -0
  101. {mcp_use-1.3.12.dist-info → mcp_use-1.3.13.dist-info}/entry_points.txt +0 -0
@@ -1,68 +1,18 @@
1
- """
2
- WebSocket connection management for MCP implementations.
1
+ # mcp_use/task_managers/websocket.py
2
+ import warnings
3
3
 
4
- This module provides a connection manager for WebSocket-based MCP connections.
5
- """
4
+ from typing_extensions import deprecated
6
5
 
7
- from typing import Any
6
+ from mcp_use.client.task_managers.websocket import WebSocketConnectionManager as _WebSocketConnectionManager
8
7
 
9
- from mcp.client.websocket import websocket_client
8
+ warnings.warn(
9
+ "mcp_use.task_managers.websocket is deprecated. "
10
+ "Use mcp_use.client.task_managers.websocket. "
11
+ "This import will be removed in version 1.4.0",
12
+ DeprecationWarning,
13
+ stacklevel=2,
14
+ )
10
15
 
11
- from ..logging import logger
12
- from .base import ConnectionManager
13
16
 
14
-
15
- class WebSocketConnectionManager(ConnectionManager[tuple[Any, Any]]):
16
- """Connection manager for WebSocket-based MCP connections.
17
-
18
- This class handles the lifecycle of WebSocket connections, ensuring proper
19
- connection establishment and cleanup.
20
- """
21
-
22
- def __init__(
23
- self,
24
- url: str,
25
- headers: dict[str, str] | None = None,
26
- ):
27
- """Initialize a new WebSocket connection manager.
28
-
29
- Args:
30
- url: The WebSocket URL to connect to
31
- headers: Optional HTTP headers
32
- """
33
- super().__init__()
34
- self.url = url
35
- self.headers = headers or {}
36
-
37
- async def _establish_connection(self) -> tuple[Any, Any]:
38
- """Establish a WebSocket connection.
39
-
40
- Returns:
41
- The established WebSocket connection
42
-
43
- Raises:
44
- Exception: If connection cannot be established
45
- """
46
- logger.debug(f"Connecting to WebSocket: {self.url}")
47
- # Create the context manager
48
- # Note: The current MCP websocket_client implementation doesn't support headers
49
- # If headers need to be passed, this would need to be updated when MCP supports it
50
- self._ws_ctx = websocket_client(self.url)
51
-
52
- # Enter the context manager
53
- read_stream, write_stream = await self._ws_ctx.__aenter__()
54
-
55
- # Return the streams
56
- return (read_stream, write_stream)
57
-
58
- async def _close_connection(self) -> None:
59
- """Close the WebSocket connection."""
60
- if self._ws_ctx:
61
- # Exit the context manager
62
- try:
63
- logger.debug("Closing WebSocket connection")
64
- await self._ws_ctx.__aexit__(None, None, None)
65
- except Exception as e:
66
- logger.warning(f"Error closing WebSocket connection: {e}")
67
- finally:
68
- self._ws_ctx = None
17
+ @deprecated("Use mcp_use.client.task_managers.websocket.WebSocketConnectionManager")
18
+ class WebSocketConnectionManager(_WebSocketConnectionManager): ...
@@ -91,3 +91,61 @@ class MCPAgentExecutionEvent(BaseTelemetryEvent):
91
91
  "error_type": self.error_type,
92
92
  "conversation_history_length": self.conversation_history_length,
93
93
  }
94
+
95
+
96
+ @dataclass
97
+ class FeatureUsageEvent(BaseTelemetryEvent):
98
+ """Event for tracking feature usage across the library"""
99
+
100
+ feature_name: str
101
+ class_name: str
102
+ method_name: str
103
+ success: bool
104
+ execution_time_ms: int | None = None
105
+ error_type: str | None = None
106
+ additional_properties: dict[str, Any] | None = None
107
+
108
+ @property
109
+ def name(self) -> str:
110
+ return "feature_usage"
111
+
112
+ @property
113
+ def properties(self) -> dict[str, Any]:
114
+ props = {
115
+ "feature_name": self.feature_name,
116
+ "class_name": self.class_name,
117
+ "method_name": self.method_name,
118
+ "success": self.success,
119
+ "execution_time_ms": self.execution_time_ms,
120
+ "error_type": self.error_type,
121
+ }
122
+ if self.additional_properties:
123
+ props.update(self.additional_properties)
124
+ return props
125
+
126
+
127
+ @dataclass
128
+ class CLICommandEvent(BaseTelemetryEvent):
129
+ """Event for tracking CLI command usage"""
130
+
131
+ command: str
132
+ success: bool
133
+ execution_time_ms: int | None = None
134
+ error_type: str | None = None
135
+ additional_properties: dict[str, Any] | None = None
136
+
137
+ @property
138
+ def name(self) -> str:
139
+ return "cli_command"
140
+
141
+ @property
142
+ def properties(self) -> dict[str, Any]:
143
+ props = {
144
+ "command": self.command,
145
+ "success": self.success,
146
+ "execution_time_ms": self.execution_time_ms,
147
+ "error_type": self.error_type,
148
+ }
149
+ if self.additional_properties:
150
+ props.update(self.additional_properties)
151
+ return props
@@ -1,6 +1,7 @@
1
1
  import logging
2
2
  import os
3
3
  import platform
4
+ import time
4
5
  import uuid
5
6
  from collections.abc import Callable
6
7
  from functools import wraps
@@ -11,7 +12,7 @@ from posthog import Posthog
11
12
  from scarf import ScarfEventLogger
12
13
 
13
14
  from mcp_use.logging import MCP_USE_DEBUG
14
- from mcp_use.telemetry.events import BaseTelemetryEvent, MCPAgentExecutionEvent
15
+ from mcp_use.telemetry.events import BaseTelemetryEvent, FeatureUsageEvent, MCPAgentExecutionEvent
15
16
  from mcp_use.telemetry.utils import get_package_version
16
17
  from mcp_use.utils import singleton
17
18
 
@@ -30,6 +31,52 @@ def requires_telemetry(func: Callable) -> Callable:
30
31
  return wrapper
31
32
 
32
33
 
34
+ def telemetry(feature_name: str, additional_properties: dict[str, Any] | None = None):
35
+ """Decorator to automatically track feature usage"""
36
+
37
+ def decorator(func: Callable) -> Callable:
38
+ @wraps(func)
39
+ def wrapper(self, *args, **kwargs):
40
+ start_time = time.time()
41
+ success = True
42
+ error_type = None
43
+
44
+ try:
45
+ result = func(self, *args, **kwargs)
46
+ return result
47
+ except Exception as e:
48
+ success = False
49
+ error_type = type(e).__name__
50
+ raise
51
+ finally:
52
+ execution_time_ms = int((time.time() - start_time) * 1000)
53
+
54
+ # Get telemetry instance (try common patterns)
55
+ telemetry = None
56
+ if hasattr(self, "telemetry"):
57
+ telemetry = self.telemetry
58
+ elif hasattr(self, "_telemetry"):
59
+ telemetry = self._telemetry
60
+ else:
61
+ # Fallback to singleton instance
62
+ telemetry = Telemetry()
63
+
64
+ if telemetry:
65
+ telemetry.telemetry(
66
+ feature_name=feature_name,
67
+ class_name=self.__class__.__name__,
68
+ method_name=func.__name__,
69
+ success=success,
70
+ execution_time_ms=execution_time_ms,
71
+ error_type=error_type,
72
+ additional_properties=additional_properties,
73
+ )
74
+
75
+ return wrapper
76
+
77
+ return decorator
78
+
79
+
33
80
  def get_cache_home() -> Path:
34
81
  """Get platform-appropriate cache directory."""
35
82
  # XDG_CACHE_HOME for Linux and manually set envs
@@ -272,6 +319,29 @@ class Telemetry:
272
319
  )
273
320
  self.capture(event)
274
321
 
322
+ @requires_telemetry
323
+ def telemetry(
324
+ self,
325
+ feature_name: str,
326
+ class_name: str,
327
+ method_name: str,
328
+ success: bool,
329
+ execution_time_ms: int | None = None,
330
+ error_type: str | None = None,
331
+ additional_properties: dict[str, Any] | None = None,
332
+ ) -> None:
333
+ """Track feature usage across the library"""
334
+ event = FeatureUsageEvent(
335
+ feature_name=feature_name,
336
+ class_name=class_name,
337
+ method_name=method_name,
338
+ success=success,
339
+ execution_time_ms=execution_time_ms,
340
+ error_type=error_type,
341
+ additional_properties=additional_properties,
342
+ )
343
+ self.capture(event)
344
+
275
345
  @requires_telemetry
276
346
  def flush(self) -> None:
277
347
  """Flush any queued telemetry events"""
File without changes
mcp_use/types/sandbox.py CHANGED
@@ -1,23 +1,18 @@
1
- """Type definitions for sandbox-related configurations."""
1
+ # mcp_use/types/sandbox.py
2
+ import warnings
2
3
 
3
- from typing import NotRequired, TypedDict
4
+ from typing_extensions import deprecated
4
5
 
6
+ from mcp_use.client.connectors.sandbox import SandboxOptions as _SandboxOptions
5
7
 
6
- class SandboxOptions(TypedDict):
7
- """Configuration options for sandbox execution.
8
+ warnings.warn(
9
+ "mcp_use.types.sandbox is deprecated. "
10
+ "Use mcp_use.client.connectors.sandbox. "
11
+ "This import will be removed in version 1.4.0",
12
+ DeprecationWarning,
13
+ stacklevel=2,
14
+ )
8
15
 
9
- This type defines the configuration options available when running
10
- MCP servers in a sandboxed environment (e.g., using E2B).
11
- """
12
16
 
13
- api_key: str
14
- """Direct API key for sandbox provider (e.g., E2B API key).
15
- If not provided, will use E2B_API_KEY environment variable."""
16
-
17
- sandbox_template_id: NotRequired[str]
18
- """Template ID for the sandbox environment.
19
- Default: 'base'"""
20
-
21
- supergateway_command: NotRequired[str]
22
- """Command to run supergateway.
23
- Default: 'npx -y supergateway'"""
17
+ @deprecated("Use mcp_use.client.connectors.sandbox.SandboxOptions")
18
+ class SandboxOptions(_SandboxOptions): ...
@@ -1,10 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mcp-use
3
- Version: 1.3.12
3
+ Version: 1.3.13
4
4
  Summary: MCP Library for LLMs
5
- Author-email: Pietro Zullo <pietro.zullo@gmail.com>
5
+ Author-email: "mcp-use, Inc." <dev@mcp-use.io>, Pietro Zullo <pietro.zullo@gmail.com>
6
6
  License: MIT
7
- License-File: LICENSE
8
7
  Classifier: Development Status :: 3 - Alpha
9
8
  Classifier: Intended Audience :: Developers
10
9
  Classifier: License :: OSI Approved :: MIT License
@@ -17,7 +16,8 @@ Requires-Python: >=3.11
17
16
  Requires-Dist: aiohttp>=3.9.0
18
17
  Requires-Dist: authlib>=1.6.3
19
18
  Requires-Dist: jsonschema-pydantic>=0.1.0
20
- Requires-Dist: langchain>=0.1.0
19
+ Requires-Dist: langchain-core==0.3.79
20
+ Requires-Dist: langchain==0.3.27
21
21
  Requires-Dist: mcp>=1.10.0
22
22
  Requires-Dist: posthog>=4.8.0
23
23
  Requires-Dist: pydantic-core==2.33.2
@@ -54,8 +54,7 @@ Description-Content-Type: text/markdown
54
54
  </picture>
55
55
  </div>
56
56
 
57
-
58
- <h1 align="center">🚀 Create MCP Clients and Agents</h1>
57
+ <h1 align="center">🚀 MCP-Use for Python</h1>
59
58
  <p align="center">
60
59
  <a href="https://github.com/pietrozullo/mcp-use/stargazers" alt="GitHub stars">
61
60
  <img src="https://img.shields.io/github/stars/pietrozullo/mcp-use?style=social" /></a>
@@ -63,37 +62,42 @@ Description-Content-Type: text/markdown
63
62
  <img src="https://static.pepy.tech/badge/mcp-use" /></a>
64
63
  <a href="https://pypi.org/project/mcp_use/" alt="PyPI Version">
65
64
  <img src="https://img.shields.io/pypi/v/mcp_use.svg"/></a>
66
- <a href="https://github.com/mcp-use/mcp-use-ts" alt="TypeScript">
67
- <img src="https://img.shields.io/badge/TypeScript-mcp--use-3178C6?logo=typescript&logoColor=white" /></a>
68
65
  <a href="https://github.com/pietrozullo/mcp-use/blob/main/LICENSE" alt="License">
69
66
  <img src="https://img.shields.io/github/license/pietrozullo/mcp-use" /></a>
70
67
  <a href="https://docs.mcp-use.com" alt="Documentation">
71
68
  <img src="https://img.shields.io/badge/docs-mcp--use.com-blue" /></a>
72
- <a href="https://mcp-use.com" alt="Website">
73
- <img src="https://img.shields.io/badge/website-mcp--use.com-blue" /></a>
74
- </p>
75
- <p align="center">
76
- <a href="https://x.com/pietrozullo" alt="Twitter Follow - Pietro">
77
- <img src="https://img.shields.io/twitter/follow/Pietro?style=social" /></a>
78
- <a href="https://x.com/pederzh" alt="Twitter Follow - Luigi">
79
- <img src="https://img.shields.io/twitter/follow/Luigi?style=social" /></a>
80
69
  <a href="https://discord.gg/XkNkSkMz3V" alt="Discord">
81
70
  <img src="https://dcbadge.limes.pink/api/server/XkNkSkMz3V?style=flat" /></a>
82
71
  </p>
83
72
  </div>
84
73
 
85
- 🌐 MCP-Use is the open source way to connect **any LLM to any MCP server** and build custom MCP agents that have tool access, without using closed source or application clients.
74
+ > **📦 Part of the [MCP-Use Monorepo](../../README.md)** - This is the Python implementation. Also available in [TypeScript](../typescript/README.md).
75
+
76
+ 🌐 **MCP-Use for Python** is the complete way to connect **any LLM to any MCP server** and build custom MCP agents with tool access.
77
+
78
+ 💡 Let your Python applications leverage the power of the Model Context Protocol with support for agents, clients, and advanced features.
79
+
80
+ ## 🏗️ What's Included
81
+
82
+ MCP-Use for Python provides three main capabilities:
83
+
84
+ - **🤖 MCP Agent** - Build AI agents that can use tools and reason across multiple steps
85
+ - **🔌 MCP Client** - Connect directly to MCP servers for programmatic tool access
86
+ - **🛠️ MCP Server** - _Coming soon!_ For now, use the [TypeScript version](../typescript/README.md#%EF%B8%8F-mcp-server-framework)
86
87
 
87
- 💡 Let developers easily connect any LLM to tools like web browsing, file operations, and more.
88
+ ---
88
89
 
89
- - If you want to get started quickly check out [mcp-use.com website](https://mcp-use.com/) to build and deploy agents with your favorite MCP servers.
90
- - Visit the [mcp-use docs](https://docs.mcp-use.com/) to get started with mcp-use library
91
- - For the TypeScript version, visit [mcp-use-ts](https://github.com/mcp-use/mcp-use-ts)
90
+ ## 📖 Quick Links
92
91
 
93
- | Supports | |
94
- | :------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
92
+ - **[Main Repository](../../README.md)** - Overview of the entire MCP-Use ecosystem
93
+ - **[TypeScript Version](../typescript/README.md)** - TypeScript implementation with server framework
94
+ - **[Documentation](https://docs.mcp-use.com)** - Complete online documentation
95
+ - **[Examples](./examples/)** - Python code examples
96
+
97
+ | Supports | |
98
+ | :------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
95
99
  | **Primitives** | [![Tools](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=primitive-tools&label=Tools&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![Resources](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=primitive-resources&label=Resources&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![Prompts](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=primitive-prompts&label=Prompts&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![Sampling](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=primitive-sampling&label=Sampling&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![Elicitation](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=primitive-elicitation&label=Elicitation&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![Authentication](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=primitive-authentication&label=Authentication&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) |
96
- | **Transports** | [![Stdio](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=transport-stdio&label=Stdio&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![SSE](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=transport-sse&label=SSE&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![Streamable HTTP](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=transport-streamableHttp&label=Streamable%20HTTP&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) |
100
+ | **Transports** | [![Stdio](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=transport-stdio&label=Stdio&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![SSE](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=transport-sse&label=SSE&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) [![Streamable HTTP](https://img.shields.io/github/actions/workflow/status/pietrozullo/mcp-use/tests.yml?job=transport-streamableHttp&label=Streamable%20HTTP&style=flat)](https://github.com/pietrozullo/mcp-use/actions/workflows/tests.yml) |
97
101
 
98
102
  ## Features
99
103
 
@@ -140,7 +144,13 @@ Description-Content-Type: text/markdown
140
144
  </tr>
141
145
  </table>
142
146
 
143
- # Quick start
147
+ ---
148
+
149
+ # 🤖 MCP Agent
150
+
151
+ The **MCP Agent** is an AI-powered agent that can use tools from MCP servers to accomplish complex tasks. It reasons across multiple steps, selecting and executing tools as needed.
152
+
153
+ ## Quick Start
144
154
 
145
155
  With pip:
146
156
 
@@ -675,7 +685,13 @@ The `SandboxOptions` type provides configuration for the sandbox environment:
675
685
  - **Consistent environment**: Ensure consistent behavior across different systems
676
686
  - **Resource efficiency**: Offload resource-intensive tasks to cloud infrastructure
677
687
 
678
- # Direct Tool Calls (Without LLM)
688
+ ---
689
+
690
+ # 🔌 MCP Client
691
+
692
+ The **MCP Client** allows you to connect directly to MCP servers and call tools programmatically without an AI agent. This is useful when you know exactly which tools to call and don't need AI reasoning.
693
+
694
+ ## Direct Tool Calls (Without LLM)
679
695
 
680
696
  You can call MCP server tools directly without an LLM when you need programmatic control:
681
697
 
@@ -752,6 +768,23 @@ if __name__ == "__main__":
752
768
 
753
769
  ```
754
770
 
771
+ ---
772
+
773
+ # 🛠️ MCP Server
774
+
775
+ **Coming Soon!** Python support for creating MCP servers is under development.
776
+
777
+ In the meantime, you can create MCP servers using our [TypeScript implementation](../typescript/README.md#%EF%B8%8F-mcp-server-framework), which offers:
778
+
779
+ - Complete server framework with tools, resources, and prompts
780
+ - Built-in inspector for debugging
781
+ - React-based UI widgets for interactive experiences
782
+ - Hot reload development workflow
783
+
784
+ Python agents and clients can connect to TypeScript servers seamlessly - the MCP protocol is language-agnostic.
785
+
786
+ ---
787
+
755
788
  # Debugging
756
789
 
757
790
  MCP-Use provides a built-in debug mode that increases log verbosity and helps diagnose issues in your agent implementation.
@@ -815,14 +848,6 @@ This is useful when you only need to see the agent's steps and decision-making p
815
848
 
816
849
  We love contributions! Feel free to open issues for bugs or feature requests. Look at [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
817
850
 
818
- ## Contributors
819
-
820
- Thanks to all our amazing contributors!
821
-
822
- <a href="https://github.com/mcp-use/mcp-use/graphs/contributors">
823
- <img src="https://contrib.rocks/image?repo=mcp-use/mcp-use" />
824
- </a>
825
-
826
851
  ## Top Starred Dependents
827
852
 
828
853
  <!-- gh-dependents-info-used-by-start -->
@@ -0,0 +1,109 @@
1
+ mcp_use/__init__.py,sha256=0LfDNKkzNXXOx9B4-SsMIuwkj9Cm-8JVPmC9yb5cFnw,1277
2
+ mcp_use/cli.py,sha256=d3_RqN-lca7igS-aZQIdNQidBOILVihyldywcf8GR-c,15602
3
+ mcp_use/client.py,sha256=m-nwSnO147tBXji0KmXULJ2B1Uy7cGidnutRTnASmjU,426
4
+ mcp_use/config.py,sha256=RNYKUJPEpLGZQFg-ahwsYf1B7xXZM1gUA-_57FngAJc,760
5
+ mcp_use/exceptions.py,sha256=YAbLz1S_4aQiNGWgh80lk0lwgF3L109P-cjbV_QW-WQ,1260
6
+ mcp_use/logging.py,sha256=bwZEDM3DZDVDVWmFlHCHEDAODix4_y8VSreRk-nRWuo,4971
7
+ mcp_use/session.py,sha256=2exxHhIfXcf6UFndiwmi-db3Wvh_Dqeh89iiSIcFtYY,438
8
+ mcp_use/utils.py,sha256=QavJcVq2WxUUUCCpPCUeOB5bqIS0FFmpK-RAZkGc6aA,720
9
+ mcp_use/adapters/.deprecated,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ mcp_use/adapters/__init__.py,sha256=p0J4T9vTeNPXVEcNJUV7WQJB8Bd8lWwbxZ9KT4kDxjQ,604
11
+ mcp_use/adapters/base.py,sha256=Cc-stCnM6j0JtQeR1j1sqQX0ZtHjWUFdRNKsHiQv6mQ,444
12
+ mcp_use/adapters/langchain_adapter.py,sha256=LDlCvqnWDNmY1YxNKYX9PafNZl9o8LMXwp3W4XQaJLY,541
13
+ mcp_use/agents/__init__.py,sha256=FzkntihbAqzixWdWe99zIrrcIfd4N3YWltNniutG9VA,267
14
+ mcp_use/agents/base.py,sha256=3hlKEnSq89yMdd6tBN_FPfx-aPj7En0yNqE7EqTQpVQ,1604
15
+ mcp_use/agents/mcpagent.py,sha256=lDuV4H5c4iYQIZP8lfZ_RNJJQxDeQyXG446vM0g64x0,53425
16
+ mcp_use/agents/remote.py,sha256=SGqFPV6V7HFBsUQVJTnKYltg-lWub6pVmZwOhIE12h0,16504
17
+ mcp_use/agents/adapters/__init__.py,sha256=-xCrgPThuX7x0PHGFDdjb7M-mgw6QV3sKu5PM7ShnRg,275
18
+ mcp_use/agents/adapters/base.py,sha256=ZRAjqWM3SmQOLxgK4tIOg-XRmnzL6Nfe4a64hvxFg_g,7098
19
+ mcp_use/agents/adapters/langchain_adapter.py,sha256=9oo_ZuFiYMwX_nL2JNYru1LwqeSpfQSw0bal3Q-h9Ms,9406
20
+ mcp_use/agents/managers/__init__.py,sha256=FRTuJw5kYtY1Eo7wN9Aeqeqo1euiR5slvrx5Fl_SGvk,383
21
+ mcp_use/agents/managers/base.py,sha256=fJA4ct6GIcACOzmCSQGga1HoHYjsauaMHZsXehCPQNA,1138
22
+ mcp_use/agents/managers/server_manager.py,sha256=MdsttZ3zl0sMUslZTfZ6xNZkDNTIK9_TggDKT-LY5mw,5485
23
+ mcp_use/agents/managers/tools/__init__.py,sha256=zcpm4HXsp8NUMRJeyT6DdB8cgIMDs46pBfoTD-odhGU,437
24
+ mcp_use/agents/managers/tools/base_tool.py,sha256=Jbbp7SwmHKDk8jT_6yVIv7iNsn6KaV_PljWuhhLcbXg,509
25
+ mcp_use/agents/managers/tools/connect_server.py,sha256=Mf_1w4svnRXljzBMv_3p1dyQr_O53yn4cRuydqJ9fFQ,2992
26
+ mcp_use/agents/managers/tools/disconnect_server.py,sha256=hhrMSxFnU3k1ByE7Uqbfkjuwo0o95xCz39mXjkvrI0Y,1650
27
+ mcp_use/agents/managers/tools/get_active_server.py,sha256=_fWKq44EHBMu9eMV7exYw7L1SZZQf3L19fw4hAX594E,993
28
+ mcp_use/agents/managers/tools/list_servers_tool.py,sha256=bi_naHOetXnn6ZhHqwU3NgWUebXwp2CaifZZfD3J0E0,2065
29
+ mcp_use/agents/managers/tools/search_tools.py,sha256=Rht0NZJ9W8mi5PzXgs3mALuGscMDYB3ylpm9LoAMdkE,12945
30
+ mcp_use/agents/observability/__init__.py,sha256=qJR51lpW6lVvhgNnUHBXYN6FKn4kDKbGVHUhPzrx324,348
31
+ mcp_use/agents/observability/callbacks_manager.py,sha256=6jIcE6ofiLRxoi4fECaTlpnllTEFQdwB0IZ0ZkY0WAQ,5324
32
+ mcp_use/agents/observability/laminar.py,sha256=eBY23B8rxQOW5ggHeGB0ZCpCSMnK4rC8fBOvDdbuoq4,1613
33
+ mcp_use/agents/observability/langfuse.py,sha256=kOF05cbSEir7r3fibx_q6TfKzqmbjKLV7uNxBote9XY,2677
34
+ mcp_use/agents/prompts/system_prompt_builder.py,sha256=E86STmxcl2Ic763_114awNqFB2RyLrQlbvgRmJajQjI,4116
35
+ mcp_use/agents/prompts/templates.py,sha256=Yd-3NILgHXTrBUw9WE11gt0-QrlvN1pykeEpg3LY4HU,1545
36
+ mcp_use/auth/.deprecated,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
+ mcp_use/auth/__init__.py,sha256=5ZetbbZDfGI4vli6tgHt-XTAEZh7fqn_eHdF0Rirsf4,516
38
+ mcp_use/auth/bearer.py,sha256=iZQgutjUS8GzarNQOFa_s3Wq-Rl71nzKG-FhYHWC2n4,422
39
+ mcp_use/auth/oauth.py,sha256=ztdXsd7F5xMJiHOeJiCCUiZSV2cKW5k4s2rhxXUCIwo,392
40
+ mcp_use/auth/oauth_callback.py,sha256=6kLYBL9M-CoOZ_HX6ezgcVCbRk1RBnBXpCNaamCFazk,726
41
+ mcp_use/client/__init__.py,sha256=KJzHv7qafMFqE38TGAowled4Ka3dWvqq80GEQfx99JI,30
42
+ mcp_use/client/client.py,sha256=TKDoKKusVkRqZzqh_B2xBMsHLOLbFgic3I4t2ZJEqJg,13072
43
+ mcp_use/client/config.py,sha256=bnPXOno47VfEGGdDeOwyJZlr7gXw1KInABoRhiZ4_fw,3837
44
+ mcp_use/client/exceptions.py,sha256=PuzPj_Ov4oYJ8ny8BC6S1b9RRy39gtRotDhIaMulxQE,468
45
+ mcp_use/client/session.py,sha256=DPud5dMil3lJq9pUQq4z9IpWCy_xRmpzKeCVLVzNKp8,5031
46
+ mcp_use/client/auth/__init__.py,sha256=TBNMvgRDp-lC3n2f0UB6kZUZlJ35SYRBVDt3hadpvXI,138
47
+ mcp_use/client/auth/bearer.py,sha256=wgG3_TZDNoqo7hnezLHqOZpsWFOAXTxFbIg6t1qemQ8,678
48
+ mcp_use/client/auth/oauth.py,sha256=HU1sxo74L-0Gf-VbK4FmSrZKoxkJg4bW50emUakYBoE,27801
49
+ mcp_use/client/auth/oauth_callback.py,sha256=z1kvAdxijaYcLesnwXGQC9KrnbDV-FGnRLaAcykZLjQ,7520
50
+ mcp_use/client/connectors/__init__.py,sha256=cUF4yT0bNr8qeLkSzg28SHueiV5qDaHEB1l1GZ2K0dc,536
51
+ mcp_use/client/connectors/base.py,sha256=R5NbN_NGuJnT82cGMweOaAdA5g6mZnsN4KyqG0_XffE,18687
52
+ mcp_use/client/connectors/http.py,sha256=LFk8QLx4GBYWe7lYWHXfC8HH97lOSFAJRuhW7XlkLY8,13742
53
+ mcp_use/client/connectors/sandbox.py,sha256=ukCGi50ZplmKViW8WagoyoznuugMETlgvilGGR9LcP0,12827
54
+ mcp_use/client/connectors/stdio.py,sha256=Iy3mQ08T0DI-ufArM7F2kavy8rCsrk96P-UJiaUQjUM,4129
55
+ mcp_use/client/connectors/utils.py,sha256=zQ8GdNQx0Twz3by90BoU1RsWPf9wODGof4K3-NxPXeA,366
56
+ mcp_use/client/connectors/websocket.py,sha256=-fcXsLJtJ5xVa46AiXdpj_Echbzet_1XZoSbi8lwEf0,10169
57
+ mcp_use/client/middleware/__init__.py,sha256=p9cTU5ZdeHys7RnhRh-y2-kc5OjPj3cL_Yk3kbl5Vqw,1354
58
+ mcp_use/client/middleware/logging.py,sha256=Q-sDUFHZkmgxZxF8CWOal9CsOOs4EBlITxIQO3CkqHc,1184
59
+ mcp_use/client/middleware/metrics.py,sha256=NnsP0n1Ta-hnCxPFvdlQAFi5D1BCGvkl1MepaGd5-Vo,13203
60
+ mcp_use/client/middleware/middleware.py,sha256=08H79bufrA3pS0DN3SRbMbfUh6NO7iCdHokkSBvvrfg,9770
61
+ mcp_use/client/task_managers/__init__.py,sha256=LkXOjiDq5JcyB2tNJuSzyjbxZTl1Ordr_NKKD77Nb7g,557
62
+ mcp_use/client/task_managers/base.py,sha256=1Yu4QUWBdOqDzIS0QNh1l_sQpWvqMFPYPWmmHkq6d6Q,4654
63
+ mcp_use/client/task_managers/sse.py,sha256=H2cqSXUjtUZ-_9bX-7lh_0wfuS03ZtxNrVtSZ2RMyGY,2597
64
+ mcp_use/client/task_managers/stdio.py,sha256=qKKr1rqISrJLVbFLdVaYwovm5vUqBkpdCmebkrkueHw,2164
65
+ mcp_use/client/task_managers/streamable_http.py,sha256=BxgFLAnRUPDKijjSMcqWVfWiBinUexBMb4SdzzyPBvM,2889
66
+ mcp_use/client/task_managers/websocket.py,sha256=MCe_TS2xu42YK_RbSZLoEsKs7L1WpR7sdaBz5rXuc1M,2188
67
+ mcp_use/connectors/.deprecated,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
+ mcp_use/connectors/__init__.py,sha256=AILLEsQuwi1P9hjSn7Gbh6g-2ab3mXQEAZapbLXVmSE,1219
69
+ mcp_use/connectors/base.py,sha256=n-d0yHA6trrADzaUHZA6zk_p5yauBpKqTDZ5-I1GJEA,471
70
+ mcp_use/connectors/http.py,sha256=tfxHsuBZRu76HdMUQFrRiQpYug9bo5x77RM9iI08BOI,471
71
+ mcp_use/connectors/sandbox.py,sha256=Rz8m6r3RCO-meJNhafGj7eD86SnLQQeVYgNtyfZB3nI,501
72
+ mcp_use/connectors/stdio.py,sha256=ls5OBl3OUW0kkXag0_z-530LKgll6xt8uS8jvwqJ_vQ,481
73
+ mcp_use/connectors/utils.py,sha256=mE5jRP3rV2KIt_LvBxg42zqihvcXpz_n2UJa4gV9eSk,567
74
+ mcp_use/connectors/websocket.py,sha256=Q5B69AfXyA_mZc8s1kZZzCbTurjZLAaEutm1pMIYN2E,521
75
+ mcp_use/errors/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
76
+ mcp_use/errors/error_formatting.py,sha256=17lhj5goGHuTbJ5oLCUXyJ2SuIbzsuSM1Wk8LPeqY9k,911
77
+ mcp_use/managers/.deprecated,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
78
+ mcp_use/managers/__init__.py,sha256=N5iDLaNOXEowp9Cp7YsuWtIoFoR2YhpKlpTXcptxD6I,1700
79
+ mcp_use/managers/base.py,sha256=5oHTD29MHrgfbqC6b1Za6ndGf4cnOdboFfyr90QRo18,481
80
+ mcp_use/managers/server_manager.py,sha256=TbWcxoOTV3IN8FPRBDyvpYYTJWR42acBQ1MpxS5a-wg,511
81
+ mcp_use/managers/tools/__init__.py,sha256=AlBiKWRNkbf0neyMj95TSvC0zGO1ECncMdi6EahkWfY,1318
82
+ mcp_use/managers/tools/base_tool.py,sha256=sohFFzlfKA9bUZ-CtuZytf7EW1z4GM7MoIUV9FxO32Y,280
83
+ mcp_use/managers/tools/connect_server.py,sha256=OvKWKhgqotnTnmU2CcmzhTmc6CkbIfRCztV_zZsg218,315
84
+ mcp_use/managers/tools/disconnect_server.py,sha256=f-ThxEhVvba8SnsFIxt4MeGCufBoB1Itidjhq53_nD0,339
85
+ mcp_use/managers/tools/get_active_server.py,sha256=6msUfr-uabkFbB3lPKu8hcs_nO9EF6JIlLu-GnUQ0cE,334
86
+ mcp_use/managers/tools/list_servers_tool.py,sha256=xFuDD5B4RgxuwRBuXVn0CoR6h6cx87wsU-acD8b1SrU,314
87
+ mcp_use/managers/tools/search_tools.py,sha256=kYtRuUIawugATYuLXDS2sIpyv2bJrLiKLQO3U3L1AFA,763
88
+ mcp_use/middleware/.deprecated,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
+ mcp_use/middleware/__init__.py,sha256=imBkKYNUT5pZvt9AkU6JoUSREGxLhhU6wQleA5mTNiE,2668
90
+ mcp_use/middleware/logging.py,sha256=T2B4WxEcnSfNQiG9s97swkfPAAUNsDbqcRhlmsKhdO8,589
91
+ mcp_use/middleware/metrics.py,sha256=ky7jokRD30QM0Gl1IulFwzcsFPCXiSuRFs_8UGz1Vr8,1301
92
+ mcp_use/middleware/middleware.py,sha256=5o-le09nko9nlhWGkNab_0OSVBn5jxVKf-NjrHrTTmA,1615
93
+ mcp_use/task_managers/.deprecated,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
94
+ mcp_use/task_managers/__init__.py,sha256=wLyZgkCRooIDTcX871cr-jHVm-e5kutIThxz17eSNf0,1482
95
+ mcp_use/task_managers/base.py,sha256=cAP6PA_RMjA1rw-2-tnpya96HbKWkEkQibmgkeZfNUA,506
96
+ mcp_use/task_managers/sse.py,sha256=2W3o737M96ZFVhB2pxd-SrJ4mrmTaKDm_OdklseEy3Y,516
97
+ mcp_use/task_managers/stdio.py,sha256=JS6jAzsPEuzriuQ-Sib4WW1rsUgxMYZkUwN6BVhiFt4,536
98
+ mcp_use/task_managers/streamable_http.py,sha256=NiyYHZ5fLgqYNvFEoWLzLQw9AByscnPWBG4k-whLfZ8,640
99
+ mcp_use/task_managers/websocket.py,sha256=cis-KJFccCi55rvk-FVlKFtncGNnm8QiNcpwzuaBEM8,576
100
+ mcp_use/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
101
+ mcp_use/telemetry/events.py,sha256=4u-PWeg03jozG9rLunDB7JHtFmmesgu3J8aRAq93qAU,4706
102
+ mcp_use/telemetry/telemetry.py,sha256=uCOGRDNTyDfyvBGypGUpTk9-IGOe2P7CbUQjPlnkQ9Y,14082
103
+ mcp_use/telemetry/utils.py,sha256=kDVTqt2oSeWNJbnTOlXOehr2yFO0PMyx2UGkrWkfJiw,1769
104
+ mcp_use/types/.deprecated,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
+ mcp_use/types/sandbox.py,sha256=gaZaLE-i6rftaIF-OYyMDc1W6Il-g4MpFbCD1IdyBPg,481
106
+ mcp_use-1.3.13.dist-info/METADATA,sha256=yK1PivxyzBFS0E6CNTA5VM3zabrzTjVAl0GsGeKBQNA,35387
107
+ mcp_use-1.3.13.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
108
+ mcp_use-1.3.13.dist-info/entry_points.txt,sha256=3jzEN6xbVsMErm_cxlHpCzvM97gFgjvtOEEspUp1vK8,45
109
+ mcp_use-1.3.13.dist-info/RECORD,,
@@ -1,64 +0,0 @@
1
- mcp_use/__init__.py,sha256=AEo6p1F4mSHLO3yKVWZbkr3OFuQwTxSYLGrFQkYb4io,1271
2
- mcp_use/cli.py,sha256=d3_RqN-lca7igS-aZQIdNQidBOILVihyldywcf8GR-c,15602
3
- mcp_use/client.py,sha256=SNkHAVknh01pGJZkISuGtGnFKQWjIM11ArJycBA6afA,12719
4
- mcp_use/config.py,sha256=feW2Qxb7Ppz1N0PeQHr4GdEDAiNLmsMlSJS88HgdUns,3647
5
- mcp_use/exceptions.py,sha256=PuzPj_Ov4oYJ8ny8BC6S1b9RRy39gtRotDhIaMulxQE,468
6
- mcp_use/logging.py,sha256=bwZEDM3DZDVDVWmFlHCHEDAODix4_y8VSreRk-nRWuo,4971
7
- mcp_use/session.py,sha256=DpH_z0a3xYemV9yWzlrf-IPZtpR27CI2S-gAm2jbCAc,4700
8
- mcp_use/utils.py,sha256=QavJcVq2WxUUUCCpPCUeOB5bqIS0FFmpK-RAZkGc6aA,720
9
- mcp_use/adapters/__init__.py,sha256=-xCrgPThuX7x0PHGFDdjb7M-mgw6QV3sKu5PM7ShnRg,275
10
- mcp_use/adapters/base.py,sha256=8XB3xWZ6nJPhhmHwVtHT8-HO0D_9nnxzOkbVDP-fI3k,6940
11
- mcp_use/adapters/langchain_adapter.py,sha256=vyrrhZpW9ISTXg7uaYPRBT_LkOAmbevuLXD8Bwk7xE8,9232
12
- mcp_use/agents/__init__.py,sha256=FzkntihbAqzixWdWe99zIrrcIfd4N3YWltNniutG9VA,267
13
- mcp_use/agents/base.py,sha256=EN-dRbwOi9vIqofFg3jmi5yT2VKlwEr9Cwi1DZgB3eE,1591
14
- mcp_use/agents/mcpagent.py,sha256=jB9D-Pk-LtfDqEF7Me4eken8tCurRMkCkjwUeqM5Vxw,53212
15
- mcp_use/agents/remote.py,sha256=eaosBxw6BxXXr9vnCwuNsSby64tVWHLdpw0FHr9edVc,15750
16
- mcp_use/agents/prompts/system_prompt_builder.py,sha256=E86STmxcl2Ic763_114awNqFB2RyLrQlbvgRmJajQjI,4116
17
- mcp_use/agents/prompts/templates.py,sha256=Yd-3NILgHXTrBUw9WE11gt0-QrlvN1pykeEpg3LY4HU,1545
18
- mcp_use/auth/__init__.py,sha256=TBNMvgRDp-lC3n2f0UB6kZUZlJ35SYRBVDt3hadpvXI,138
19
- mcp_use/auth/bearer.py,sha256=TmeXFlmOC86tvJna2fEvfW4JjfRicUciKVBfPJzDcWs,531
20
- mcp_use/auth/oauth.py,sha256=JPYQmKNkLRhd53i5iHyFkhA8JzqSylXpvF66zIqpcIk,27584
21
- mcp_use/auth/oauth_callback.py,sha256=hgdtTVC8LfvxQymnB4DUWN0-kfwqNpTb9vufiByWi9M,7514
22
- mcp_use/connectors/__init__.py,sha256=cUF4yT0bNr8qeLkSzg28SHueiV5qDaHEB1l1GZ2K0dc,536
23
- mcp_use/connectors/base.py,sha256=23mCgyQopU2U1ZxHCfiW_L1aV_8CH1Ek0gr9ROdf_nY,18250
24
- mcp_use/connectors/http.py,sha256=ucmAn5P4R0ecm6MQGnFV2atgGsaksJrjDImOXfLTtTU,13708
25
- mcp_use/connectors/sandbox.py,sha256=0915L6CjTYB4kXnuQsMhJm9bVi4V8676lFRhv1ZYnn4,12185
26
- mcp_use/connectors/stdio.py,sha256=u_IPhglQpKQolDh-M9lEz_fhHECDYyLsmRqhxPR_AJE,4072
27
- mcp_use/connectors/utils.py,sha256=zQ8GdNQx0Twz3by90BoU1RsWPf9wODGof4K3-NxPXeA,366
28
- mcp_use/connectors/websocket.py,sha256=BBtX0xrfv9B-GTrDnQbasR0gsw3rSCCTQZp9HNuVxqI,10125
29
- mcp_use/errors/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
30
- mcp_use/errors/error_formatting.py,sha256=17lhj5goGHuTbJ5oLCUXyJ2SuIbzsuSM1Wk8LPeqY9k,911
31
- mcp_use/managers/__init__.py,sha256=FRTuJw5kYtY1Eo7wN9Aeqeqo1euiR5slvrx5Fl_SGvk,383
32
- mcp_use/managers/base.py,sha256=fJA4ct6GIcACOzmCSQGga1HoHYjsauaMHZsXehCPQNA,1138
33
- mcp_use/managers/server_manager.py,sha256=uO18wHUKFq3-YVg_S_SlQDbNF2H978BR28C2YU4X86A,5308
34
- mcp_use/managers/tools/__init__.py,sha256=zcpm4HXsp8NUMRJeyT6DdB8cgIMDs46pBfoTD-odhGU,437
35
- mcp_use/managers/tools/base_tool.py,sha256=Jbbp7SwmHKDk8jT_6yVIv7iNsn6KaV_PljWuhhLcbXg,509
36
- mcp_use/managers/tools/connect_server.py,sha256=-PlqgJDSMzairK90aDg1WTDjpqrFMoTiyekwoPDWNrw,2964
37
- mcp_use/managers/tools/disconnect_server.py,sha256=dLa5PH-QZ30Dw3n5lzqilyHA8PuQ6xvMkXd-T5EwpU8,1622
38
- mcp_use/managers/tools/get_active_server.py,sha256=tCaib76gYU3L5G82tEOTq4Io2cuCXWjOjPselb-92i8,964
39
- mcp_use/managers/tools/list_servers_tool.py,sha256=P_Z96Ab8ELLyo3GQfTMfyemTPJwt0VR1s_iMnWE1GCg,2037
40
- mcp_use/managers/tools/search_tools.py,sha256=4vso7ln-AfG6lQAMq9FA_CyeVtSEDYEWlHtdHtfnLps,12911
41
- mcp_use/middleware/__init__.py,sha256=p9cTU5ZdeHys7RnhRh-y2-kc5OjPj3cL_Yk3kbl5Vqw,1354
42
- mcp_use/middleware/logging.py,sha256=5UvEte9zHUA4zCTUmqY6-5YpDUSaNSX4rmfaRsxUJqk,1153
43
- mcp_use/middleware/metrics.py,sha256=qp_HzfzswVZt3ZMVLwMw73LE4MLEwUw3m2MX_RCOpfY,13178
44
- mcp_use/middleware/middleware.py,sha256=oWyt9c_JiKf-p992zvrJv25ZbPBo1Kq6fO4RASTTRSk,9641
45
- mcp_use/observability/__init__.py,sha256=qJR51lpW6lVvhgNnUHBXYN6FKn4kDKbGVHUhPzrx324,348
46
- mcp_use/observability/callbacks_manager.py,sha256=6jIcE6ofiLRxoi4fECaTlpnllTEFQdwB0IZ0ZkY0WAQ,5324
47
- mcp_use/observability/laminar.py,sha256=eBY23B8rxQOW5ggHeGB0ZCpCSMnK4rC8fBOvDdbuoq4,1613
48
- mcp_use/observability/langfuse.py,sha256=kOF05cbSEir7r3fibx_q6TfKzqmbjKLV7uNxBote9XY,2677
49
- mcp_use/task_managers/__init__.py,sha256=LkXOjiDq5JcyB2tNJuSzyjbxZTl1Ordr_NKKD77Nb7g,557
50
- mcp_use/task_managers/base.py,sha256=YzJqwwFRXZRFXDz9wkWz24Rowti4f8IwCLiVD-YzCVs,4648
51
- mcp_use/task_managers/sse.py,sha256=L_PFQup3XFQl4LZhmOyqnfzXgFzTwrobkzdZK7DXrgE,2563
52
- mcp_use/task_managers/stdio.py,sha256=MJcW03lUZUs_HEUxwFPaqy7m8QLbmdn6LagpcfZdjc8,2130
53
- mcp_use/task_managers/streamable_http.py,sha256=dLMzMxfco4HNIk6Fo-c4SdA-iMVw2ZccSeP_NBr-mcQ,2855
54
- mcp_use/task_managers/websocket.py,sha256=9JTw705rhYbP6x2xAPF6PwtNgF5yEWTQhx-dYSPMoaI,2154
55
- mcp_use/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
56
- mcp_use/telemetry/events.py,sha256=K5xqbmkum30r4gM2PWtTiUWGF8oZzGZw2DYwco1RfOQ,3113
57
- mcp_use/telemetry/telemetry.py,sha256=oM_QAbZwOStKkeccvEfKmJLKhL2neFkPn5yM5rL2qHc,11711
58
- mcp_use/telemetry/utils.py,sha256=kDVTqt2oSeWNJbnTOlXOehr2yFO0PMyx2UGkrWkfJiw,1769
59
- mcp_use/types/sandbox.py,sha256=opJ9r56F1FvaqVvPovfAj5jZbsOexgwYx5wLgSlN8_U,712
60
- mcp_use-1.3.12.dist-info/METADATA,sha256=bC17rV6FEzhW_pFTtfCOaLN5dNcJmDQ7cyTO5ITttOc,33925
61
- mcp_use-1.3.12.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
62
- mcp_use-1.3.12.dist-info/entry_points.txt,sha256=3jzEN6xbVsMErm_cxlHpCzvM97gFgjvtOEEspUp1vK8,45
63
- mcp_use-1.3.12.dist-info/licenses/LICENSE,sha256=7Pw7dbwJSBw8zH-WE03JnR5uXvitRtaGTP9QWPcexcs,1068
64
- mcp_use-1.3.12.dist-info/RECORD,,