The AI-native operating system for your company.
A production-grade coordination hub that enables AI agents and human teams to work as a single organism — sharing tasks, context, decisions, and persistent memory across projects. Not AI for AI's sake, but AI integrated directly into company operations.
Most AI tooling treats agents as isolated chat sessions. Each agent starts from zero, asks the same questions, loses context between sessions. JustClone MCP solves this with three innovations:
┌─────────────────────────────────────────────────────────┐
│ OpenClaw / Agents │
│ (Coder · Sales · Marketing · Copywriter · Researcher) │
└───────────────┬─────────────────────────────────────────┘
│ MCP Protocol (Streamable HTTP)
▼
┌─────────────────────────────────────────────────────────┐
│ JustClone Coordination Server │
│ FastMCP + Starlette │ 28 Tools │ 12 REST endpoints │
├─────────────────────────────────────────────────────────┤
│ PostgreSQL 16 │
│ projects · tasks · plans · results · context │
│ sessions · messages · memories (two-tier) │
└─────────────────────────────────────────────────────────┘| Component | Tech |
|---|---|
| MCP Server | FastMCP + Starlette (Streamable HTTP) |
| Database | PostgreSQL 16 + asyncpg |
| Migrations | Alembic (2 migrations) |
| Dashboard | nginx on port 20080 |
| Runtime | Docker Compose |
| Tests | pytest-asyncio (41 tests) |
# 1. Start the stack
docker compose up -d --build
# 2. Dashboard
open http://localhost:20080
# 3. MCP endpoint (connect any agent here)
http://localhost:8765/mcpThe flagship feature. Every agent automatically receives a hot cache of knowledge when starting a session — no setup, no config, no "remind me what we're doing".
Agent calls jc_start("antigravity", "kaoru-bot")
↓
Server returns:
✅ Protocol (how to coordinate)
✅ Active tasks
✅ Context keys
✅ Unread messages
✅ Memory hot cache (top 30 by usage)
person: 🌐 fedor — Owner, Tech Lead
term: 📁 archetype — Persona routing pattern
client: 🌐 acme-corp — Enterprise deal, Q2 close| Scope | Description | Visibility |
|---|---|---|
Global (is_global=True) | Company-wide: people, terms, processes | Every agent, every project |
| Project | Project-specific: decisions, tech stack | Only agents on that project |
Tiered lookup: agent asks for "fedor" → checks project first → falls back to global.
person · project · term · client · deal · process · preference · other
Every jc_recall increments usage_count. The hot cache (jc_start response) returns the top 30 most-used memories. Frequently accessed knowledge floats to the top automatically — no manual curation needed.
| Tool | Description |
|---|---|
jc_start | Begin session — returns protocol, state, and memory hot cache |
jc_update | Get current project snapshot |
| Tool | Description |
|---|---|
jc_create_task | Add a task to the board |
jc_update_task | Move task between statuses |
jc_complete_task | Mark task done with summary |
jc_list_tasks | List all tasks grouped by status |
jc_get_task | Get full task details + plan + result |
jc_edit_task | Edit task title/description |
jc_delete_task | Delete a task by reference |
| Tool | Description |
|---|---|
jc_get_context | Read all context keys |
jc_set_context | Write a context key/value |
jc_delete_context | Delete a context key |
| Tool | Description |
|---|---|
jc_save_plan | Store implementation plan for a task |
jc_get_plan | Retrieve plan for a task |
jc_save_result | Store task result |
jc_get_result | Retrieve task result |
| Tool | Description |
|---|---|
jc_start_session | Register an agent session |
jc_end_session | End session with summary |
jc_post_message | Send message to another agent |
jc_get_messages | Fetch messages for an agent |
| Tool | Description |
|---|---|
jc_remember | Store a memory (project or global scope) |
jc_recall | Recall memory by key (tiered: project → global) |
jc_memory_search | Search memories by partial match |
jc_forget | Delete a memory |
jc_memory_promote | Promote/demote memory tier (hot ↔ deep) |
| Tool | Description |
|---|---|
jc_list_projects | List all projects |
jc_list_sessions | List recent sessions for a project |
jc_delete_project | Delete project + all data (CASCADE) |
| Method | Endpoint | Description |
|---|---|---|
| GET | /health | Health check |
| GET | /api/projects | List projects |
| POST | /api/projects | Create project |
| DELETE | /api/projects/{id} | Delete project |
| GET | /api/projects/{id}/tasks | List tasks |
| DELETE | /api/projects/{id}/tasks/{ref} | Delete task |
| GET | /api/projects/{id}/context | List context |
| DELETE | /api/projects/{id}/context/{key} | Delete context key |
| GET | /api/projects/{id}/messages | List messages |
| GET | /api/projects/{id}/sessions | List sessions |
| GET | /api/projects/{id}/memories | List project + global memories |
| GET | /api/memories/global | List global memories only |
Any AI agent connecting via MCP receives the full coordination protocol automatically when calling jc_start. The protocol covers:
jc_start → work → jc_end_session → jc_updateSession 1 — Coder (Antigravity):
jc_start("antigravity", "kaoru-bot")
→ Sees hot cache: "archetype = persona routing pattern"
→ Works on the feature
jc_remember("kaoru-bot", "term", "PSR", "Pipeline Status Report")
jc_post_message(recipient="copywriter", content="Landing page copy ready for review")
Session 2 — Copywriter:
jc_start("copywriter", "kaoru-bot")
→ Hot cache already includes "PSR" (auto-promoted by usage)
→ Unread message: "Landing page copy ready for review"
→ Starts work immediately, no context lostAny MCP-compatible client can connect by pointing to http://host:8765/mcp.
No authentication required. The server is fully agent-agnostic — agent names
are just strings passed to jc_start.
{
"mcpServers": {
"justclone-mcp": {
"serverUrl": "http://localhost:8765/mcp"
}
}
}| Table | Purpose |
|---|---|
projects | Project registry |
tasks | Task board (backlog → done) |
plans | Implementation plans per task |
results | Task outputs and deliverables |
context | Key/value config and state |
sessions | Agent session tracking |
messages | Inter-agent messaging |
memories | Two-tier memory (hot/deep, project/global) |
# Local dev (requires postgres running)
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # edit DATABASE_URL if needed
# Run migrations
DATABASE_URL=postgresql://mcp:mcp@localhost:5432/justclone_mcp alembic upgrade head
# Run server
python server.py
# Tests (41 tests, requires postgres on localhost:5432)
pytest tests/ -v| Port | Service |
|---|---|
| 8765 | MCP Server + REST API |
| 20080 | Web Dashboard |
| 5432 | PostgreSQL (internal) |
Hazgar2111/mcp_antigravity
April 13, 2026
April 13, 2026
Python