Soat
FreeNot checkedSOAT is an open-source framework designed to provide persistent memory capabilities for autonomous AI agents.
About
SOAT is an open-source framework designed to provide persistent memory capabilities for autonomous AI agents.
README
License: MIT SafeSkill 92/100 Docker Image Version Docker Pulls
SOAT is open-source infrastructure for building AI applications. One self-hostable Node.js server gives you IAM, file and document storage with vector search, multimodal ingestion, conversational memory, agent orchestration, DAG-based multi-agent workflows, retrieval-augmented generation, declarative stack deployment, a built-in web console, and a full Model Context Protocol server with first-party OAuth — backed by PostgreSQL.
You bring the product. SOAT handles the infrastructure layer.
Why SOAT?
Shipping AI applications means rebuilding the same infrastructure on every project: users, API keys, encrypted secrets, file storage, embeddings, conversation history, agent tool calling, traces, observability. SOAT solves all of it once and exposes it through five equivalent surfaces — REST, MCP, CLI, TypeScript SDK, and a built-in web app — so the same operation runs the same way whether you call it from a backend, Claude Desktop, a CI script, the bundled UI, or your own frontend.
Highlights
- Identity & access — users, projects, JWTs, project keys, personal API keys, and reusable IAM policy documents enforced consistently on every surface.
- Files, documents, memories & knowledge — pgvector-backed semantic search across documents and memory entries, with memory containers that keep durable context for agents. See Files, Documents, Memories, and Knowledge.
- Multimodal ingestion — Ingestion Rules route images, audio, and scanned PDFs through converter tools or multimodal agents (OCR, speech-to-text, vision) into the same document search pipeline.
- Agents that actually do things — tool-calling reasoning loops with HTTP, MCP, client-side, and SOAT-platform tools, including multi-agent workflows where agents invoke other agents. See Agents.
- Deterministic orchestrations — Orchestrations chain agents, tools, and knowledge lookups into DAG-based workflows with parallel execution rounds, conditional branching, delays, polling, and loops.
- Declarative deployments — Formations let you define providers, memories, tools, agents, and orchestrations in a single template and deploy in dependency order.
- Sessions — a 1-user ↔ 1-agent interface that hides actors and conversations. Two API calls take a user from message to answer. See Sessions.
- Direct LLM completions — an OpenAI-compatible chat completions endpoint with SSE streaming, stateless or with stored per-chat configuration, for when you don't need an agent at all. See Chats.
- Async generations — kick off long-running agent runs, poll for status, or fire a webhook on completion.
- Operations — encrypted secrets, HMAC-signed webhooks with event-pattern subscriptions, and trace records for every generation. See Webhooks and Traces.
- MCP native — every operation is automatically available as an MCP tool, and SOAT acts as a first-party OAuth 2.1 authorization server so MCP clients like Claude Desktop, Cursor, and VS Code connect with the standard authorize + PKCE flow. See MCP docs and OAuth.
Documentation
Read the full documentation — quick start, key concepts, module reference, API, MCP, CLI, and SDK guides.
Getting Started
The fastest path is Docker Compose:
git clone https://github.com/ttoss/soat.git
cd soat
Follow the Getting Started Guide to bring up the server and database in under five minutes.
Client surfaces
| Surface | Best for | Docs |
|---|---|---|
| REST API | Backend services and custom integrations | https://soat.ttoss.dev/docs/api |
| MCP server | Claude Desktop, Cursor, and other MCP-aware AI runtimes | https://soat.ttoss.dev/docs/mcp |
CLI (soat) |
Scripts, CI pipelines, and local exploration | https://soat.ttoss.dev/docs/cli |
SDK (@soat/sdk) |
TypeScript and JavaScript applications | https://soat.ttoss.dev/docs/sdk |
| Web app | Browsing and managing resources from the browser | Served by the server at /app |
All five hit the same business logic and the same permission engine.
Repository layout
This is a monorepo managed with pnpm and Turbo:
packages/server— the SOAT server (REST + MCP, business logic, permissions)packages/postgresdb— Sequelize models and database utilitiespackages/sdk— TypeScript SDK generated from the OpenAPI specspackages/cli— thesoatcommand-line clientpackages/app— the web UI (React), served by the server at/apppackages/website— the documentation site (Docusaurus)
Contributing
Issues and pull requests are welcome. Run the tests with pnpm --filter @soat/server test and the smoke suite with pnpm run -w smoke-tests.
License
MIT — see the LICENSE file for details.
Acknowledgments
Installing Soat
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/ttoss/soatFAQ
Is Soat MCP free?
Yes, Soat MCP is free — one-click install via Unyly at no cost.
Does Soat need an API key?
No, Soat runs without API keys or environment variables.
Is Soat hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Soat in Claude Desktop, Claude Code or Cursor?
Open Soat on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare Soat with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
