fast-agent-mcp 0.1.11__py3-none-any.whl → 0.1.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.
Files changed (131) hide show
  1. {fast_agent_mcp-0.1.11.dist-info → fast_agent_mcp-0.1.13.dist-info}/METADATA +1 -1
  2. fast_agent_mcp-0.1.13.dist-info/RECORD +164 -0
  3. mcp_agent/agents/agent.py +37 -102
  4. mcp_agent/app.py +16 -27
  5. mcp_agent/cli/commands/bootstrap.py +22 -52
  6. mcp_agent/cli/commands/config.py +4 -4
  7. mcp_agent/cli/commands/setup.py +11 -26
  8. mcp_agent/cli/main.py +6 -9
  9. mcp_agent/cli/terminal.py +2 -2
  10. mcp_agent/config.py +1 -5
  11. mcp_agent/context.py +13 -26
  12. mcp_agent/context_dependent.py +3 -7
  13. mcp_agent/core/agent_app.py +46 -122
  14. mcp_agent/core/agent_types.py +29 -2
  15. mcp_agent/core/agent_utils.py +3 -5
  16. mcp_agent/core/decorators.py +6 -14
  17. mcp_agent/core/enhanced_prompt.py +25 -52
  18. mcp_agent/core/error_handling.py +1 -1
  19. mcp_agent/core/exceptions.py +8 -8
  20. mcp_agent/core/factory.py +30 -72
  21. mcp_agent/core/fastagent.py +48 -88
  22. mcp_agent/core/mcp_content.py +10 -19
  23. mcp_agent/core/prompt.py +8 -15
  24. mcp_agent/core/proxies.py +34 -25
  25. mcp_agent/core/request_params.py +46 -0
  26. mcp_agent/core/types.py +6 -6
  27. mcp_agent/core/validation.py +16 -16
  28. mcp_agent/executor/decorator_registry.py +11 -23
  29. mcp_agent/executor/executor.py +8 -17
  30. mcp_agent/executor/task_registry.py +2 -4
  31. mcp_agent/executor/temporal.py +28 -74
  32. mcp_agent/executor/workflow.py +3 -5
  33. mcp_agent/executor/workflow_signal.py +17 -29
  34. mcp_agent/human_input/handler.py +4 -9
  35. mcp_agent/human_input/types.py +2 -3
  36. mcp_agent/logging/events.py +1 -5
  37. mcp_agent/logging/json_serializer.py +7 -6
  38. mcp_agent/logging/listeners.py +20 -23
  39. mcp_agent/logging/logger.py +15 -17
  40. mcp_agent/logging/rich_progress.py +10 -8
  41. mcp_agent/logging/tracing.py +4 -6
  42. mcp_agent/logging/transport.py +24 -24
  43. mcp_agent/mcp/gen_client.py +4 -12
  44. mcp_agent/mcp/interfaces.py +107 -88
  45. mcp_agent/mcp/mcp_agent_client_session.py +11 -19
  46. mcp_agent/mcp/mcp_agent_server.py +8 -10
  47. mcp_agent/mcp/mcp_aggregator.py +49 -122
  48. mcp_agent/mcp/mcp_connection_manager.py +16 -37
  49. mcp_agent/mcp/prompt_message_multipart.py +12 -18
  50. mcp_agent/mcp/prompt_serialization.py +13 -38
  51. mcp_agent/mcp/prompts/prompt_load.py +99 -0
  52. mcp_agent/mcp/prompts/prompt_server.py +21 -128
  53. mcp_agent/mcp/prompts/prompt_template.py +20 -42
  54. mcp_agent/mcp/resource_utils.py +8 -17
  55. mcp_agent/mcp/sampling.py +62 -64
  56. mcp_agent/mcp/stdio.py +11 -8
  57. mcp_agent/mcp_server/__init__.py +1 -1
  58. mcp_agent/mcp_server/agent_server.py +10 -17
  59. mcp_agent/mcp_server_registry.py +13 -35
  60. mcp_agent/resources/examples/data-analysis/analysis-campaign.py +1 -1
  61. mcp_agent/resources/examples/data-analysis/analysis.py +1 -1
  62. mcp_agent/resources/examples/data-analysis/slides.py +110 -0
  63. mcp_agent/resources/examples/internal/agent.py +2 -1
  64. mcp_agent/resources/examples/internal/job.py +2 -1
  65. mcp_agent/resources/examples/internal/prompt_category.py +1 -1
  66. mcp_agent/resources/examples/internal/prompt_sizing.py +3 -5
  67. mcp_agent/resources/examples/internal/sizer.py +2 -1
  68. mcp_agent/resources/examples/internal/social.py +2 -1
  69. mcp_agent/resources/examples/mcp_researcher/researcher-eval.py +1 -1
  70. mcp_agent/resources/examples/prompting/__init__.py +1 -1
  71. mcp_agent/resources/examples/prompting/agent.py +2 -1
  72. mcp_agent/resources/examples/prompting/image_server.py +5 -11
  73. mcp_agent/resources/examples/researcher/researcher-eval.py +1 -1
  74. mcp_agent/resources/examples/researcher/researcher-imp.py +3 -4
  75. mcp_agent/resources/examples/researcher/researcher.py +2 -1
  76. mcp_agent/resources/examples/workflows/agent_build.py +2 -1
  77. mcp_agent/resources/examples/workflows/chaining.py +2 -1
  78. mcp_agent/resources/examples/workflows/evaluator.py +2 -1
  79. mcp_agent/resources/examples/workflows/human_input.py +2 -1
  80. mcp_agent/resources/examples/workflows/orchestrator.py +2 -1
  81. mcp_agent/resources/examples/workflows/parallel.py +2 -1
  82. mcp_agent/resources/examples/workflows/router.py +2 -1
  83. mcp_agent/resources/examples/workflows/sse.py +1 -1
  84. mcp_agent/telemetry/usage_tracking.py +2 -1
  85. mcp_agent/ui/console_display.py +17 -41
  86. mcp_agent/workflows/embedding/embedding_base.py +1 -4
  87. mcp_agent/workflows/embedding/embedding_cohere.py +2 -2
  88. mcp_agent/workflows/embedding/embedding_openai.py +4 -13
  89. mcp_agent/workflows/evaluator_optimizer/evaluator_optimizer.py +23 -57
  90. mcp_agent/workflows/intent_classifier/intent_classifier_base.py +5 -8
  91. mcp_agent/workflows/intent_classifier/intent_classifier_embedding.py +7 -11
  92. mcp_agent/workflows/intent_classifier/intent_classifier_embedding_cohere.py +4 -8
  93. mcp_agent/workflows/intent_classifier/intent_classifier_embedding_openai.py +4 -8
  94. mcp_agent/workflows/intent_classifier/intent_classifier_llm.py +11 -22
  95. mcp_agent/workflows/intent_classifier/intent_classifier_llm_anthropic.py +3 -3
  96. mcp_agent/workflows/intent_classifier/intent_classifier_llm_openai.py +4 -6
  97. mcp_agent/workflows/llm/anthropic_utils.py +8 -29
  98. mcp_agent/workflows/llm/augmented_llm.py +94 -332
  99. mcp_agent/workflows/llm/augmented_llm_anthropic.py +43 -76
  100. mcp_agent/workflows/llm/augmented_llm_openai.py +46 -100
  101. mcp_agent/workflows/llm/augmented_llm_passthrough.py +42 -20
  102. mcp_agent/workflows/llm/augmented_llm_playback.py +8 -6
  103. mcp_agent/workflows/llm/memory.py +103 -0
  104. mcp_agent/workflows/llm/model_factory.py +9 -21
  105. mcp_agent/workflows/llm/openai_utils.py +1 -1
  106. mcp_agent/workflows/llm/prompt_utils.py +39 -27
  107. mcp_agent/workflows/llm/providers/multipart_converter_anthropic.py +246 -184
  108. mcp_agent/workflows/llm/providers/multipart_converter_openai.py +212 -202
  109. mcp_agent/workflows/llm/providers/openai_multipart.py +19 -61
  110. mcp_agent/workflows/llm/providers/sampling_converter_anthropic.py +11 -212
  111. mcp_agent/workflows/llm/providers/sampling_converter_openai.py +13 -215
  112. mcp_agent/workflows/llm/sampling_converter.py +117 -0
  113. mcp_agent/workflows/llm/sampling_format_converter.py +12 -29
  114. mcp_agent/workflows/orchestrator/orchestrator.py +24 -67
  115. mcp_agent/workflows/orchestrator/orchestrator_models.py +14 -40
  116. mcp_agent/workflows/parallel/fan_in.py +17 -47
  117. mcp_agent/workflows/parallel/fan_out.py +6 -12
  118. mcp_agent/workflows/parallel/parallel_llm.py +9 -26
  119. mcp_agent/workflows/router/router_base.py +29 -59
  120. mcp_agent/workflows/router/router_embedding.py +11 -25
  121. mcp_agent/workflows/router/router_embedding_cohere.py +2 -2
  122. mcp_agent/workflows/router/router_embedding_openai.py +2 -2
  123. mcp_agent/workflows/router/router_llm.py +12 -28
  124. mcp_agent/workflows/swarm/swarm.py +20 -48
  125. mcp_agent/workflows/swarm/swarm_anthropic.py +2 -2
  126. mcp_agent/workflows/swarm/swarm_openai.py +2 -2
  127. fast_agent_mcp-0.1.11.dist-info/RECORD +0 -160
  128. mcp_agent/workflows/llm/llm_selector.py +0 -345
  129. {fast_agent_mcp-0.1.11.dist-info → fast_agent_mcp-0.1.13.dist-info}/WHEEL +0 -0
  130. {fast_agent_mcp-0.1.11.dist-info → fast_agent_mcp-0.1.13.dist-info}/entry_points.txt +0 -0
  131. {fast_agent_mcp-0.1.11.dist-info → fast_agent_mcp-0.1.13.dist-info}/licenses/LICENSE +0 -0
