kakarot-dev avatar

Deepmiro

kakarot-dev/deepmiro

DeepMiro runs multi-agent simulations to predict how communities respond to events or policy changes. It extracts entities from documents, spins up hundreds of AI agents with distinct personalities and social networks, then simulates interaction across Twitter-like and Reddit-like platforms. The MCP exposes tools to trigger predictions, query simulation status, retrieve structured reports, and chat with individual agents post-simulation. Behind the scenes it uses GraphRAG for entity extraction, TWHIN-BERT for social embeddings, and SurrealDB for agent memory and relationships. Useful when you need emergent behavior forecasting that goes beyond single-prompt analysis, like testing policy drafts, market scenarios, or narrative outcomes before they play out in the real world.

GitHub stars
7
tools
9
auth
Secret needed
transport
STDIO
env vars
2
last updated
Apr 9, 2026

Tools

9 tools

Public tool metadata for what this MCP can expose to an agent.

create_simulationRun a full swarm prediction. Builds a knowledge graph, generates agent personas, runs a multi-agent social media simulation, and generates a prediction report. Streams progress updates. Returns the final report when complete.6 params

Run a full swarm prediction. Builds a knowledge graph, generates agent personas, runs a multi-agent social media simulation, and generates a prediction report. Streams progress updates. Returns the final report when complete.

Parameters* required
agent_countinteger
Override agent count
document_idstring
ID of a pre-uploaded document (from upload_document tool). Skips file upload and uses server-side sanitized text.
platformstring
Target platform(s). Default: bothone of twitter · reddit · both
presetstring
Simulation preset: quick (10 agents, 20 rounds), standard (20/40), deep (50/72)one of quick · standard · deep
promptstring
Scenario description. E.g. 'How will crypto twitter react to a new ETH ETF rejection?'
roundsinteger
Override simulation rounds
simulation_statusCheck the progress of a running or completed simulation. Returns phase-aware status with entity names and action content. Phases: building_graph → generating_profiles → simulating → completed.2 params

Check the progress of a running or completed simulation. Returns phase-aware status with entity names and action content. Phases: building_graph → generating_profiles → simulating → completed.

Parameters* required
detailedboolean
Include recent agent actions with content in the response
simulation_idstring
The simulation ID returned by create_simulation
get_reportGenerate and retrieve the prediction report for a completed simulation. If the report hasn't been generated yet, triggers generation (may take 1-3 minutes). Returns a detailed markdown analysis of the simulation results.1 params

Generate and retrieve the prediction report for a completed simulation. If the report hasn't been generated yet, triggers generation (may take 1-3 minutes). Returns a detailed markdown analysis of the simulation results.

Parameters* required
simulation_idstring
The simulation ID to generate/fetch a report for
interview_agentChat with a specific simulated agent to understand their perspective, reasoning, and predicted behavior. The agent responds in character based on their persona and simulation experience.4 params

Chat with a specific simulated agent to understand their perspective, reasoning, and predicted behavior. The agent responds in character based on their persona and simulation experience.

Parameters* required
agent_idinteger
The agent's numeric ID within the simulation
messagestring
Question or prompt to send to the agent
platformstring
Which platform persona to interview. Omit for both.one of twitter · reddit
simulation_idstring
The simulation ID
list_simulationsList past simulation runs with their status and metadata.1 params

List past simulation runs with their status and metadata.

Parameters* required
limitinteger
Max results to return (default 20)
search_simulationsSearch past simulations by topic, project name, or simulation ID.1 params

Search past simulations by topic, project name, or simulation ID.

Parameters* required
querystring
Search term — matches against simulation ID, project name, or requirement
quick_predictFast, lightweight prediction without running a full simulation. Uses the LLM to simulate swarm behavior and predict outcomes. Returns in seconds. For deeper analysis, use create_simulation instead.1 params

Fast, lightweight prediction without running a full simulation. Uses the LLM to simulate swarm behavior and predict outcomes. Returns in seconds. For deeper analysis, use create_simulation instead.

Parameters* required
promptstring
Scenario to predict. E.g. 'How will the public react if Apple announces a $2000 iPhone?'
upload_documentUpload a document for use in simulations. LIMITS: Max 10MB, PDF/MD/TXT only. The server extracts text server-side (PyMuPDF for PDFs). Returns a document_id to pass to create_simulation. NOTE: Only works with local file paths (stdio transport). For remote/hosted mode, the clien...1 params

Upload a document for use in simulations. LIMITS: Max 10MB, PDF/MD/TXT only. The server extracts text server-side (PyMuPDF for PDFs). Returns a document_id to pass to create_simulation. NOTE: Only works with local file paths (stdio transport). For remote/hosted mode, the clien...

Parameters* required
file_pathstring
Absolute path to the file to upload. Supported: PDF, MD, TXT. Max 10MB. Rejects binary files and unsupported formats.
simulation_dataAccess raw simulation data: agent profiles, configuration, action logs, social media posts, round-by-round timeline, per-agent activity stats, and interview history. Use this to inspect what happened during a simulation.6 params

Access raw simulation data: agent profiles, configuration, action logs, social media posts, round-by-round timeline, per-agent activity stats, and interview history. Use this to inspect what happened during a simulation.

Parameters* required
action_typestring
Filter actions by type (CREATE_POST, LIKE_POST, etc.)
agent_namestring
Filter actions by agent name
data_typestring
What data to retrieve: profiles (agent personas), config (simulation parameters), actions (agent action log), posts (social media posts from SQLite), timeline (per-round summaries), agent_stats (pe...one of profiles · config · actions · posts · timeline · agent_stats
limitinteger
Max results (default 50)
platformstring
Filter by platform (for actions and posts)one of twitter · reddit
simulation_idstring
The simulation ID

Sponsors

Configuration

DEEPMIRO_API_KEYsecret

Your DeepMiro API key (get one free at https://deepmiro.org)

MIROFISH_URL

Override for self-hosted engine URL (default: https://api.deepmiro.org)

Readme

DeepMiro

A swarm intelligence engine that rehearses the future.

Feed it a document. Describe a scenario. Watch hundreds of AI agents with distinct personalities, memories, and social instincts interact — and return with a prediction.

License npm Docker Website


Deploy on Railway

One-click self-host — four services, one API key, ~60 seconds. Full walkthrough ↓


Contents


View the full README on GitHub

Details

Repository
github.com/kakarot-dev/deepmiro
Package
deepmiro-mcp
Transport
STDIO
Auth
Required
Registry
MCP registry, active