fast-agent-mcp 0.1.13__py3-none-any.whl → 0.2.0__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.
Files changed (147) hide show
  1. {fast_agent_mcp-0.1.13.dist-info → fast_agent_mcp-0.2.0.dist-info}/METADATA +3 -4
  2. fast_agent_mcp-0.2.0.dist-info/RECORD +123 -0
  3. mcp_agent/__init__.py +75 -0
  4. mcp_agent/agents/agent.py +59 -371
  5. mcp_agent/agents/base_agent.py +522 -0
  6. mcp_agent/agents/workflow/__init__.py +1 -0
  7. mcp_agent/agents/workflow/chain_agent.py +173 -0
  8. mcp_agent/agents/workflow/evaluator_optimizer.py +362 -0
  9. mcp_agent/agents/workflow/orchestrator_agent.py +591 -0
  10. mcp_agent/{workflows/orchestrator → agents/workflow}/orchestrator_models.py +27 -11
  11. mcp_agent/agents/workflow/parallel_agent.py +182 -0
  12. mcp_agent/agents/workflow/router_agent.py +307 -0
  13. mcp_agent/app.py +3 -1
  14. mcp_agent/cli/commands/bootstrap.py +18 -7
  15. mcp_agent/cli/commands/setup.py +12 -4
  16. mcp_agent/cli/main.py +1 -1
  17. mcp_agent/cli/terminal.py +1 -1
  18. mcp_agent/config.py +24 -35
  19. mcp_agent/context.py +3 -1
  20. mcp_agent/context_dependent.py +3 -1
  21. mcp_agent/core/agent_types.py +10 -7
  22. mcp_agent/core/direct_agent_app.py +179 -0
  23. mcp_agent/core/direct_decorators.py +443 -0
  24. mcp_agent/core/direct_factory.py +476 -0
  25. mcp_agent/core/enhanced_prompt.py +15 -20
  26. mcp_agent/core/fastagent.py +151 -337
  27. mcp_agent/core/interactive_prompt.py +424 -0
  28. mcp_agent/core/mcp_content.py +19 -11
  29. mcp_agent/core/prompt.py +6 -2
  30. mcp_agent/core/validation.py +89 -16
  31. mcp_agent/executor/decorator_registry.py +6 -2
  32. mcp_agent/executor/temporal.py +35 -11
  33. mcp_agent/executor/workflow_signal.py +8 -2
  34. mcp_agent/human_input/handler.py +3 -1
  35. mcp_agent/llm/__init__.py +2 -0
  36. mcp_agent/{workflows/llm → llm}/augmented_llm.py +131 -256
  37. mcp_agent/{workflows/llm → llm}/augmented_llm_passthrough.py +35 -107
  38. mcp_agent/llm/augmented_llm_playback.py +83 -0
  39. mcp_agent/{workflows/llm → llm}/model_factory.py +26 -8
  40. mcp_agent/llm/providers/__init__.py +8 -0
  41. mcp_agent/{workflows/llm → llm/providers}/anthropic_utils.py +5 -1
  42. mcp_agent/{workflows/llm → llm/providers}/augmented_llm_anthropic.py +37 -141
  43. mcp_agent/llm/providers/augmented_llm_deepseek.py +53 -0
  44. mcp_agent/{workflows/llm → llm/providers}/augmented_llm_openai.py +112 -148
  45. mcp_agent/{workflows/llm → llm}/providers/multipart_converter_anthropic.py +78 -35
  46. mcp_agent/{workflows/llm → llm}/providers/multipart_converter_openai.py +73 -44
  47. mcp_agent/{workflows/llm → llm}/providers/openai_multipart.py +18 -4
  48. mcp_agent/{workflows/llm → llm/providers}/openai_utils.py +3 -3
  49. mcp_agent/{workflows/llm → llm}/providers/sampling_converter_anthropic.py +3 -3
  50. mcp_agent/{workflows/llm → llm}/providers/sampling_converter_openai.py +3 -3
  51. mcp_agent/{workflows/llm → llm}/sampling_converter.py +0 -21
  52. mcp_agent/{workflows/llm → llm}/sampling_format_converter.py +16 -1
  53. mcp_agent/logging/logger.py +2 -2
  54. mcp_agent/mcp/gen_client.py +9 -3
  55. mcp_agent/mcp/interfaces.py +67 -45
  56. mcp_agent/mcp/logger_textio.py +97 -0
  57. mcp_agent/mcp/mcp_agent_client_session.py +12 -4
  58. mcp_agent/mcp/mcp_agent_server.py +3 -1
  59. mcp_agent/mcp/mcp_aggregator.py +124 -93
  60. mcp_agent/mcp/mcp_connection_manager.py +21 -7
  61. mcp_agent/mcp/prompt_message_multipart.py +59 -1
  62. mcp_agent/mcp/prompt_render.py +77 -0
  63. mcp_agent/mcp/prompt_serialization.py +20 -13
  64. mcp_agent/mcp/prompts/prompt_constants.py +18 -0
  65. mcp_agent/mcp/prompts/prompt_helpers.py +327 -0
  66. mcp_agent/mcp/prompts/prompt_load.py +15 -5
  67. mcp_agent/mcp/prompts/prompt_server.py +154 -87
  68. mcp_agent/mcp/prompts/prompt_template.py +26 -35
  69. mcp_agent/mcp/resource_utils.py +3 -1
  70. mcp_agent/mcp/sampling.py +24 -15
  71. mcp_agent/mcp_server/agent_server.py +8 -5
  72. mcp_agent/mcp_server_registry.py +22 -9
  73. mcp_agent/resources/examples/{workflows → in_dev}/agent_build.py +1 -1
  74. mcp_agent/resources/examples/{data-analysis → in_dev}/slides.py +1 -1
  75. mcp_agent/resources/examples/internal/agent.py +4 -2
  76. mcp_agent/resources/examples/internal/fastagent.config.yaml +8 -2
  77. mcp_agent/resources/examples/prompting/image_server.py +3 -1
  78. mcp_agent/resources/examples/prompting/work_with_image.py +19 -0
  79. mcp_agent/ui/console_display.py +27 -7
  80. fast_agent_mcp-0.1.13.dist-info/RECORD +0 -164
  81. mcp_agent/core/agent_app.py +0 -570
  82. mcp_agent/core/agent_utils.py +0 -69
  83. mcp_agent/core/decorators.py +0 -448
  84. mcp_agent/core/factory.py +0 -422
  85. mcp_agent/core/proxies.py +0 -278
  86. mcp_agent/core/types.py +0 -22
  87. mcp_agent/eval/__init__.py +0 -0
  88. mcp_agent/mcp/stdio.py +0 -114
  89. mcp_agent/resources/examples/data-analysis/analysis-campaign.py +0 -188
  90. mcp_agent/resources/examples/data-analysis/analysis.py +0 -65
  91. mcp_agent/resources/examples/data-analysis/fastagent.config.yaml +0 -41
  92. mcp_agent/resources/examples/data-analysis/mount-point/WA_Fn-UseC_-HR-Employee-Attrition.csv +0 -1471
  93. mcp_agent/resources/examples/mcp_researcher/researcher-eval.py +0 -53
  94. mcp_agent/resources/examples/researcher/fastagent.config.yaml +0 -66
  95. mcp_agent/resources/examples/researcher/researcher-eval.py +0 -53
  96. mcp_agent/resources/examples/researcher/researcher-imp.py +0 -189
  97. mcp_agent/resources/examples/researcher/researcher.py +0 -39
  98. mcp_agent/resources/examples/workflows/chaining.py +0 -45
  99. mcp_agent/resources/examples/workflows/evaluator.py +0 -79
  100. mcp_agent/resources/examples/workflows/fastagent.config.yaml +0 -24
  101. mcp_agent/resources/examples/workflows/human_input.py +0 -26
  102. mcp_agent/resources/examples/workflows/orchestrator.py +0 -74
  103. mcp_agent/resources/examples/workflows/parallel.py +0 -79
  104. mcp_agent/resources/examples/workflows/router.py +0 -54
  105. mcp_agent/resources/examples/workflows/sse.py +0 -23
  106. mcp_agent/telemetry/__init__.py +0 -0
  107. mcp_agent/telemetry/usage_tracking.py +0 -19
  108. mcp_agent/workflows/__init__.py +0 -0
  109. mcp_agent/workflows/embedding/__init__.py +0 -0
  110. mcp_agent/workflows/embedding/embedding_base.py +0 -58
  111. mcp_agent/workflows/embedding/embedding_cohere.py +0 -49
  112. mcp_agent/workflows/embedding/embedding_openai.py +0 -37
  113. mcp_agent/workflows/evaluator_optimizer/__init__.py +0 -0
  114. mcp_agent/workflows/evaluator_optimizer/evaluator_optimizer.py +0 -447
  115. mcp_agent/workflows/intent_classifier/__init__.py +0 -0
  116. mcp_agent/workflows/intent_classifier/intent_classifier_base.py +0 -117
  117. mcp_agent/workflows/intent_classifier/intent_classifier_embedding.py +0 -130
  118. mcp_agent/workflows/intent_classifier/intent_classifier_embedding_cohere.py +0 -41
  119. mcp_agent/workflows/intent_classifier/intent_classifier_embedding_openai.py +0 -41
  120. mcp_agent/workflows/intent_classifier/intent_classifier_llm.py +0 -150
  121. mcp_agent/workflows/intent_classifier/intent_classifier_llm_anthropic.py +0 -60
  122. mcp_agent/workflows/intent_classifier/intent_classifier_llm_openai.py +0 -58
  123. mcp_agent/workflows/llm/__init__.py +0 -0
  124. mcp_agent/workflows/llm/augmented_llm_playback.py +0 -111
  125. mcp_agent/workflows/llm/providers/__init__.py +0 -8
  126. mcp_agent/workflows/orchestrator/__init__.py +0 -0
  127. mcp_agent/workflows/orchestrator/orchestrator.py +0 -535
  128. mcp_agent/workflows/parallel/__init__.py +0 -0
  129. mcp_agent/workflows/parallel/fan_in.py +0 -320
  130. mcp_agent/workflows/parallel/fan_out.py +0 -181
  131. mcp_agent/workflows/parallel/parallel_llm.py +0 -149
  132. mcp_agent/workflows/router/__init__.py +0 -0
  133. mcp_agent/workflows/router/router_base.py +0 -338
  134. mcp_agent/workflows/router/router_embedding.py +0 -226
  135. mcp_agent/workflows/router/router_embedding_cohere.py +0 -59
  136. mcp_agent/workflows/router/router_embedding_openai.py +0 -59
  137. mcp_agent/workflows/router/router_llm.py +0 -304
  138. mcp_agent/workflows/swarm/__init__.py +0 -0
  139. mcp_agent/workflows/swarm/swarm.py +0 -292
  140. mcp_agent/workflows/swarm/swarm_anthropic.py +0 -42
  141. mcp_agent/workflows/swarm/swarm_openai.py +0 -41
  142. {fast_agent_mcp-0.1.13.dist-info → fast_agent_mcp-0.2.0.dist-info}/WHEEL +0 -0
  143. {fast_agent_mcp-0.1.13.dist-info → fast_agent_mcp-0.2.0.dist-info}/entry_points.txt +0 -0
  144. {fast_agent_mcp-0.1.13.dist-info → fast_agent_mcp-0.2.0.dist-info}/licenses/LICENSE +0 -0
  145. /mcp_agent/{workflows/orchestrator → agents/workflow}/orchestrator_prompts.py +0 -0
  146. /mcp_agent/{workflows/llm → llm}/memory.py +0 -0
  147. /mcp_agent/{workflows/llm → llm}/prompt_utils.py +0 -0