@@ -1,12 +1,12 @@
1
- from typing import Callable, List, Literal, Optional, TYPE_CHECKING
1
+ from typing import TYPE_CHECKING, Callable, List, Literal, Optional
2
2
 
3
3
  from pydantic import BaseModel
4
4
 
5
5
  from mcp_agent.agents.agent import Agent
6
+ from mcp_agent.event_progress import ProgressAction
7
+ from mcp_agent.logging.logger import get_logger
6
8
  from mcp_agent.workflows.llm.augmented_llm import AugmentedLLM, RequestParams
7
9
  from mcp_agent.workflows.router.router_base import ResultT, Router, RouterResult
8
- from mcp_agent.logging.logger import get_logger
9
- from mcp_agent.event_progress import ProgressAction
10
10
 
11
11
  if TYPE_CHECKING:
12
12
  from mcp_agent.context import Context
@@ -109,7 +109,7 @@ class LLMRouter(Router):
109
109
  context: Optional["Context"] = None,
110
110
  default_request_params: Optional[RequestParams] = None,
111
111
  **kwargs,
112
- ):
112
+ ) -> None:
113
113
  # Extract verb from kwargs to avoid passing it up the inheritance chain
114
114
  self._llm_verb = kwargs.pop("verb", None)
115
115
 
@@ -156,7 +156,7 @@ class LLMRouter(Router):
156
156
  await instance.initialize()
157
157
  return instance
158
158
 
159
- async def initialize(self):
159
+ async def initialize(self) -> None:
160
160
  """Initialize the router and create the LLM instance."""
161
161
  if not self.initialized:
162
162
  await super().initialize()
@@ -168,18 +168,12 @@ class LLMRouter(Router):
168
168
  # Merge with any provided default params
169
169
  if self.default_request_params:
170
170
  params_dict = router_params.model_dump()
171
- params_dict.update(
172
- self.default_request_params.model_dump(exclude_unset=True)
173
- )
171
+ params_dict.update(self.default_request_params.model_dump(exclude_unset=True))
174
172
  router_params = RequestParams(**params_dict)
175
173
  # Set up router-specific request params with routing instruction
176
174
  router_params.use_history = False
177
175
  # Use the stored verb if available, otherwise default to ROUTING
178
- verb_param = (
179
- self._llm_verb
180
- if hasattr(self, "_llm_verb") and self._llm_verb
181
- else ProgressAction.ROUTING
182
- )
176
+ verb_param = self._llm_verb if hasattr(self, "_llm_verb") and self._llm_verb else ProgressAction.ROUTING
183
177
 
