The Meta Agents Research Environments MCP Server enables you to expose any Meta Agents Research Environments app or complete scenario as a Model Context Protocol (MCP) server, making Meta Agents Research Environments functionality accessible to external agentic tools like Cursor, Claude Desktop, and other MCP-compatible clients.
While the MCPApp - Model Context Protocol allows Meta Agents Research Environments to connect to external MCP servers, the Meta Agents Research Environments MCP Server does the opposite - it exposes Meta Agents Research Environments apps and scenarios as MCP servers that can be accessed by any MCP client.
This powerful capability enables you to:
Test scenarios with different agents: Use Claude Desktop, Cursor, or other agentic tools to interact with Meta Agents Research Environments scenarios
Integrate Meta Agents Research Environments into development workflows: Access Meta Agents Research Environments apps directly from your IDE or development tools
Create hybrid agent systems: Combine Meta Agents Research Environments simulated environments with external AI agents
Validate scenario quality: Test scenarios with multiple different agent implementations
Add the Meta Agents Research Environments MCP Server to your Claude Desktop configuration:
{"mcpServers":{"are-calendar":{"command":"python","args":["/path/to/are_simulation_mcp_server.py","--apps","are.simulation.apps.calendar.CalendarApp","--name","Meta Agents Research Environments Calendar"]},"are-scenario":{"command":"python","args":["/path/to/are_simulation_mcp_server.py","--scenario","scenario_tutorial"]}}}
# Terminal 1: Start Meta Agents Research Environments MCP Server with your scenario
uvrunare_simulation_mcp_server.py--scenariomy_test_scenario--transportsse
# Terminal 2: Test with Claude Desktop (configured to connect to the server)# Use Claude Desktop to interact with the scenario# Terminal 3: Test with custom agent
pythonmy_custom_agent.py--mcp-serverhttp://localhost:8000/sse
Meta Agents Research Environments MCP Server - Expose multiple Meta Agents Research Environments apps as an MCP server.
This script creates an MCP server that wraps multiple Meta Agents Research Environments apps, exposing the apps’
tools as MCP tools. This allows any MCP client to interact with Meta Agents Research Environments apps.
A custom ToolManager for Meta Agents Research Environments apps that creates MCP tools from Meta Agents Research Environments AppTool objects.
The normal tool manager gets confused parsing the signature of the AppTool function and we already
have all the information we need to create the tool, so we can just create the tool directly.
Initialize the ARESimulationToolManager.
Parameters:
apps (Sequence[App]) – A sequence of Meta Agents Research Environments apps to expose tools from
A class that creates an MCP server wrapping multiple Meta Agents Research Environments apps.
This class takes multiple Meta Agents Research Environments apps and exposes their tools as MCP tools,
allowing any MCP client to interact with the apps.
Initialize the Meta Agents Research Environments MCP Server.
Parameters:
apps (Optional[Sequence[App]]) – A sequence of Meta Agents Research Environments apps to wrap. If scenario is provided, this parameter is ignored.
server_name (Optional[str]) – Optional name for the MCP server. Defaults to “Meta Agents Research Environments MCP Server”.
scenario (Optional[Scenario]) – Optional scenario to load apps and their states from.
A class that creates an MCP server wrapping multiple Meta Agents Research Environments apps.
This class takes multiple Meta Agents Research Environments apps and exposes their tools as MCP tools,
allowing any MCP client to interact with the apps.
Initialize the Meta Agents Research Environments MCP Server.
Parameters:
apps (Optional[Sequence[App]]) – A sequence of Meta Agents Research Environments apps to wrap. If scenario is provided, this parameter is ignored.
server_name (Optional[str]) – Optional name for the MCP server. Defaults to “Meta Agents Research Environments MCP Server”.
scenario (Optional[Scenario]) – Optional scenario to load apps and their states from.
A custom ToolManager for Meta Agents Research Environments apps that creates MCP tools from Meta Agents Research Environments AppTool objects.
The normal tool manager gets confused parsing the signature of the AppTool function and we already
have all the information we need to create the tool, so we can just create the tool directly.
Initialize the ARESimulationToolManager.
Parameters:
apps (Sequence[App]) – A sequence of Meta Agents Research Environments apps to expose tools from
Inherits from mcp.server.fastmcp.tools.tool_manager.ToolManager.
Core logic of the scenario, this is where the scenario is built.
Where events are scheduled, event triggers are defined, as well as any element of the task.
By default, this function is empty, and should be overridden by the scenario if any extra logic is needed.
Build a dictionary to store the turn of each event
The turn of an event is the number of event send_message_to_user among its ancestors
The dictionary and the number of turns are stored to the scenario
Filters out all events connected with the given predecessor_event_ids,
including the predecessor events themselves, their successors and dependencies.
:type predecessor_event_ids: list[str]
:param predecessor_event_ids: List of event IDs to start filtering from.
:type events: list[AbstractEvent]
:param events: List of all events.
:rtype: list[AbstractEvent]
:return: List of events excluding those connected with the predecessor_event_ids.
Patches the event dependencies to ensure send_message_to_user events are executed last in each turn.
This method groups events by turns and ensures that send_message_to_user events depend on all other
events with maximum accumulated time in the same turn. This guarantees that user messages are sent
after all other operations in a turn are completed, maintaining proper execution order in oracle mode.