fast-agent-mcp 0.0.7__py3-none-any.whl → 0.0.9__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 fast-agent-mcp might be problematic. Click here for more details.

Files changed (33) hide show
  1. {fast_agent_mcp-0.0.7.dist-info → fast_agent_mcp-0.0.9.dist-info}/METADATA +24 -57
  2. {fast_agent_mcp-0.0.7.dist-info → fast_agent_mcp-0.0.9.dist-info}/RECORD +31 -24
  3. mcp_agent/agents/agent.py +8 -4
  4. mcp_agent/app.py +5 -1
  5. mcp_agent/cli/commands/bootstrap.py +183 -121
  6. mcp_agent/cli/commands/setup.py +20 -16
  7. mcp_agent/core/__init__.py +0 -0
  8. mcp_agent/core/exceptions.py +47 -0
  9. mcp_agent/core/fastagent.py +250 -124
  10. mcp_agent/core/server_validation.py +44 -0
  11. mcp_agent/event_progress.py +4 -1
  12. mcp_agent/logging/rich_progress.py +11 -0
  13. mcp_agent/mcp/mcp_connection_manager.py +11 -2
  14. mcp_agent/resources/examples/data-analysis/analysis.py +35 -0
  15. mcp_agent/resources/examples/data-analysis/fastagent.config.yaml +22 -0
  16. mcp_agent/resources/examples/data-analysis/mount-point/WA_Fn-UseC_-HR-Employee-Attrition.csv +1471 -0
  17. mcp_agent/resources/examples/workflows/chaining.py +31 -0
  18. mcp_agent/resources/examples/{decorator/optimizer.py → workflows/evaluator.py} +7 -10
  19. mcp_agent/resources/examples/workflows/fastagent.config.yaml +9 -0
  20. mcp_agent/resources/examples/workflows/human_input.py +25 -0
  21. mcp_agent/resources/examples/{decorator → workflows}/orchestrator.py +20 -17
  22. mcp_agent/resources/examples/{decorator → workflows}/parallel.py +14 -18
  23. mcp_agent/resources/examples/{decorator → workflows}/router.py +9 -10
  24. mcp_agent/workflows/llm/augmented_llm_anthropic.py +54 -14
  25. mcp_agent/workflows/llm/augmented_llm_openai.py +38 -9
  26. mcp_agent/workflows/orchestrator/orchestrator.py +53 -108
  27. mcp_agent/resources/examples/decorator/main.py +0 -26
  28. mcp_agent/resources/examples/decorator/tiny.py +0 -22
  29. {fast_agent_mcp-0.0.7.dist-info → fast_agent_mcp-0.0.9.dist-info}/WHEEL +0 -0
  30. {fast_agent_mcp-0.0.7.dist-info → fast_agent_mcp-0.0.9.dist-info}/entry_points.txt +0 -0
  31. {fast_agent_mcp-0.0.7.dist-info → fast_agent_mcp-0.0.9.dist-info}/licenses/LICENSE +0 -0
  32. /mcp_agent/resources/examples/mcp_researcher/{main-evalopt.py → researcher-eval.py} +0 -0
  33. /mcp_agent/resources/examples/mcp_researcher/{main.py → researcher.py} +0 -0
@@ -0,0 +1,35 @@
1
+ import asyncio
2
+
3
+ from mcp_agent.core.fastagent import FastAgent
4
+
5
+ # Create the application
6
+ fast = FastAgent("Data Analysis (Roots)")
7
+
8
+
9
+ @fast.agent(
10
+ name="data_analysis",
11
+ instruction="""
12
+ You have access to a Python 3.12 interpreter and you can use this to analyse and process data.
13
+ Common analysis packages such as Pandas, Seaborn and Matplotlib are already installed.
14
+ You can add further packages if needed.
15
+ Data files are accessible from the /mnt/data/ directory (this is the current working directory).
16
+ Visualisations should be saved as .png files in the current working directory.
17
+ """,
18
+ servers=["interpreter"],
19
+ )
20
+ async def main():
21
+ # Use the app's context manager
22
+ async with fast.run() as agent:
23
+ await agent(
24
+ "There is a csv file in the current directory. "
25
+ "Analyse the file, produce a detailed description of the data, and any patterns it contains.",
26
+ )
27
+ await agent(
28
+ "Consider the data, and how to usefully group it for presentation to a Human. Find insights, using the Python Interpreter as needed.\n"
29
+ "Use MatPlotLib to produce insightful visualisations. Save them as '.png' files in the current directory. Be sure to run the code and save the files.\n"
30
+ "Produce a summary with major insights to the data",
31
+ )
32
+
33
+
34
+ if __name__ == "__main__":
35
+ asyncio.run(main())
@@ -0,0 +1,22 @@
1
+ default_model: sonnet
2
+
3
+ # on windows, adjust the mount point to be the full path e.g. x:/temp/data-analysis/mount-point:/mnt/data/
4
+
5
+ mcp:
6
+ servers:
7
+ interpreter:
8
+ command: "docker"
9
+ args:
10
+ [
11
+ "run",
12
+ "-i",
13
+ "--rm",
14
+ "--pull=always",
15
+ "-v",
16
+ "./mount-point:/mnt/data/",
17
+ "ghcr.io/evalstate/mcp-py-repl:latest",
18
+ ]
19
+ roots:
20
+ - uri: "file://./mount-point/"
21
+ name: "test_data"
22
+ server_uri_alias: "file:///mnt/data/"