Get started in 5 minutes
ValorBrain exposes your corporate brain via MCP, REST, and webhooks. Connect any agent, ingest from any source.
Quick start
Sign up + Get a token
Create your account, complete onboarding. Settings → MCP Tokens → Generate.
Sign up freeConnect your agent
Claude Desktop, Cursor, Windsurf. any MCP-compatible client. OAuth 2.1 auto-discovery.
See examplesIngest your knowledge
Filesystem watcher, REST webhook, MCP store, and 5 native OAuth connectors (Notion, Slack, Drive, GitHub, Linear).
See connectorsQuery from any agent
MCP query tool, engine POST /search and POST /retrieve, or Claude Code hooks for automatic injection.
API referenceMCP setup
ValorBrain exposes an MCP HTTP server at mcpbrain.valor.digital/mcp with OAuth 2.1.
Claude Desktop
{
"mcpServers": {
"valorbrain": {
"url": "https://mcpbrain.valor.digital/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer vbm_<your-token>"
}
}
}
}Path: ~/.claude/claude_desktop_config.json
OAuth 2.1 auto-discovery
Clients that support OAuth 2.1 dynamic client registration (Cursor, Windsurf, Claude Desktop soon) discover auth automatically:
https://mcpbrain.valor.digital/.well-known/oauth-authorization-server
Ingestion
4 paths to feed the brain:
1. From your agent (MCP)
# registers the endpoint; first use starts OAuth curl -fsSL https://valorbrain.valor.digital/install.sh | bash # or, straight into Claude Code: claude mcp add --transport http valorbrain \ https://mcpbrain.valor.digital/mcp
OAuth keeps the token out of the shell. For clients without OAuth, create a dedicated token under Settings → MCP tokens and paste it only into the client's protected configuration.
2. REST ingest (SaaS API)
curl -X POST https://valorbrain.valor.digital/api/v1/ingest \
-H "Authorization: Bearer fk_<prefix>.sk_<secret>" \
-H "Content-Type: application/json" \
-d '{
"collection": "decisions",
"path": "ADR-007.md",
"title": "Multi-tenant migration",
"content": "## Decision..."
}'Create the API key under Settings → API Keys. The SaaS forwards to the engine with X-Tenant-ID.
3. MCP store tool
Directly from your agent: Claude Code, Cursor, etc. use the store tool.
store({
collection: "decisions",
path: "ADR-007.md",
content: "..."
})4. OAuth connectors (BYOK)
Notion, Google Drive, Slack, GitHub, and Linear — available under Connectors (after login). Bring your own OAuth credentials; background sync ingests into the tenant engine. Requires Starter plan or higher.
Dashboard → Connectors → pick provider → Setup → Sync
Agent integrations
Works with any agent via REST. Here are the most common frameworks.
Hermes Agent
Native plugin with 10 tools (read + write). Auto-injected into the system prompt. Hermes reads and writes memory automatically every session.
OpenClaw
Native plugin kind: memory with 10 agent tools. Lifecycle hooks and context surfacing injected into the prompt automatically.
Claude Code / Cursor
Via MCP HTTP server. Claude Desktop, Cursor, and Windsurf support native MCP with OAuth 2.1.
Direct REST
Use HTTP directly with a Bearer token. Works with any language, any framework.
REST API
SaaS API: valorbrain.valor.digital/api/v1. Dashboard routes use the session cookie. Only POST /ingest accepts a workspace key (fk_*.sk_*).
Engine API (memory and search): valorbrain-api.valor.digital with Bearer vb_* + X-Tenant-ID. A self-hosted engine may use http://localhost:7438 from its own host; that is not the cloud endpoint.
MCP transport: mcpbrain.valor.digital/mcp — OAuth 2.1 or Bearer vbm_*.
# Search — POST /search (hybrid BM25 + vector + RRF)
curl -X POST https://valorbrain-api.valor.digital/search \
-H "Authorization: Bearer vb_..." \
-H "X-Tenant-ID: <your-tenant-uuid>" \
-H "Content-Type: application/json" \
-d '{"query":"architecture decision","limit":5}'
# Retrieve — POST /retrieve (multi-strategy)
curl -X POST https://valorbrain-api.valor.digital/retrieve \
-H "Authorization: Bearer vb_..." \
-H "X-Tenant-ID: <your-tenant-uuid>" \
-H "Content-Type: application/json" \
-d '{"query":"ADR-007 multi-tenant","limit":10}'
# Ingest (engine direct — POST /documents)
curl -X POST https://valorbrain-api.valor.digital/documents \
-H "Authorization: Bearer vb_..." \
-H "X-Tenant-ID: <your-tenant-uuid>" \
-H "Content-Type: application/json" \
-d '{"collection":"decisions","path":"ADR-001.md",
"content":"## We chose PostgreSQL..."}'
# Pin, forget
curl -X POST https://valorbrain-api.valor.digital/documents/abc123/pin \
-H "Authorization: Bearer vb_..." -H "X-Tenant-ID: <your-tenant-uuid>"
curl -X POST https://valorbrain-api.valor.digital/documents/abc123/forget \
-H "Authorization: Bearer vb_..." -H "X-Tenant-ID: <your-tenant-uuid>"| Method | Path | Description |
|---|---|---|
| POST | /search | Hybrid search (BM25 + vector + RRF) |
| POST | /retrieve | Multi-strategy retrieve |
| GET | /documents/:id | Full document by ID |
| GET | /documents | List documents (paginated) |
| GET | /collections | All collections with doc counts |
| GET | /sessions | Recent session summaries |
| GET | /timeline/:id | Temporal context around doc |
| GET | /graph/similar/:id | Semantically similar docs |
| GET | /graph/causal/:id | Causal links from doc |
| GET | /stats | Index statistics |
| Method | Path | Description |
|---|---|---|
| POST | /documents | Ingest document |
| POST | /documents/:id/pin | Pin to foundation set |
| POST | /documents/:id/forget | Soft-delete |
| POST | /documents/:id/feedback | Rate (POSITIVE / NEGATIVE) |
| POST | /documents/:id/snooze | Temporarily deprioritize |
| PATCH | /documents/:id/visibility | Change visibility |
| DELETE | /documents/purge | Purge forgotten docs |
Self-hosted / On-prem
The engine runs on any Linux with PostgreSQL 15+ and 4GB+ RAM. There is no open installer: on-prem ships accompanied, with the engine build, the migrations, and sizing for the GPU services.
What you run
- PostgreSQL 15+ with pgvector, and the engine on an internal HTTP port.
- Optional on GPU: embedding (LFM2.5-Embedding-350M), reranker (BGE-Reranker-v2-m3), and a local model for query expansion. Without them the system still works, with less search precision.
- No call leaves your network — that is what separates on-prem from hosted.
For custom integrations, on-prem, or dedicated SLA, talk to us.
Ready to get started?
5 minutes to set up. Free plan forever. No credit card.

