About Any Agent
Any Agent is an MCP server published by mozilla-ai in the Developer Tools category: a single interface to use and evaluate different agent frameworks.
The repository has 1.2K stars and 104 forks, with the last commit 17 days ago. Recent commit activity is the strongest signal that reported issues will get attention.
Install
git clone https://github.com/mozilla-ai/any-agentThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Any Agent
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 10 hours ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- ✓Tests presentA test suite exists in the repository.
- !Dependencies pinnedNo lockfile. Installs can pull different code over time.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
Releases
README
any-agent
A single interface to use and evaluate different agent frameworks.
[!IMPORTANT]
any-agentis in soft deprecation. It started as a research project to compare agent frameworks and refine a minimal common surface. That distillation has graduated to its own package:mozilla-ai-tinyagent(PyPI:mozilla-ai-tinyagent). For new projects we recommend usingtinyagentdirectly.
any-agentcontinues to be published and we'll take security/bug-fix PRs, but no new features are planned. Reach forany-agentwhen you specifically need to run or evaluate agents across multiple frameworks (Agno, Google ADK, LangChain, LlamaIndex, OpenAI Agents SDK, smolagents) under one API. If you only need the core agent loop,mozilla-ai-tinyagentis the leaner path.
Documentation
Supported Frameworks
Planned for Support (Contributions Welcome!)
Open Github tickets for new frameworks
Requirements
- Python 3.11 or newer
Quickstart
Refer to pyproject.toml for a list of the options available. Update your pip install command to include the frameworks that you plan on using:
pip install 'any-agent'
To define any agent system you will always use the same imports:
from any_agent import AgentConfig, AnyAgent
For this example we use a model hosted by Mistral, but you may need to set the relevant API key for whichever provider being used. See our Model Configuration docs for more information about configuring models.
export MISTRAL_API_KEY="YOUR_KEY_HERE" # or OPENAI_API_KEY, etc
from any_agent.tools import search_web, visit_webpage
agent = AnyAgent.create(
"tinyagent", # See all options in https://docs.mozilla.ai/any-agent/
AgentConfig(
model_id="mistral:mistral-small-latest",
instructions="Use the tools to find an answer",
tools=[search_web, visit_webpage]
)
)
agent_trace = agent.run("Which Agent Framework is the best??")
print(agent_trace)
[!TIP] Multi-agent can be implemented using Agents-As-Tools.
Cookbooks
Get started quickly with these practical examples:
- Creating your first agent - Build a simple agent with web search capabilities.
- Creating your first agent evaluation - Evaluate that simple web search agent using 3 different methods.
- Using Callbacks - Implement and use custom callbacks.
- Creating an agent with MCP - Integrate Model Context Protocol tools.
- Serve an Agent with A2A - Deploy agents with Agent-to-Agent communication.
- Building Multi-Agent Systems with A2A - Using an agent as a tool for another agent to interact with.
Contributions
The AI agent space is moving fast! If you see a new agentic framework that AnyAgent doesn't yet support, we would love for you to create a Github issue. We also welcome your support in development of additional features or functionality.
Running in Jupyter Notebook
If running in Jupyter Notebook you will need to add the following two lines before running AnyAgent, otherwise you may see the error RuntimeError: This event loop is already running. This is a known limitation of Jupyter Notebooks, see Github Issue
import nest_asyncio
nest_asyncio.apply()
README fetched from the repository 10 hours ago. The original is authoritative.