@@ -12,7 +12,7 @@ from datetime import timedelta
12
12
  from typing import AsyncGenerator, Callable, Dict
13
13
 
14
14
  from anyio.streams.memory import MemoryObjectReceiveStream, MemoryObjectSendStream
15
- from mcp import ClientSession
15
+ from mcp import ClientSession, stdio_client
16
16
  from mcp.client.sse import sse_client
17
17
  from mcp.client.stdio import (
18
18
  StdioServerParameters,
@@ -26,8 +26,8 @@ from mcp_agent.config import (
26
26
  get_settings,
27
27
  )
28
28
  from mcp_agent.logging.logger import get_logger
29
+ from mcp_agent.mcp.logger_textio import get_stderr_handler
29
30
  from mcp_agent.mcp.mcp_connection_manager import MCPConnectionManager
30
- from mcp_agent.mcp.stdio import stdio_client_with_rich_stderr
31
31
 
32
32
  logger = get_logger(__name__)
33
33
 
@@ -66,11 +66,15 @@ class ServerRegistry:
66
66
  config (Settings): The Settings object containing the server configurations.
67
67
  config_path (str): Path to the YAML configuration file.
68
68
  """
69
- self.registry = self.load_registry_from_file(config_path) if config is None else config.mcp.servers
69
+ self.registry = (
70
+ self.load_registry_from_file(config_path) if config is None else config.mcp.servers
71
+ )
70
72
  self.init_hooks: Dict[str, InitHookCallable] = {}
71
73
  self.connection_manager = MCPConnectionManager(self)
72
74
 
73
- def load_registry_from_file(self, config_path: str | None = None) -> Dict[str, MCPServerSettings]:
75
+ def load_registry_from_file(
76
+ self, config_path: str | None = None
77
+ ) -> Dict[str, MCPServerSettings]:
74
78
  """
75
79
  Load the YAML configuration file and validate it.
76
80
 
@@ -110,11 +114,15 @@ class ServerRegistry:
110
114
 
111
115
  config = self.registry[server_name]
112
116
 
113
- read_timeout_seconds = timedelta(config.read_timeout_seconds) if config.read_timeout_seconds else None
117
+ read_timeout_seconds = (
118
+ timedelta(config.read_timeout_seconds) if config.read_timeout_seconds else None
119
+ )
114
120
 
115
121
  if config.transport == "stdio":
116
122
  if not config.command or not config.args:
117
- raise ValueError(f"Command and args are required for stdio transport: {server_name}")
123
+ raise ValueError(
124
+ f"Command and args are required for stdio transport: {server_name}"
125
+ )
118
126
 
119
127
  server_params = StdioServerParameters(
120
128
  command=config.command,
@@ -122,7 +130,8 @@ class ServerRegistry:
122
130
  env={**get_default_environment(), **(config.env or {})},
123
131
  )
124
132
 
125
- async with stdio_client_with_rich_stderr(server_params) as (
133
+ # Create a stderr handler that logs to our application logger
134
+ async with stdio_client(server_params, errlog=get_stderr_handler(server_name)) as (
126
135
  read_stream,
127
136
  write_stream,
128
137
  ):
@@ -190,13 +199,17 @@ class ServerRegistry:
190
199
 
191
200
  config = self.registry[server_name]
192
201
 
193
- async with self.start_server(server_name, client_session_factory=client_session_factory) as session:
202
+ async with self.start_server(
203
+ server_name, client_session_factory=client_session_factory
204
+ ) as session:
194
205
  try:
195
206
  logger.info(f"{server_name}: Initializing server...")
196
207
  await session.initialize()
197
208
  logger.info(f"{server_name}: Initialized.")
198
209
 
199
- intialization_callback = init_hook if init_hook is not None else self.init_hooks.get(server_name)
210
+ intialization_callback = (
211
+ init_hook if init_hook is not None else self.init_hooks.get(server_name)
212
+ )
200
213
 
201
214
  if intialization_callback:
202
215
  logger.info(f"{server_name}: Executing init hook")
@@ -5,7 +5,7 @@ This demonstrates creating multiple agents and an orchestrator to coordinate the
5
5
  import asyncio
6
6
 
7
7
  from mcp_agent.core.fastagent import FastAgent
8
- from mcp_agent.workflows.llm.augmented_llm import RequestParams
8
+ from mcp_agent.llm.augmented_llm import RequestParams
9
9
 
10
10
  # Create the application
11
11
  fast = FastAgent("Agent Builder")
@@ -3,8 +3,8 @@ from pathlib import Path
3
3
  from typing import TYPE_CHECKING
4
4
 
5
5
  from mcp_agent.core.fastagent import FastAgent
6
+ from mcp_agent.llm.augmented_llm import RequestParams
6
7
  from mcp_agent.mcp.prompts.prompt_load import load_prompt_multipart
7
- from mcp_agent.workflows.llm.augmented_llm import RequestParams
8
8
 
9
9
  if TYPE_CHECKING:
10
10
  from mcp_agent.mcp.prompt_message_multipart import PromptMessageMultipart
@@ -7,11 +7,13 @@ fast = FastAgent("FastAgent Example")
7
7
 
8
8
 
9
9
  # Define the agent
10
- @fast.agent(servers=["fetch", "mcp_hfspace"])
10
+ @fast.agent(servers=["category", "mcp_hfspace"])
11
+ #@fast.agent(name="test")
11
12
  async def main() -> None:
12
13
  # use the --model command line switch or agent arguments to change model
13
14
  async with fast.run() as agent:
14
- await agent.prompt()
15
+ # await agent.prompt(agent_name="test")
16
+ await agent.send("hello,world")
15
17
 
16
18
 
17
19
  if __name__ == "__main__":
@@ -2,6 +2,10 @@ default_model: sonnet
2
2
 
3
3
  # on windows, adjust the mount point to be the full path e.g. x:/temp/data-analysis/mount-point:/mnt/data/
4
4
 
5
+ # logger:
6
+ # level: "debug"
7
+ # type: "console"
8
+
5
9
  mcp:
6
10
  servers:
7
11
  interpreter:
@@ -47,9 +51,11 @@ mcp:
47
51
  sizing_setup:
48
52
  command: "uv"
49
53
  args: ["run", "prompt_sizing1.py"]
54
+
50
55
  category:
51
- command: "uv"
52
- args: ["run", "prompt_category.py"]
56
+ command: "prompt-server"
57
+ args: ["simple.txt"]
58
+
53
59
  mcp_hfspace:
54
60
  command: "npx"
55
61
  args: ["@llmindset/mcp-hfspace"]
@@ -18,7 +18,9 @@ app = FastMCP(name="ImageToolServer", debug=True)
18
18
 
19
19
 
20
20
  @app.tool(name="get_image", description="Returns an image with a descriptive text")
21
- async def get_image(image_name: str = "default", ctx: Context = None) -> list[TextContent | ImageContent]:
21
+ async def get_image(
22
+ image_name: str = "default", ctx: Context = None
23
+ ) -> list[TextContent | ImageContent]:
22
24
  """
23
25
  Returns an image file along with a descriptive text.
24
26
 
@@ -0,0 +1,19 @@
1
+ import asyncio
2
+ from pathlib import Path
3
+
4
+ from mcp_agent.core.fastagent import FastAgent
5
+ from mcp_agent.core.prompt import Prompt
6
+
7
+ # Create the application
8
+ fast = FastAgent("FastAgent Example")
9
+
10
+
11
+ # Define the agent
12
+ @fast.agent("agent", instruction="You are a helpful AI Agent", servers=["prompts"])
13
+ async def main() -> None:
14
+ async with fast.run() as agent:
15
+ await agent.agent.generate([Prompt.user("What's in this image?", Path("image.png"))])
16
+
17
+
18
+ if __name__ == "__main__":
19
+ asyncio.run(main())
@@ -109,9 +109,17 @@ class ConsoleDisplay:
109
109
  tool_call_name = display_tool["name"]
110
110
  else:
111
111
  # Handle potential object format (e.g., Pydantic models)
112
- tool_call_name = display_tool.function.name if hasattr(display_tool, "function") else display_tool.name
113
-
114
- parts = tool_call_name.split(SEP) if SEP in tool_call_name else [tool_call_name, tool_call_name]
112
+ tool_call_name = (
113
+ display_tool.function.name
114
+ if hasattr(display_tool, "function")
115
+ else display_tool.name
116
+ )
117
+
118
+ parts = (
119
+ tool_call_name.split(SEP)
120
+ if SEP in tool_call_name
121
+ else [tool_call_name, tool_call_name]
122
+ )
115
123
 
116
124
  if selected_tool_name.split(SEP)[0] == parts[0]:
117
125
  style = "magenta" if tool_call_name == selected_tool_name else "dim white"
@@ -138,11 +146,17 @@ class ConsoleDisplay:
138
146
  # Add human input tool if available
139
147
  tools = await aggregator.list_tools()
140
148
  if any(tool.name == HUMAN_INPUT_TOOL_NAME for tool in tools.tools):
141
- style = "green" if highlight_namespaced_tool == HUMAN_INPUT_TOOL_NAME else "dim white"
149
+ style = (
150
+ "green" if highlight_namespaced_tool == HUMAN_INPUT_TOOL_NAME else "dim white"
151
+ )
142
152
  display_server_list.append("[human] ", style)
143
153
 
144
154
  # Add all available servers
145
- mcp_server_name = highlight_namespaced_tool.split(SEP)[0] if SEP in highlight_namespaced_tool else highlight_namespaced_tool
155
+ mcp_server_name = (
156
+ highlight_namespaced_tool.split(SEP)[0]
157
+ if SEP in highlight_namespaced_tool
158
+ else highlight_namespaced_tool
159
+ )
146
160
 
147
161
  for server_name in await aggregator.list_servers():
148
162
  style = "green" if server_name == mcp_server_name else "dim white"
@@ -161,11 +175,17 @@ class ConsoleDisplay:
161
175
  console.console.print(panel)
162
176
  console.console.print("\n")
163
177
 
164
- def show_user_message(self, message, model: Optional[str], chat_turn: int, name: Optional[str] = None) -> None:
178
+ def show_user_message(
179
+ self, message, model: Optional[str], chat_turn: int, name: Optional[str] = None
180
+ ) -> None:
165
181
  """Display a user message in a formatted panel."""
166
182
  if not self.config or not self.config.logger.show_chat:
167
183
  return
168
184
 
185
+ subtitle_text = Text(f"{model or 'unknown'}", style="dim white")
186
+ if chat_turn > 0:
187
+ subtitle_text.append(f" turn {chat_turn}", style="dim white")
188
+
169
189
  panel = Panel(
170
190
  message,
171
191
  title=f"{f'({name}) [USER]' if name else '[USER]'}",
@@ -173,7 +193,7 @@ class ConsoleDisplay:
173
193
  style="blue",
174
194
  border_style="bold white",
175
195
  padding=(1, 2),
176
- subtitle=Text(f"{model or 'unknown'} turn {chat_turn}", style="dim white"),
196
+ subtitle=subtitle_text,
177
197
  subtitle_align="left",
178
198
  )
179
199
  console.console.print(panel)
@@ -1,164 +0,0 @@
1
- mcp_agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- mcp_agent/app.py,sha256=Y2KymSrh3TcTOGD-oS_QPYyNJ6YpOUTSmP_V-hN74bs,10246
3
- mcp_agent/config.py,sha256=IHVhC5fsFklY6lta6z2OI2cGyoT-WDF1_d4NU1sj8Mw,10826
4
- mcp_agent/console.py,sha256=Gjf2QLFumwG1Lav__c07X_kZxxEUSkzV-1_-YbAwcwo,813
5
- mcp_agent/context.py,sha256=najrCONqeQOI5dFZbne1pHTwzGhV5gdksrddmkO87Aw,7806
6
- mcp_agent/context_dependent.py,sha256=m6QqoEoEen2M3Z1ZU3vNqC2x-MypYIqs8gUSadPh21A,1425
7
- mcp_agent/event_progress.py,sha256=25iz0yyg-O4glMmtijcYpDdUmtUIKsCmR_8A52GgeC4,2716
8
- mcp_agent/mcp_server_registry.py,sha256=8zlO87oTDg7UecQ9-MZriQN34OHTKyQxaTQcILOZbmk,9658
9
- mcp_agent/progress_display.py,sha256=GeJU9VUt6qKsFVymG688hCMVCsAygG9ifiiEb5IcbN4,361
10
- mcp_agent/agents/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- mcp_agent/agents/agent.py,sha256=0_7AqR3ZjKJEIP7b65I_XLpEUrAal8rHtK22UXlUfws,16350
12
- mcp_agent/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
- mcp_agent/cli/__main__.py,sha256=AVZ7tQFhU_sDOGuUGJq8ujgKtcxsYJBJwHbVaaiRDlI,166
14
- mcp_agent/cli/main.py,sha256=D4EGpUvmyZzqeKfcczOyELzRjXsnB05Cu0otbEv3V2A,2742
15
- mcp_agent/cli/terminal.py,sha256=-bUWq21i-hshmvTPAA1eryy12O0LvvoXe9LQJq7k1Sk,1042
16
- mcp_agent/cli/commands/bootstrap.py,sha256=TVzruKtO9L3J0tNvqAxkwyMjNd9AAxnUPNKws9StSmQ,10462
17
- mcp_agent/cli/commands/config.py,sha256=jU2gl4d5YESrdUboh3u6mxf7CxVT-_DT_sK8Vuh3ajw,231
18
- mcp_agent/cli/commands/setup.py,sha256=RsQNWgCLwZokrj15ACEDkTpR4RHtvUzk28WqDcZ5YNY,6233
19
- mcp_agent/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
- mcp_agent/core/agent_app.py,sha256=zwfQLZrdF6AYQOeUzIGOxfmn3BQWxjYvxMvJ59UZmNQ,27843
21
- mcp_agent/core/agent_types.py,sha256=dVOImGJY5xbDFpzLk2Ib4daFsqnm7j06fJN6l34Zwg4,1255
22
- mcp_agent/core/agent_utils.py,sha256=4hYdeOml5nX52VCeW7f6KgmfzIh8hHDPPl4QqUMHx3c,1882
23
- mcp_agent/core/decorators.py,sha256=hqjMDyApLOZZojXyiBW5KsfhONMcd9QbfHNEYMNko6Y,16072
24
- mcp_agent/core/enhanced_prompt.py,sha256=nqny3CG1tgIxR0zQwM-YWS70LFZ8u4uigx5ctD7zXpQ,18518
25
- mcp_agent/core/error_handling.py,sha256=xoyS2kLe0eG0bj2eSJCJ2odIhGUve2SbDR7jP-A-uRw,624
26
- mcp_agent/core/exceptions.py,sha256=ENAD_qGG67foxy6vDkIvc-lgopIUQy6O7zvNPpPXaQg,2289
27
- mcp_agent/core/factory.py,sha256=oNt6WzzCFlQPCRM6NckqCNaeElKgmvbCucJsYpklAw0,18321
28
- mcp_agent/core/fastagent.py,sha256=YpK1jO5vpkV50Sb9oV0yIlUvE1Co5mcfzJWLffenbZI,19092
29
- mcp_agent/core/mcp_content.py,sha256=-FPG8mDKKuPaw2N-zWlnYFwh7_oAu5RQxKzNdMJ6lhs,6766
30
- mcp_agent/core/prompt.py,sha256=wFyJt6J7n-uhJsVCQwaN4ZkzjxA2xFgP5GimN9BTVOc,4238
31
- mcp_agent/core/proxies.py,sha256=sMInee2OOb1mTSPwk5jkBUOpXIEqbv66nysOv7k-siU,11072
32
- mcp_agent/core/request_params.py,sha256=bEjWo86fqxdiWm2U5nPDd1uCUpcIQO9oiCinhB8lQN0,1185
33
- mcp_agent/core/types.py,sha256=GerFhHpupkklPq_w6nGkNyytzTTP9ZJu0fvJIWugEbM,821
34
- mcp_agent/core/validation.py,sha256=LZE4OYqUqOYnpv01yxu14V-_nTW2jS6J7WrVK5-Yu7E,8274
35
- mcp_agent/eval/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
- mcp_agent/executor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
- mcp_agent/executor/decorator_registry.py,sha256=LXlmBOSm7QoQV61JIa48qolt2AY0IJy9Tm8Ov6y43VA,3796
38
- mcp_agent/executor/executor.py,sha256=MzLSnW9nHrLHYChR3oQa5B8dajQGX26q6-S2BJCxv0o,9507
39
- mcp_agent/executor/task_registry.py,sha256=PCALFeYtkQrPBg4RBJnlA0aDI8nHclrNkHGUS4kV3W8,1242
40
- mcp_agent/executor/temporal.py,sha256=V-zu1EQxSKpONGzKxlBO8r09cVVW05rLlGa0msKr59s,14576
41
- mcp_agent/executor/workflow.py,sha256=T2RzVZ2zD2024zPgQgXERW8zZ3XUv-3dwEeBDZCUkBg,6721
42
- mcp_agent/executor/workflow_signal.py,sha256=aOmdkvFbki4hjF0rJZMenvpTYO4jcGAkmV6v-qHcwhw,11116
43
- mcp_agent/human_input/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
- mcp_agent/human_input/handler.py,sha256=8D8trAEPDDFZZ_JliZhhY47ALbTgtWEbsYcINWtVb_c,3128
45
- mcp_agent/human_input/types.py,sha256=RtWBOVzy8vnYoQrc36jRLn8z8N3C4pDPMBN5vF6qM5Y,1476
46
- mcp_agent/logging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
47
- mcp_agent/logging/events.py,sha256=iHTSgrxK3BWnRoej6NhxVL5899MIHr-ktsA7hxMoo9k,3437
48
- mcp_agent/logging/json_serializer.py,sha256=qkfxnR9ka6OgvwSpM2CggELbEtzzkApm0s_KYz11RDY,5791
49
- mcp_agent/logging/listeners.py,sha256=_S4Jp5_KWp0kUfrx4BxDdNCeQK3MNT3Zi9AaolPri7A,6648
50
- mcp_agent/logging/logger.py,sha256=me1Qt-0qqphpE0zKGQ1zs7Li4FvJERBxrey0C47Y14U,10708
51
- mcp_agent/logging/rich_progress.py,sha256=oY9fjb4Tyw6887v8sgO6EGIK4lnmIoR3NNxhA_-Ln_M,4893
52
- mcp_agent/logging/tracing.py,sha256=d5lSXakzzi5PtQpUkVkOnYaGX8NduGPq__S7vx-Ln8U,5187
53
- mcp_agent/logging/transport.py,sha256=m8YsLLu5T8eof_ndpLQs4gHOzqqEL98xsVwBwDsBfxI,17335
54
- mcp_agent/mcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
- mcp_agent/mcp/gen_client.py,sha256=ANLTXPerv4srmrED-8y2MeZIB2kMNBLXPmYrYr7_M40,2964
56
- mcp_agent/mcp/interfaces.py,sha256=Xxejrr0RV83ghxv75KBkkxI4bU7LWv5ZLv2KCcaKxRY,5251
57
- mcp_agent/mcp/mcp_activity.py,sha256=CajXCFWZ2cKEX9s4-HfNVAj471ePTVs4NOkvmIh65tE,592
58
- mcp_agent/mcp/mcp_agent_client_session.py,sha256=YSRcXk1dEekOiG6x7YErPQTXGS_VdnyfMvhUz-qaSSQ,4109
59
- mcp_agent/mcp/mcp_agent_server.py,sha256=kmXvJQIXbDbeGelcuLqJpJiToFGMQvOD9R_Lju0D_vQ,1613
60
- mcp_agent/mcp/mcp_aggregator.py,sha256=VGpnhrSq9IwFHymh4PYIO2cPvhpT177QccNfr2Yx6LM,36596
61
- mcp_agent/mcp/mcp_connection_manager.py,sha256=9b5_GCN4LEg-OYbCpgwiP7HLjKAb9ZAZI_2lPmIk1DI,13379
62
- mcp_agent/mcp/mime_utils.py,sha256=difepNR_gpb4MpMLkBRAoyhDk-AjXUHTiqKvT_VwS1o,1805
63
- mcp_agent/mcp/prompt_message_multipart.py,sha256=qNSQfabqAMUTgfJpKmqtlwyywsNiE_3qrlfdop7xpgI,1930
64
- mcp_agent/mcp/prompt_serialization.py,sha256=VtIZU3YCMgbR_PquflncIJZmGTC_8Z3JUuLWPAOovUA,15658
65
- mcp_agent/mcp/resource_utils.py,sha256=E8uuIPG1XAA2HSHHJr0Y74bP-l-THryNpgnZRbRL_IA,6582
66
- mcp_agent/mcp/sampling.py,sha256=nwd_hvWaOQvhUVvuEgw0IDz6A-7JtpZvPoW8BFu4wys,4457
67
- mcp_agent/mcp/stdio.py,sha256=lh2IIqjn4cJ8OE_fyN-HgExjpq5baArOLfbHwHASO9Q,4530
68
- mcp_agent/mcp/prompts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
69
- mcp_agent/mcp/prompts/__main__.py,sha256=gr1Tdz9fcK0EXjEuZg_BOnKUmvhYq5AH2lFZicVyNb0,237
70
- mcp_agent/mcp/prompts/prompt_load.py,sha256=3iIg1cDRd9Dw-HdcZ66r1TmsbZEW_AkB7oIh1wCtsO4,3798
71
- mcp_agent/mcp/prompts/prompt_server.py,sha256=wydIsaiS7QrZUwpqzFLrH42PRnEeWybRxBL_LsIegPs,13958
72
- mcp_agent/mcp/prompts/prompt_template.py,sha256=-iU_QCsnbX86d1yYGqwGfn8O_bpMepf-ouAJL5qRn14,16015
73
- mcp_agent/mcp_server/__init__.py,sha256=zBU51ITHIEPScd9nRafnhEddsWqXRPAAvHhkrbRI2_4,155
74
- mcp_agent/mcp_server/agent_server.py,sha256=lk22tNYJDSGZj5lb8ypyb0S0z194XK0VFFZFs16i4t4,4422
75
- mcp_agent/resources/examples/data-analysis/analysis-campaign.py,sha256=BxNSupMPbX5SyKmSTIE4Ze8t6wEoCfkun29QwbqS9Ww,7277
76
- mcp_agent/resources/examples/data-analysis/analysis.py,sha256=F2jjJErQZz1GV95M8KF5SlxLUuyqtFm4ZZ87vNeqoJc,2619
77
- mcp_agent/resources/examples/data-analysis/fastagent.config.yaml,sha256=ini94PHyJCfgpjcjHKMMbGuHs6LIj46F1NwY0ll5HVk,1609
78
- mcp_agent/resources/examples/data-analysis/slides.py,sha256=uFPdVjfhNJvDn9k2TGI3-jzS8n4POORTpQHgnQEOUoU,4914
79
- mcp_agent/resources/examples/data-analysis/mount-point/WA_Fn-UseC_-HR-Employee-Attrition.csv,sha256=pcMeOL1_r8m8MziE6xgbBrQbjl5Ijo98yycZn7O-dlk,227977
80
- mcp_agent/resources/examples/internal/agent.py,sha256=pdVfIhD8rRE7058R-aNGlo7bx7aX0LNptWgo04aGBYs,415
81
- mcp_agent/resources/examples/internal/fastagent.config.yaml,sha256=U2s0Asc06wC04FstKnBMeB3J5gIa3xa-Rao-1-74XTk,1935
82
- mcp_agent/resources/examples/internal/job.py,sha256=ANF3c01gHJ4O4pIxaAtC3rdgYqVObMySaCUBS4dApW4,4102
83
- mcp_agent/resources/examples/internal/prompt_category.py,sha256=kMvqNX_zu0sV-kTaAR3skc_tsq9t8QSEofciK0m4aJc,551
84
- mcp_agent/resources/examples/internal/prompt_sizing.py,sha256=bskgxulN57hVkc0V9W0fnjnqSRCK5Tkw9Ggf2MmGIVU,1989
85
- mcp_agent/resources/examples/internal/sizer.py,sha256=xP1TBJkp4xIdtJnyk2MP4BufThauzULaMmgnt5Y5Iw4,365
86
- mcp_agent/resources/examples/internal/social.py,sha256=pTKcpHAcvA-vQYgjVfDuU1FivCR004Nq4N2GXd5OMs0,1716
87
- mcp_agent/resources/examples/mcp_researcher/researcher-eval.py,sha256=C1Oz01CP7JlqkWRkHVEt5EJGHTMUqGKEH3AVhTLfyFY,1815
88
- mcp_agent/resources/examples/prompting/__init__.py,sha256=2GSrs9MSDIKo-uDrUI0O311F0UH0RW02ZNdvItJzjfI,50
89
- mcp_agent/resources/examples/prompting/agent.py,sha256=yuONn6xkQfk6hjanC9j5_zsIK6JtRP7N-tlgVYiKJnE,616
90
- mcp_agent/resources/examples/prompting/fastagent.config.yaml,sha256=UR6LtCpeSIzkHsCrHJW1z-wE7AgmgKozS_IYcfcSAkc,1270
91
- mcp_agent/resources/examples/prompting/image_server.py,sha256=yuM8ialpKJHD4GKfqoWAsaWjdCjhA4lS77rt7pIGGAk,1661
92
- mcp_agent/resources/examples/researcher/fastagent.config.yaml,sha256=bNOnID9OgdSBTUEhdimKB8LjaZLa1B6igmp-nxx8nr4,2271
93
- mcp_agent/resources/examples/researcher/researcher-eval.py,sha256=BUUjHDftelmXfnmhNBNijX82-h-RTaVpFl6d3e0ceGE,1826
94
- mcp_agent/resources/examples/researcher/researcher-imp.py,sha256=VczElIn-qSOTY9Npi-YypVV9hMz8im-5qfE6-bSxntQ,7872
95
- mcp_agent/resources/examples/researcher/researcher.py,sha256=sPYqmBOSopfMQgJZkpo8oFnXMqF7d7XU94BHugwmjQY,1440
96
- mcp_agent/resources/examples/workflows/agent_build.py,sha256=uhCvhD9Qb_IxF0UoAzMOtClbi_0YePVifrFncqrXnn8,2864
97
- mcp_agent/resources/examples/workflows/chaining.py,sha256=h5o2bQ1vvycmLfnpi0D1gHgSKk0zJPspntWgJ6b8mME,1217
98
- mcp_agent/resources/examples/workflows/evaluator.py,sha256=EburhzPFemZCR-5ofFhbWD1aVoL6eZl2CtvOYCrkSgg,3118
99
- mcp_agent/resources/examples/workflows/fastagent.config.yaml,sha256=k2AiapOcK42uqG2nWDVvnSLqN4okQIQZK0FTbZufBpY,809
100
- mcp_agent/resources/examples/workflows/human_input.py,sha256=-pSiV12fEKupSESI02fH3PuKgisb4dd-bca6sO9G-1A,614
101
- mcp_agent/resources/examples/workflows/orchestrator.py,sha256=kBFU-v6cW26RRlOiEiH6TMLL2KvYDBa_BSwJgHHKoao,2605
102
- mcp_agent/resources/examples/workflows/parallel.py,sha256=TJ4MnAf9vNuDhLfSgJ-66n7jV2kO-Xhr-rWufKukpnQ,3105
103
- mcp_agent/resources/examples/workflows/router.py,sha256=E4x_-c3l4YW9w1i4ARcDtkdeqIdbWEGfsMzwLYpdbVc,1677
104
- mcp_agent/resources/examples/workflows/sse.py,sha256=iv6hpdLiMdGUaw3pu8ceR1PV7nTItN3nUkTkQ_HN85Q,578
105
- mcp_agent/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
106
- mcp_agent/telemetry/usage_tracking.py,sha256=aa-me9jusF7ovBSn9PG_RxvDnMRblsGKGn-AgNA8RkQ,510
107
- mcp_agent/ui/console_display.py,sha256=bldOSYv0RtbN-QyxtKAodNLqTZW6pxY91pKUj81SWio,9368
108
- mcp_agent/workflows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
109
- mcp_agent/workflows/embedding/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
110
- mcp_agent/workflows/embedding/embedding_base.py,sha256=DoanBbdoQFOFvv_aNihLJ5yXG2xizi9KHaOnP72UY50,1674
111
- mcp_agent/workflows/embedding/embedding_cohere.py,sha256=sZWoL7ZOkyakpkzZTFbKzXzfuyyFKwLNn7n5WZY0uDA,1548
112
- mcp_agent/workflows/embedding/embedding_openai.py,sha256=RHqJsEpG3v1cxhupo1BINoFasHfxUTZt0T9ZMIbxtUk,1384
113
- mcp_agent/workflows/evaluator_optimizer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
114
- mcp_agent/workflows/evaluator_optimizer/evaluator_optimizer.py,sha256=yil4pzjnj5OCA6JerMSQTHDdpNr86hDjcz54iWYlo5U,17640
115
- mcp_agent/workflows/intent_classifier/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
116
- mcp_agent/workflows/intent_classifier/intent_classifier_base.py,sha256=e2iNZOnHvP5rjYMs60L9PgyDJyHuhF_IgG6iUTZQlAU,3993
117
- mcp_agent/workflows/intent_classifier/intent_classifier_embedding.py,sha256=WcZB76E-Zpcy6cPlUUvq_n3O0YxsvmApRH3whJYiRQo,3969
118
- mcp_agent/workflows/intent_classifier/intent_classifier_embedding_cohere.py,sha256=GC3d0pg0ic21tLsegeJ7MDfuYJbOGn6RTE-2vh2fYHo,1504
119
- mcp_agent/workflows/intent_classifier/intent_classifier_embedding_openai.py,sha256=QTZ69JNoIqGACz_2ejbByQkVsciZwWB6W5LzSdZoqZo,1504
120
- mcp_agent/workflows/intent_classifier/intent_classifier_llm.py,sha256=ghKMNL1Pgm4bcQe5KK31atE_fDF_n2utckQqCVtapOs,5034
121
- mcp_agent/workflows/intent_classifier/intent_classifier_llm_anthropic.py,sha256=PkCUeUGJ3fV3_UI1_utmIE3CKi0Fr7RXi0CgZFBh-Ik,1972
122
- mcp_agent/workflows/intent_classifier/intent_classifier_llm_openai.py,sha256=vK-VfU36Sp_TxUcOSVYBlMBFQ7GzlP3QFXAYanIUX-c,1926
123
- mcp_agent/workflows/llm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
- mcp_agent/workflows/llm/anthropic_utils.py,sha256=xHQ7Dt0co88m02lvGiKZdj3p75dVPyI8SQvWe71HBe0,3195
125
- mcp_agent/workflows/llm/augmented_llm.py,sha256=47bBW-Nwx_GHp6zsw524L_A5KIpg4coUI9IilFZYquE,23411
126
- mcp_agent/workflows/llm/augmented_llm_anthropic.py,sha256=pS245nFqA2fiHk7a0Y1NcMg3fx3ckqRAfpC8uMbCm54,19593
127
- mcp_agent/workflows/llm/augmented_llm_openai.py,sha256=5Nay-3fPLqWNSuhKWf3Rs-q9uStloEupkujfqfKHAsE,20177
128
- mcp_agent/workflows/llm/augmented_llm_passthrough.py,sha256=2qJusYzoFK0kTsF7G0KFJiHDfcOK1o_nhIeO9RQwB8o,8862
129
- mcp_agent/workflows/llm/augmented_llm_playback.py,sha256=XdxGwuNJKFyvVt1WhnbrwX0Ax9Wg5Hs1TuzJ6WAScJw,4362
130
- mcp_agent/workflows/llm/memory.py,sha256=UakoBCJBf59JBtB6uyZM0OZjlxDW_VHtSfDs08ibVEc,3312
131
- mcp_agent/workflows/llm/model_factory.py,sha256=tngHscO1-pTZPspHju_I_O7trypyR25k13RFOyc3tUw,7571
132
- mcp_agent/workflows/llm/openai_utils.py,sha256=nJpyaYdS5Ovmcj73es7t4LpE4ontxjDYbwqNcmEWR6w,1895
133
- mcp_agent/workflows/llm/prompt_utils.py,sha256=yWQHykoK13QRF7evHUKxVF0SpVLN-Bsft0Yixzvn0g0,4825
134
- mcp_agent/workflows/llm/sampling_converter.py,sha256=KlR6jnmkbDy_o8uDuAdS2kzIv8a8MKJ3_RithPs5MSc,3591
135
- mcp_agent/workflows/llm/sampling_format_converter.py,sha256=7FrJi2HaV9czrL4H2wkfF8TsR-Xn119RPNP-aa8QDE8,767
136
- mcp_agent/workflows/llm/providers/__init__.py,sha256=qirdqAKIbw3BY1NBdGytH9tvpjOu0QNOqKAG2deD_U4,285
137
- mcp_agent/workflows/llm/providers/multipart_converter_anthropic.py,sha256=5MkuEVI86WwSg6wfOrFY-6_d2LKQMZnHEQolnOfrHxk,15727
138
- mcp_agent/workflows/llm/providers/multipart_converter_openai.py,sha256=hy9rsq320nct36mXzZ5tYdN5RGrMtw9E4OCVe4pPsik,16459
139
- mcp_agent/workflows/llm/providers/openai_multipart.py,sha256=cvosYOI1dPI6p9lrk5D-TpgRrXcHFy9PD_lKE9wIgHg,6589
140
- mcp_agent/workflows/llm/providers/sampling_converter_anthropic.py,sha256=h3j6np65p1eW86XiEsnjLcc7V2KAz3pzT-ayvrJZyf8,1632
141
- mcp_agent/workflows/llm/providers/sampling_converter_openai.py,sha256=Wqxy7eXNx3oJKfNKG9BiJiqR14S8xaz9y1YygfjN1io,841
142
- mcp_agent/workflows/orchestrator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
143
- mcp_agent/workflows/orchestrator/orchestrator.py,sha256=1HDOtOonfCsqeK_Bqp3G5JwWClCEzEN22-oNcfcLU2w,21483
144
- mcp_agent/workflows/orchestrator/orchestrator_models.py,sha256=M5sFH6JlneNaBXiD7L-rQYKn8yJgM8vDsX6ampmXz5U,7113
145
- mcp_agent/workflows/orchestrator/orchestrator_prompts.py,sha256=EXKEI174sshkZyPPEnWbwwNafzSPuA39MXL7iqG9cWc,9106
146
- mcp_agent/workflows/parallel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
147
- mcp_agent/workflows/parallel/fan_in.py,sha256=IKxQGvzR6oE-Z3KZ2a5AndaOwIH87JcbYTpZ15LFZnE,12804
148
- mcp_agent/workflows/parallel/fan_out.py,sha256=LSOjwUaQj-mB3ldjtpR6LNHjsspvdxGSCn1AiIO-OO0,6957
149
- mcp_agent/workflows/parallel/parallel_llm.py,sha256=VRcBXW_TvT-PAGniffzVAtZZPKgl1mIBBH4bgI59DtY,5601
150
- mcp_agent/workflows/router/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
151
- mcp_agent/workflows/router/router_base.py,sha256=9D5W9_rqB_nnPU1S1YpGcFjsrBlagGY0T2MA7kLIznc,13908
152
- mcp_agent/workflows/router/router_embedding.py,sha256=GBCakhNIQL3GJhHPsCOqm4EfR7G27Ijw3Pyk-7hyHtI,7814
153
- mcp_agent/workflows/router/router_embedding_cohere.py,sha256=xZImdyymuYvP08z304Z1CoUkCvAKL4xOS5TW7IOwB9M,1983
154
- mcp_agent/workflows/router/router_embedding_openai.py,sha256=w7qoOc8jM1XxP6-1GAK3ZI1Noy4B00vYrw_R9zmKiuU,1983
155
- mcp_agent/workflows/router/router_llm.py,sha256=JwtEoKiEmnoY08ue8vV_6kJY0FdlbbnzgUWVmEsbHBs,10778
156
- mcp_agent/workflows/swarm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
157
- mcp_agent/workflows/swarm/swarm.py,sha256=y3TiH_leHPDDOxFmynfBxs1N2NkB_4wwXYur4TYr400,10774
158
- mcp_agent/workflows/swarm/swarm_anthropic.py,sha256=tgbG9lERqAcRPSFBB85ewxlz1C01KZsCEkFUoGvPbw0,1624
159
- mcp_agent/workflows/swarm/swarm_openai.py,sha256=653ILzYcJUnlequKDv03_wCRt83AH5sn2QKPAC60opE,1596
160
- fast_agent_mcp-0.1.13.dist-info/METADATA,sha256=5_QyvfF957PGwZPdrO8I5FXyQut0KkXoOthPdRpQgSU,29678
161
- fast_agent_mcp-0.1.13.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
162
- fast_agent_mcp-0.1.13.dist-info/entry_points.txt,sha256=qPM7vwtN1_KmP3dXehxgiCxUBHtqP7yfenZigztvY-w,226
163
- fast_agent_mcp-0.1.13.dist-info/licenses/LICENSE,sha256=cN3FxDURL9XuzE5mhK9L2paZo82LTfjwCYVT7e3j0e4,10939
164
- fast_agent_mcp-0.1.13.dist-info/RECORD,,