184
178
  self.llm = self.llm_factory(
185
179
  agent=None, # Router doesn't need an agent context
@@ -189,17 +183,13 @@ class LLMRouter(Router):
189
183
  )
190
184
  self.initialized = True
191
185
 
192
- async def route(
193
- self, request: str, top_k: int = 1
194
- ) -> List[LLMRouterResult[str | Agent | Callable]]:
186
+ async def route(self, request: str, top_k: int = 1) -> List[LLMRouterResult[str | Agent | Callable]]:
195
187
  if not self.initialized:
196
188
  await self.initialize()
197
189
 
198
190
  return await self._route_with_llm(request, top_k)
199
191
 
200
- async def route_to_server(
201
- self, request: str, top_k: int = 1
202
- ) -> List[LLMRouterResult[str]]:
192
+ async def route_to_server(self, request: str, top_k: int = 1) -> List[LLMRouterResult[str]]:
203
193
  if not self.initialized:
204
194
  await self.initialize()
205
195
 
@@ -211,9 +201,7 @@ class LLMRouter(Router):
211
201
  include_functions=False,
212
202
  )
213
203
 
214
- async def route_to_agent(
215
- self, request: str, top_k: int = 1
216
- ) -> List[LLMRouterResult[Agent]]:
204
+ async def route_to_agent(self, request: str, top_k: int = 1) -> List[LLMRouterResult[Agent]]:
217
205
  if not self.initialized:
218
206
  await self.initialize()
219
207
 
@@ -225,9 +213,7 @@ class LLMRouter(Router):
225
213
  include_functions=False,
226
214
  )
227
215
 
228
- async def route_to_function(
229
- self, request: str, top_k: int = 1
230
- ) -> List[LLMRouterResult[Callable]]:
216
+ async def route_to_function(self, request: str, top_k: int = 1) -> List[LLMRouterResult[Callable]]:
231
217
  if not self.initialized:
232
218
  await self.initialize()
233
219
 
@@ -260,9 +246,7 @@ class LLMRouter(Router):
260
246
  )
261
247
 
262
248
  # Format the prompt with all the necessary information
263
- prompt = routing_instruction.format(
264
- context=context, request=request, top_k=top_k
265
- )
249
+ prompt = routing_instruction.format(context=context, request=request, top_k=top_k)
266
250
 
267
251
  response = await self.llm.generate_structured(
268
252
  message=prompt,
@@ -1,24 +1,24 @@
1
- from typing import Callable, Dict, Generic, List, Optional, TYPE_CHECKING
2
1
  from collections import defaultdict
2
+ from typing import TYPE_CHECKING, Callable, Dict, Generic, List, Optional
3
3
 
4
- from pydantic import AnyUrl, BaseModel, ConfigDict
5
4
  from mcp.types import (
6
5
  CallToolRequest,
7
- EmbeddedResource,
8
6
  CallToolResult,
7
+ EmbeddedResource,
9
8
  TextContent,
10
9
  TextResourceContents,
11
10
  Tool,
12
11
  )
12
+ from pydantic import AnyUrl, BaseModel, ConfigDict
13
13
 
14
14
  from mcp_agent.agents.agent import Agent
15
15
  from mcp_agent.human_input.types import HumanInputCallback
16
+ from mcp_agent.logging.logger import get_logger
16
17
  from mcp_agent.workflows.llm.augmented_llm import (
17
18
  AugmentedLLM,
18
19
  MessageParamT,
19
20
  MessageT,
20
21
  )
21
- from mcp_agent.logging.logger import get_logger
22
22
 
23
23
  if TYPE_CHECKING:
24
24
  from mcp_agent.context import Context
@@ -90,7 +90,7 @@ class SwarmAgent(Agent):
90
90
  human_input_callback: HumanInputCallback = None,
91
91
  context: Optional["Context"] = None,
92
92
  **kwargs,
93
- ):
93
+ ) -> None:
94
94
  super().__init__(
95
95
  name=name,
96
96
  instruction=instruction,
@@ -105,9 +105,7 @@ class SwarmAgent(Agent):
105
105
  )
106
106
  self.parallel_tool_calls = parallel_tool_calls
107
107
 
108
- async def call_tool(
109
- self, name: str, arguments: dict | None = None
110
- ) -> CallToolResult:
108
+ async def call_tool(self, name: str, arguments: dict | None = None) -> CallToolResult:
111
109
  if not self.initialized:
112
110
  await self.initialize()
113
111
 
@@ -127,14 +125,10 @@ class SwarmAgent(Agent):
127
125
  # TODO: saqadri - this is likely meant for returning context variables
128
126
  return CallToolResult(content=[TextContent(type="text", text=result)])
129
127
  elif isinstance(result, dict):
130
- return CallToolResult(
131
- content=[TextContent(type="text", text=str(result))]
132
- )
128
+ return CallToolResult(content=[TextContent(type="text", text=str(result))])
133
129
  else:
134
130
  logger.warning(f"Unknown result type: {result}, returning as text.")
135
- return CallToolResult(
136
- content=[TextContent(type="text", text=str(result))]
137
- )
131
+ return CallToolResult(content=[TextContent(type="text", text=str(result))])
138
132
 
139
133
  return await super().call_tool(name, arguments)
140
134
 
@@ -162,9 +156,7 @@ AgentFunctionReturnType = str | Agent | dict | AgentFunctionResult
162
156
  AgentFunctionCallable = Callable[[], AgentFunctionReturnType]
163
157
 
164
158
 
