The Agent-Ready Backend for MongoDB.
# Add to your Claude Code skills
git clone https://github.com/SoftInstigate/restheartRESTHeart exposes your data through a native MCP server and full REST and GraphQL APIs, so AI agents and developers can read and write without custom integration code.

RESTHeart gives AI agents and developers instant, secure access to MongoDB. It ships with a native MCP server that any MCP-compatible client (Claude, Claude Code, Cursor, VS Code) can connect to out of the box, plus full REST, GraphQL, and WebSocket APIs for traditional application development. Built-in authentication and authorization, zero backend boilerplate, and a plugin framework for custom business logic when you need it.
No comments yet. Be the first to share your thoughts!
Available as a Docker image and GraalVM native binary. Built on Java 25, Undertow, and virtual threads.
Core capabilities:
RESTHeart ships with Sophia, a native Model Context Protocol (MCP) server. Any MCP-compatible AI client can connect directly.
Public demo endpoints (no authentication required):
https://sophia-api.restheart.com/mcp/restheart/ — RESTHeart docs knowledge base
https://sophia-api.restheart.com/mcp/cloud/ — RESTHeart Cloud docs knowledge base
Connect with Claude Code:
claude mcp add --transport http sophia-restheart https://sophia-api.restheart.com/mcp/restheart
claude mcp add --transport http sophia-cloud https://sophia-api.restheart.com/mcp/cloud
Connect with Claude Desktop: Open Settings → Connectors → Add custom connector and paste one of the context URLs above.
Connect with Streamable HTTP clients (add to MCP settings):
{
"sophia": {
"type": "http",
"url": "https://sophia-api.restheart.com/mcp/restheart/"
}
}
Connect with stdio clients (VS Code, Zed — requires Node.js 18+):
{
"sophia": {
"command": "npx",
"args": ["mcp-remote", "https://sophia-api.restheart.com/mcp/restheart/"]
}
}
For private Sophia instances, replace the URL with your own base URL and context ID, and add authentication. See the MCP documentation for details.
# Start MongoDB + RESTHeart with Docker Compose
curl https://raw.githubusercontent.com/SoftInstigate/restheart/master/docker-compose.yml \
--output docker-compose.yml && docker compose up --attach restheart
# Test it
curl http://localhost:8080/ping
Default credentials: admin / secret (change in production)
More options: https://restheart.org/docs/foundations/quick-start
const url = encodeURI('https://demo.restheart.org/messages?filter={"from":"Bob"}&pagesize=1');
fetch(url)
.then(response => response.json())
.then(json => console.log(JSON.stringify(json, null, 2)));
That's it. No Express routes, no Mongoose schemas, no middleware setup.
📄 Full documentation: https://restheart.org/docs/
Write custom logic only when you need it. RESTHeart handles the rest.
@RegisterPlugin(name = "greetings")
public class GreeterService implements JsonService {
@Override
public void handle(JsonRequest req, JsonResponse res) {
res.setContent(object()
.put("message", "Hello World!")
.put("timestamp", Instant.now()));
}
}
export const options = {
name: "greetings",
uri: "/greetings"
}
export function handle(request, response) {
response.setContent(JSON.stringify({
message: 'Hello World!',
timestamp: new Date().toISOString()
}));
response.setContentTypeAsJson();
}
Plugin types:
📖 Plugin development: https://restheart.org/docs/plugins/overview/
🔧 Use restheart-cli for scaffolding, testing, and hot-reload.
docker pull softinstigate/restheart:latest
docker run -p 8080:8080 \
-v ./restheart.yml:/opt/restheart/etc/restheart.yml \
softinstigate/restheart
Stateless architecture supports horizontal scaling. Configure with ConfigMaps and Secrets.
Prebuilt binaries for macOS, Linux, and Windows with faster startup and lower memory footprint.
See docs/native-executables.md for download links.
Fully managed service: cloud.restheart.com
| Database | Support Level | Notes | | --------------------- | ------------- | ---------------------------------------------------------------------------------------------- | | ✅ MongoDB | Full | All versions 3.6+ | | ✅ MongoDB Atlas | Full | Cloud-native support | | ✅ Percona Server | Full | Drop-in MongoDB replacement | | ⚙️ FerretDB | Partial | PostgreSQL-backed (tutorial) | | ⚙️ AWS DocumentDB | Partial | Most features work | | ⚙️ Azure Cosmos DB | Partial | MongoDB API compatibility layer |
restheartContributions welcome. RESTHeart is open source (AGPL).
See CONTRIBUTING.md for guidelines.
RESTHeart core is licensed under the GNU AGPL v3.
The plugin SDK (restheart-commons, Maven artifact org.restheart:restheart-commons) is licensed under the Apache License 2.0. Plugins and extensions that depend only on restheart-commons are not subject to the AGPL v3 and may be distributed under any license you choose, incl