165
- async def create_transfer_to_agent_tool(
166
- agent: "Agent", agent_function: Callable[[], None]
167
- ) -> Tool:
159
+ async def create_transfer_to_agent_tool(agent: "Agent", agent_function: Callable[[], None]) -> Tool:
168
160
  return Tool(
169
161
  name="transfer_to_agent",
170
162
  description="Transfer control to the agent",
@@ -190,18 +182,14 @@ class Swarm(AugmentedLLM[MessageParamT, MessageT], Generic[MessageParamT, Messag
190
182
  """
191
183
 
192
184
  # TODO: saqadri - streaming isn't supported yet because the underlying AugmentedLLM classes don't support it
193
- def __init__(self, agent: SwarmAgent, context_variables: Dict[str, str] = None):
185
+ def __init__(self, agent: SwarmAgent, context_variables: Dict[str, str] = None) -> None:
194
186
  """
195
187
  Initialize the LLM planner with an agent, which will be used as the
196
188
  starting point for the workflow.
197
189
  """
198
190
  super().__init__(agent=agent)
199
191
  self.context_variables = defaultdict(str, context_variables or {})
200
- self.instruction = (
201
- agent.instruction(self.context_variables)
202
- if isinstance(agent.instruction, Callable)
203
- else agent.instruction
204
- )
192
+ self.instruction = agent.instruction(self.context_variables) if isinstance(agent.instruction, Callable) else agent.instruction
205
193
  logger.debug(
206
194
  f"Swarm initialized with agent {agent.name}",
207
195
  data={
@@ -219,18 +207,14 @@ class Swarm(AugmentedLLM[MessageParamT, MessageT], Generic[MessageParamT, Messag
219
207
 
220
208
  return None
221
209
 
222
- async def pre_tool_call(
223
- self, tool_call_id: str | None, request: CallToolRequest
224
- ) -> CallToolRequest | bool:
210
+ async def pre_tool_call(self, tool_call_id: str | None, request: CallToolRequest) -> CallToolRequest | bool:
225
211
  if not self.aggregator:
226
212
  # If there are no agents, we can't do anything, so we should bail
227
213
  return False
228
214
 
229
215
  tool = await self.get_tool(request.params.name)
230
216
  if not tool:
231
- logger.warning(
232
- f"Warning: Tool '{request.params.name}' not found in agent '{self.aggregator.name}' tools. Proceeding with original request params."
233
- )
217
+ logger.warning(f"Warning: Tool '{request.params.name}' not found in agent '{self.aggregator.name}' tools. Proceeding with original request params.")
234
218
  return request
235
219
 
236
220
  # If the tool has a "context_variables" parameter, we set it to our context variables state
@@ -243,9 +227,7 @@ class Swarm(AugmentedLLM[MessageParamT, MessageT], Generic[MessageParamT, Messag
243
227
 
244
228
  return request
245
229
 
246
- async def post_tool_call(
247
- self, tool_call_id: str | None, request: CallToolRequest, result: CallToolResult
248
- ) -> CallToolResult:
230
+ async def post_tool_call(self, tool_call_id: str | None, request: CallToolRequest, result: CallToolResult) -> CallToolResult:
249
231
  contents = []
250
232
  for content in result.content:
251
233
  if isinstance(content, AgentResource):
@@ -272,10 +254,8 @@ class Swarm(AugmentedLLM[MessageParamT, MessageT], Generic[MessageParamT, Messag
272
254
  async def set_agent(
273
255
  self,
274
256
  agent: SwarmAgent,
275
- ):
276
- logger.info(
277
- f"Switching from agent '{self.aggregator.name}' -> agent '{agent.name if agent else 'NULL'}'"
278
- )
257
+ ) -> None:
258
+ logger.info(f"Switching from agent '{self.aggregator.name}' -> agent '{agent.name if agent else 'NULL'}'")
279
259
  if self.aggregator:
280
260
  # Close the current agent
281
261
  await self.aggregator.shutdown()
@@ -288,11 +268,7 @@ class Swarm(AugmentedLLM[MessageParamT, MessageT], Generic[MessageParamT, Messag
288
268
  return
289
269
 
290
270
  await self.aggregator.initialize()
291
- self.instruction = (
292
- agent.instruction(self.context_variables)
293
- if callable(agent.instruction)
294
- else agent.instruction
295
- )
271
+ self.instruction = agent.instruction(self.context_variables) if callable(agent.instruction) else agent.instruction
296
272
 
297
273
  def should_continue(self) -> bool:
298
274
  """
@@ -309,12 +285,8 @@ class DoneAgent(SwarmAgent):
309
285
  A special agent that represents the end of a Swarm workflow.
310
286
  """
311
287
 
312
- def __init__(self):
288
+ def __init__(self) -> None:
313
289
  super().__init__(name="__done__", instruction="Swarm Workflow is complete.")
314
290
 
315
- async def call_tool(
316
- self, _name: str, _arguments: dict | None = None
317
- ) -> CallToolResult:
318
- return CallToolResult(
319
- content=[TextContent(type="text", text="Workflow is complete.")]
320
- )
291
+ async def call_tool(self, _name: str, _arguments: dict | None = None) -> CallToolResult:
292
+ return CallToolResult(content=[TextContent(type="text", text="Workflow is complete.")])
@@ -1,7 +1,7 @@
1
- from mcp_agent.workflows.swarm.swarm import Swarm
1
+ from mcp_agent.logging.logger import get_logger
2
2
  from mcp_agent.workflows.llm.augmented_llm import RequestParams
3
3
  from mcp_agent.workflows.llm.augmented_llm_anthropic import AnthropicAugmentedLLM
4
- from mcp_agent.logging.logger import get_logger
4
+ from mcp_agent.workflows.swarm.swarm import Swarm
5
5
 
6
6
  logger = get_logger(__name__)
7
7
 
@@ -1,7 +1,7 @@
1
- from mcp_agent.workflows.swarm.swarm import Swarm
1
+ from mcp_agent.logging.logger import get_logger
2
2
  from mcp_agent.workflows.llm.augmented_llm import RequestParams
3
3
  from mcp_agent.workflows.llm.augmented_llm_openai import OpenAIAugmentedLLM
4
- from mcp_agent.logging.logger import get_logger
4
+ from mcp_agent.workflows.swarm.swarm import Swarm
5
5
 
6
6
  logger = get_logger(__name__)
7
7
 
@@ -1,160 +0,0 @@
1
- mcp_agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- mcp_agent/app.py,sha256=0_C1xmNZlk9qZoewnNI_mC7sSfO9oJgkOyiKkQ62MHU,10606
3
- mcp_agent/config.py,sha256=cEiY_J5MqKj23KkHtzP1h04yalaGgO2OiXErduiVf2M,10890
4
- mcp_agent/console.py,sha256=Gjf2QLFumwG1Lav__c07X_kZxxEUSkzV-1_-YbAwcwo,813
5
- mcp_agent/context.py,sha256=m1S5M9a2Kdxy5rEGG6Uwwmi19bDEpU6u-e5ZgPmVXfY,8031
6
- mcp_agent/context_dependent.py,sha256=TGqRLzYCOnsWGoaD1HtrliYtWo8MeaWCQk6ePUmyYCw,1446
7
- mcp_agent/event_progress.py,sha256=25iz0yyg-O4glMmtijcYpDdUmtUIKsCmR_8A52GgeC4,2716
8
- mcp_agent/mcp_server_registry.py,sha256=eQbl0usicnsNE03haxc6C_FHl_0goPAZdcb082cDIQk,9992
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=qI3njT8SPTLKzCwBfdlWNMVoSEwLGNjuq6owPfhvIas,17444
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=DE6EZzspfzHwPK59x8vL4AIDHRQkVQ1Ja70XRGU1IQs,2753
15
- mcp_agent/cli/terminal.py,sha256=5fqrKlJvIpKEuvpvZ653OueQSYFFktBEbosjr2ucMUc,1026
16
- mcp_agent/cli/commands/bootstrap.py,sha256=Rmwbuwl52eHfnya7fnwKk2J7nCsHpSh6irka4mBDEnU,10779
17
- mcp_agent/cli/commands/config.py,sha256=32YTS5jmsYAs9QzAhjkG70_daAHqOemf4XbZBBSMz6g,204
18
- mcp_agent/cli/commands/setup.py,sha256=_SCpd6_PrixqbSaE72JQ7erIRkZnJGmh_3TvvwSzEiE,6392
19
- mcp_agent/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
- mcp_agent/core/agent_app.py,sha256=coAbhzGT34SV_S0AsLbHuOkxyovOZFlpk_HUphRNU78,30807
21
- mcp_agent/core/agent_types.py,sha256=yKiMbv9QO2dduq4zXmoMZlOZpXJZhM4oNwIq1-134FE,318
22
- mcp_agent/core/agent_utils.py,sha256=QMvwmxZyCqYhBzSyL9xARsxTuwdmlyjQvrPpsH36HnQ,1888
23
- mcp_agent/core/decorators.py,sha256=dkAah1eIuYsEfQISDryG0u2GrzNnsO_jyN7lhpQfNlM,16191
24
- mcp_agent/core/enhanced_prompt.py,sha256=bykUEnnc1CEWODJwXvl4VGfCtrJPtVXU0D4mUglJK7A,18827
25
- mcp_agent/core/error_handling.py,sha256=D3HMW5odrbJvaKqcpCGj6eDXrbFcuqYaCZz7fyYiTu4,623
26
- mcp_agent/core/exceptions.py,sha256=a2-JGRwFFRoQEPuAq0JC5PhAJ5TO3xVJfdS4-VN29cw,2225
27
- mcp_agent/core/factory.py,sha256=MhlYS0G0IyFy_j46HVJdjEznJzfCFjx_NRhUPcbQIJI,19081
28
- mcp_agent/core/fastagent.py,sha256=jJmO0DryFGwSkse_3q5Ll-5XONDvj7k_Oeb-ETBKFkA,19620
29
- mcp_agent/core/mcp_content.py,sha256=rXT2C5gP9qgC-TI5F362ZLJi_erzcEOnlP9D2ZKK0i0,6860
30
- mcp_agent/core/prompt.py,sha256=R-X3kptu3ehV_SQeiGnP6F9HMN-92I8e73gnkQ1tDVs,4317
31
- mcp_agent/core/proxies.py,sha256=qsIqyJgiIh-b9ehHiZrM39YutQFJPHaHO14GOMFE1KI,10289
32
- mcp_agent/core/types.py,sha256=Zhi9iW7uiOfdpSt9NC0FCtGRFtJPg4mpZPK2aYi7a7M,817
33
- mcp_agent/core/validation.py,sha256=x0fsx5eLTawASFm9MDtEukwGOj_RTdY1OW064UihMR8,8309
34
- mcp_agent/eval/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- mcp_agent/executor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
- mcp_agent/executor/decorator_registry.py,sha256=eONv5WvIcjKd43jVqeP7iB2EkAK-ErhdmXt6ogN0K_w,3848
37
- mcp_agent/executor/executor.py,sha256=aq3AguLP4pkPz7JPqszhd0REIIsiKqpi4AfZmjPKZdM,9613
38
- mcp_agent/executor/task_registry.py,sha256=av8e7cIGOfkvWwVPSwGbaYHQPTRdBQh9xw3GkjJxg9o,1240
39
- mcp_agent/executor/temporal.py,sha256=U-wyltgWlVmzJoyivT6rR0Z1U3S6TbMXpeCxyuXakoM,15312
40
- mcp_agent/executor/workflow.py,sha256=lA6r7PNEvxCVFHp4XkEJkaR0QCTf-J6iw9JwNx-tzNY,6727
41
- mcp_agent/executor/workflow_signal.py,sha256=3PWwSgXhz3PhkA8SRX3u0BDVoSlQqRGqC9d1qLC25vE,11210
42
- mcp_agent/human_input/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
43
- mcp_agent/human_input/handler.py,sha256=BTZroDkHRvknSfYcTs60NerE4lJY6ROpoIMjAmfSqYY,3197
44
- mcp_agent/human_input/types.py,sha256=ZvuDHvI0-wO2tFoS0bzrv8U5B83zYdxAG7g9G9jCxug,1489
45
- mcp_agent/logging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
- mcp_agent/logging/events.py,sha256=qfYJnrqgXdujV-nl-iOwBEBh6HMraowBI4zeAWPPU4A,3461
47
- mcp_agent/logging/json_serializer.py,sha256=pa_mf0i0YKpLsGq3THuITFUdAbmae-dv1OPOLbcS0to,5782
48
- mcp_agent/logging/listeners.py,sha256=1DOc0CvAE6pFxOljfZqs2TGgF50sZZGMDt4Gm_PAjWo,6551
49
- mcp_agent/logging/logger.py,sha256=Tr009BnfGUKuZcdinnSin0Z_zIsfDNGdcnamw2rDHRQ,10604
50
- mcp_agent/logging/rich_progress.py,sha256=IEVFdFGA0nwg6pSt9Ydni5LCNYZZPKYMe-6DCi9pO4Y,4851
51
- mcp_agent/logging/tracing.py,sha256=jQivxKYl870oXakmyUk7TXuTQSvsIzpHwZlSQfy4b0c,5203
52
- mcp_agent/logging/transport.py,sha256=MFgiCQ-YFP0tSMhDMpZCj585vflWcMydM4oyCFduVf0,17203
53
- mcp_agent/mcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
- mcp_agent/mcp/gen_client.py,sha256=D92Yo088CAeuWG6M82Vlkq0H8igUTw9SwwOQinZZCkg,3052
55
- mcp_agent/mcp/interfaces.py,sha256=hUA9R7RA1tF1td9RCfzWHBUVCLXF6FC1a4I1EZ5Fnh4,4629
56
- mcp_agent/mcp/mcp_activity.py,sha256=CajXCFWZ2cKEX9s4-HfNVAj471ePTVs4NOkvmIh65tE,592
57
- mcp_agent/mcp/mcp_agent_client_session.py,sha256=3xZbhr48YV5SkBTQGMdNrT_KIGWOBSFPqCZLCSOK2HA,4156
58
- mcp_agent/mcp/mcp_agent_server.py,sha256=xP09HZTeguJi4Fq0p3fjLBP55uSYe5AdqM90xCgn9Ho,1639
59
- mcp_agent/mcp/mcp_aggregator.py,sha256=1DYZpmq1IJZo7cYKfahH6LeyVKuNkosGhSq6k59lrlM,37941
60
- mcp_agent/mcp/mcp_connection_manager.py,sha256=PdLia-rxbhUdAdEnW7TQbkf1qeI9RR3xhQw1j11Bi6o,13612
61
- mcp_agent/mcp/mime_utils.py,sha256=difepNR_gpb4MpMLkBRAoyhDk-AjXUHTiqKvT_VwS1o,1805
62
- mcp_agent/mcp/prompt_message_multipart.py,sha256=U7IN0JStmy26akTXcqE4x90oWzm8xs1qa0VeKIyPKmE,1962
63
- mcp_agent/mcp/prompt_serialization.py,sha256=StcXV7V4fqqtCmOCXGCyYXx5vpwNhL2xr3RG_awwdqI,16056
64
- mcp_agent/mcp/resource_utils.py,sha256=G9IBWyasxKKcbq3T_fSpM6mHE8PjBargEdfQnBPrkZY,6650
65
- mcp_agent/mcp/sampling.py,sha256=iHjjI5ViCe2CYm_7EtJiHr-WPYug6MQyAuBtru0AnkI,4601
66
- mcp_agent/mcp/stdio.py,sha256=fZr9yVqPvmPC8pkaf95rZtw0uD8BGND0UI_cUYyuSsE,4478
67
- mcp_agent/mcp/prompts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
- mcp_agent/mcp/prompts/__main__.py,sha256=gr1Tdz9fcK0EXjEuZg_BOnKUmvhYq5AH2lFZicVyNb0,237
69
- mcp_agent/mcp/prompts/prompt_server.py,sha256=6K4FeKNW_JApWUNB055gl8UnWyC1mvtl_kPEvgUnPjk,17348
70
- mcp_agent/mcp/prompts/prompt_template.py,sha256=NDnSVA0W1wayZHCVx27lfuVPoxlAz-FfBwiCEQG9Ixk,16324
71
- mcp_agent/mcp_server/__init__.py,sha256=SEWyU7aSFzdSk6iTYnrQu-llji5_P5dp3TaztCt_rzo,154
72
- mcp_agent/mcp_server/agent_server.py,sha256=SUBggPyrzWtBRUC5xIMpCxu6ei-6Vah3q9Si12BQ-zY,4444
73
- mcp_agent/resources/examples/data-analysis/analysis-campaign.py,sha256=EG-HhaDHltZ4hHAqhgfX_pHM2wem48aYhSIKJxyWHKc,7269
74
- mcp_agent/resources/examples/data-analysis/analysis.py,sha256=5zLoioZQNKUfXt1EXLrGX3TU06-0N06-L9Gtp9BIr6k,2611
75
- mcp_agent/resources/examples/data-analysis/fastagent.config.yaml,sha256=ini94PHyJCfgpjcjHKMMbGuHs6LIj46F1NwY0ll5HVk,1609
76
- mcp_agent/resources/examples/data-analysis/mount-point/WA_Fn-UseC_-HR-Employee-Attrition.csv,sha256=pcMeOL1_r8m8MziE6xgbBrQbjl5Ijo98yycZn7O-dlk,227977
77
- mcp_agent/resources/examples/internal/agent.py,sha256=orShmYKkrjMc7qa3ZtfzoO80uOClZaPaw2Wvc4_FIH8,406
78
- mcp_agent/resources/examples/internal/fastagent.config.yaml,sha256=U2s0Asc06wC04FstKnBMeB3J5gIa3xa-Rao-1-74XTk,1935
79
- mcp_agent/resources/examples/internal/job.py,sha256=WEKIAANMEAuKr13__rYf3PqJeTAsNB_kqYqbqVYQlUM,4093
80
- mcp_agent/resources/examples/internal/prompt_category.py,sha256=b3tjkfrVIW1EPoDjr4mG87wlZ7D0Uju9eg6asXAYYpI,551
81
- mcp_agent/resources/examples/internal/prompt_sizing.py,sha256=UtQ_jvwS4yMh80PHhUQXJ9WXk-fqNYlqUMNTNkZosKM,2003
82
- mcp_agent/resources/examples/internal/sizer.py,sha256=RBq1qhYVKF2_qtRdvpKpRI3XIFpZ4eyBzhVjnlip-P8,356
83
- mcp_agent/resources/examples/internal/social.py,sha256=Cot2lg3PLhLm13gPdVFvFEN28-mm6x3-jHu2YsV4N3s,1707
84
- mcp_agent/resources/examples/mcp_researcher/researcher-eval.py,sha256=kNPjIU-JwE0oIBQKwhv6lZsUF_SPtYVkiEEbY1ZVZxk,1807
85
- mcp_agent/resources/examples/prompting/__init__.py,sha256=GG1zksC76L-wmerkjplWHwamelxl5vlY0YkRzgAq_v0,49
86
- mcp_agent/resources/examples/prompting/agent.py,sha256=gG2jQnRibO8OmljoFQAs9xxhCyHLCkVxJxQkfF7ykfY,607
87
- mcp_agent/resources/examples/prompting/fastagent.config.yaml,sha256=UR6LtCpeSIzkHsCrHJW1z-wE7AgmgKozS_IYcfcSAkc,1270
88
- mcp_agent/resources/examples/prompting/image_server.py,sha256=-6YWtzS-K5ofHtdoOk4uC3ZBFUyVELT9Fdck1RptcWg,1711
89
- mcp_agent/resources/examples/researcher/fastagent.config.yaml,sha256=bNOnID9OgdSBTUEhdimKB8LjaZLa1B6igmp-nxx8nr4,2271
90
- mcp_agent/resources/examples/researcher/researcher-eval.py,sha256=0qDjxun7CZ1cZ8JTa6G1v1XcpwGSSL6-qAZ35yI1-K4,1818
91
- mcp_agent/resources/examples/researcher/researcher-imp.py,sha256=Xfw2YAyjXd47pQz-uljgG5ii5x77fVuCP2XCivRDI48,7885
92
- mcp_agent/resources/examples/researcher/researcher.py,sha256=iE6hlwoJVCgCvJfSPYrBvoXKFqkvXah8NHSHX5EgTxA,1431
93
- mcp_agent/resources/examples/workflows/agent_build.py,sha256=ioG4X8IbR8wwja8Zdncsk8YAu0VD2Xt1Vhr7saNJCZQ,2855
94
- mcp_agent/resources/examples/workflows/chaining.py,sha256=1G_0XBcFkSJCOXb6N_iXWlSc_oGAlhENR0k_CN1vJKI,1208
95
- mcp_agent/resources/examples/workflows/evaluator.py,sha256=3XmW1mjImlaWb0c5FWHYS9yP8nVGTbEdJySAoWXwrDg,3109
96
- mcp_agent/resources/examples/workflows/fastagent.config.yaml,sha256=k2AiapOcK42uqG2nWDVvnSLqN4okQIQZK0FTbZufBpY,809
97
- mcp_agent/resources/examples/workflows/human_input.py,sha256=c8cBdLEPbaMXddFwsfN3Z7RFs5PZXsdrjANfvq1VTPM,605
98
- mcp_agent/resources/examples/workflows/orchestrator.py,sha256=2nkRkpMgi4V-M6fwcpipQUImf0nZoGf4zfVllfojsz8,2596
99
- mcp_agent/resources/examples/workflows/parallel.py,sha256=pLbQrtXfbdYqMVddxtg5dZnBnm5Wo2mXlIa1Vf2F1FQ,3096
100
- mcp_agent/resources/examples/workflows/router.py,sha256=J1yTAimFY53jcyd21cq1XAZvtOxnNsmtSjSp13M5EgE,1668
101
- mcp_agent/resources/examples/workflows/sse.py,sha256=tdmmh7p87YNfcF_fCq3evAmc1Nek0oY0YOqLRKBLqKg,570
102
- mcp_agent/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
103
- mcp_agent/telemetry/usage_tracking.py,sha256=ePujKMSjPxB7k6X34DGaVlnsV1728mcWZq38OqahiCU,501
104
- mcp_agent/ui/console_display.py,sha256=6LiZLPrxVvDjslNR6cwxdrx1XnW5NT5qFYkEHO0mFKM,9746
105
- mcp_agent/workflows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
106
- mcp_agent/workflows/embedding/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
- mcp_agent/workflows/embedding/embedding_base.py,sha256=-c20ggQ8s7XhMxRX-WEhOgHE7vP_Ca6wtdoXlse-AAA,1681
108
- mcp_agent/workflows/embedding/embedding_cohere.py,sha256=OKTJvKD_uEafd4c2uhR5tBjprea1nyvlJOO-3FDqOnk,1540
109
- mcp_agent/workflows/embedding/embedding_openai.py,sha256=dntjJ5P-FSMGYuyPZC8MuCU_ehwjXw9wDfzZZuSQN1E,1480
110
- mcp_agent/workflows/evaluator_optimizer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
111
- mcp_agent/workflows/evaluator_optimizer/evaluator_optimizer.py,sha256=cJpts0w6jffJCHOjBdAa18E8cw7qteoAbrGvm9Rrh6U,18144
112
- mcp_agent/workflows/intent_classifier/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
113
- mcp_agent/workflows/intent_classifier/intent_classifier_base.py,sha256=zTbOmq6EY_abOlme4zl28HM4RWNNS6bbHl3tF7SshJ0,4004
114
- mcp_agent/workflows/intent_classifier/intent_classifier_embedding.py,sha256=_bWZGukc_q9LdA_Q18UoAMSzhN8tt4K_bRHNUhy7Crw,3997
115
- mcp_agent/workflows/intent_classifier/intent_classifier_embedding_cohere.py,sha256=ufG34dHmgVlHdvUtC3yUXN9NYow9G9I15GzuTSI8A2s,1540
116
- mcp_agent/workflows/intent_classifier/intent_classifier_embedding_openai.py,sha256=br_ZmeCAtOLgyFJnyVVcRe0pyJGO0pxBsMsZrhRnkHw,1540
117
- mcp_agent/workflows/intent_classifier/intent_classifier_llm.py,sha256=WSLUv2Casb2KucDjW6fJ1bLFzT6tRBUamUPArtv2WCE,5177
118
- mcp_agent/workflows/intent_classifier/intent_classifier_llm_anthropic.py,sha256=Hp4454IniWFxV4ml50Ml8ip9rS1La5FBn5pd7vm1FHA,1964
119
- mcp_agent/workflows/intent_classifier/intent_classifier_llm_openai.py,sha256=zj76WlTYnSCYjBQ_IDi5vFBQGmNwYaoUq1rT730sY98,1940
120
- mcp_agent/workflows/llm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
121
- mcp_agent/workflows/llm/anthropic_utils.py,sha256=OFmsVmDQ22880duDWQrEeQEB47xtvujSYJ-fNw1lhi0,3712
122
- mcp_agent/workflows/llm/augmented_llm.py,sha256=9cWy-4yNG13w4oQgXmisgWTcm6aoJIRCYTX85Bkf-MI,30554
123
- mcp_agent/workflows/llm/augmented_llm_anthropic.py,sha256=opV4PTai2eoYUzJS0gCPGEy4pe-lT2Eo1Sao6Y_EIiY,20140
124
- mcp_agent/workflows/llm/augmented_llm_openai.py,sha256=OUSmvY2m6HU1JOK5nEzKDHpHReT0ffjoHDFHk6aYhoc,21002
125
- mcp_agent/workflows/llm/augmented_llm_passthrough.py,sha256=aeQ2WWNIzdzgYWHijE-RWgzFzSUcRJNRv5zq0ug3B2U,7891
126
- mcp_agent/workflows/llm/augmented_llm_playback.py,sha256=5ypv3owJU6pscktqg9tkLQVKNgaA50e8OWmC1hAhrtE,4328
127
- mcp_agent/workflows/llm/llm_selector.py,sha256=G7pIybuBDwtmyxUDov_QrNYH2FoI0qFRu2JfoxWUF5Y,11045
128
- mcp_agent/workflows/llm/model_factory.py,sha256=UHePE5Ow03kpE44kjYtFGEhVFSYp0AY2yGri58yCBKU,7688
129
- mcp_agent/workflows/llm/openai_utils.py,sha256=GGkJF-nazA4HWrlmMKKLf0qSfl2gbSqo-rbMDoJs5mE,1895
130
- mcp_agent/workflows/llm/prompt_utils.py,sha256=EY3eddqnmc_YDUQJFysPnpTH6hr4r2HneeEmX76P8TQ,4948
131
- mcp_agent/workflows/llm/sampling_format_converter.py,sha256=-vN927eMyo0vYg9GkuWAUzYqQR_kpz4BLmukgNfm2K8,1457
132
- mcp_agent/workflows/llm/providers/__init__.py,sha256=qirdqAKIbw3BY1NBdGytH9tvpjOu0QNOqKAG2deD_U4,285
133
- mcp_agent/workflows/llm/providers/multipart_converter_anthropic.py,sha256=TO0zHEnqnOEVfCjM-qp-DGrJoSUPRWChjUPTRo2Gt9U,13463
134
- mcp_agent/workflows/llm/providers/multipart_converter_openai.py,sha256=IaHgR-bo5PJBd960kDJYnvinLmg0dtajg6ZXFYeLke0,17691
135
- mcp_agent/workflows/llm/providers/openai_multipart.py,sha256=RKkwssszD6jJpZ-Hj875uu5rbePrwzN7v43Ec69Ziwg,7566
136
- mcp_agent/workflows/llm/providers/sampling_converter_anthropic.py,sha256=vaM0QWzYP6VFAUwLLxRGpyB0erAQAJAhQed0eFT2jPQ,8916
137
- mcp_agent/workflows/llm/providers/sampling_converter_openai.py,sha256=yUTSF9fmcy-aNVd-9yGT2kGV7F0VAkYCQK5S8eImeIs,8436
138
- mcp_agent/workflows/orchestrator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
139
- mcp_agent/workflows/orchestrator/orchestrator.py,sha256=s8-_4CG4oRnvYAwUqqyevGLpy21IYtcNtsd_SbRZ8Fk,22125
140
- mcp_agent/workflows/orchestrator/orchestrator_models.py,sha256=1ldku1fYA_hu2F6K4l2C96mAdds05VibtSzSQrGm3yw,7321
141
- mcp_agent/workflows/orchestrator/orchestrator_prompts.py,sha256=EXKEI174sshkZyPPEnWbwwNafzSPuA39MXL7iqG9cWc,9106
142
- mcp_agent/workflows/parallel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
143
- mcp_agent/workflows/parallel/fan_in.py,sha256=EivpUL5-qftctws-tlfwmYS1QeSwr07POIbBUbwvwOk,13184
144
- mcp_agent/workflows/parallel/fan_out.py,sha256=J-yezgjzAWxfueW_Qcgwoet4PFDRIh0h4m48lIbFA4c,7023
145
- mcp_agent/workflows/parallel/parallel_llm.py,sha256=fk88DhBRAI41Ph0spe_yBtrMTSj0g47yoA-ozuOxZhE,5807
146
- mcp_agent/workflows/router/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
147
- mcp_agent/workflows/router/router_base.py,sha256=S-UxofpdW9e7ZQXaZcSE8zBY--6W0m5qc0lw6BZi0ug,14336
148
- mcp_agent/workflows/router/router_embedding.py,sha256=wEU49li9OqTX-Xucm0HDUFLZjlND1WuewOcQVAo0s2E,7944
149
- mcp_agent/workflows/router/router_embedding_cohere.py,sha256=aKZVzzQfBuz0by9k0zWLAA0Db_unDIMYL4ynVzzx8C4,1975
150
- mcp_agent/workflows/router/router_embedding_openai.py,sha256=KqW2IFLdQoAJ2lIz1X18WQJFjXF-YSFSTtsqVnp1JeI,1975
151
- mcp_agent/workflows/router/router_llm.py,sha256=msXmp_PPPX-2fZF8F_bYjGId2CmmaBe4DSHKNNggcnU,10942
152
- mcp_agent/workflows/swarm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
153
- mcp_agent/workflows/swarm/swarm.py,sha256=-lAIeSWDqbGHGRPTvjiP9nIKWvxxy9DAojl9yQzO1Pw,11050
154
- mcp_agent/workflows/swarm/swarm_anthropic.py,sha256=pW8zFx5baUWGd5Vw3nIDF2oVOOGNorij4qvGJKdYPcs,1624
155
- mcp_agent/workflows/swarm/swarm_openai.py,sha256=wfteywvAGkT5bLmIxX_StHJq8144whYmCRnJASAjOes,1596
156
- fast_agent_mcp-0.1.11.dist-info/METADATA,sha256=ff0dlOdPoM72tfefKvN6bdVwszZIKE-5wIkSAI3qJTU,29678
157
- fast_agent_mcp-0.1.11.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
158
- fast_agent_mcp-0.1.11.dist-info/entry_points.txt,sha256=qPM7vwtN1_KmP3dXehxgiCxUBHtqP7yfenZigztvY-w,226
159
- fast_agent_mcp-0.1.11.dist-info/licenses/LICENSE,sha256=cN3FxDURL9XuzE5mhK9L2paZo82LTfjwCYVT7e3j0e4,10939
160
- fast_agent_mcp-0.1.11.dist-info/RECORD,,