- Vantage
Vantage
Vantage
Track what you're seeing. Use it later.
Vantage is a personal signal store for AI-native work — a place to capture and query the things you notice across the web.
A post on X. A thread on LinkedIn. An insight from an article. A competitor move. Instead of losing it across tabs, screenshots, and notes, you save it — and use it later.
One memory layer across all your AI tools
Your AI tools don't share memory.
- Claude doesn't know what you saw on X
- ChatGPT doesn't know what you read yesterday
- Your code tools don't know your research
Vantage fixes that.
Save signals once, and access them anywhere you have an MCP-compatible client — across Claude, Cursor, and other supported tools.
How it works
- Connect Vantage to your AI (via MCP)
- Save signals directly from your workflow
- Ask questions on top of what you've saved
Example:
"Save this as a signal"
"What have I saved about pricing?"
"Show me signals from Lemkin"
What Vantage is (and isn't)
- Not a scraper — you choose what matters
- Not a feed — no noise or algorithmic clutter
- Not a knowledge base — no system to maintain
Vantage is a simple way to keep track of what you're seeing — so your AI can actually use it later.
Hosted + open source
- Free hosted version: vantage.cavendo.ai
- Self-hosted: MIT licensed, run it anywhere
Quick Start
Option 1: Use the hosted version (fastest)
Sign up at vantage.cavendo.ai. Connect to Claude or another supported client. Start capturing.
Takes about 2 minutes. No install required.
Option 2: Run locally
npm install
npm run dev
# If 3020 is already in use, choose another port
PORT=YOUR_PORT npm run dev
# Generate your first API key
curl -X POST http://localhost:3020/api/auth/keys \
-H 'Content-Type: application/json' \
-d '{"name": "my-key"}'
The first API key can be created from localhost without auth. If you're bootstrapping a fresh remote deployment, set VANTAGE_BOOTSTRAP_TOKEN on the server and send the same value in the X-Vantage-Bootstrap-Token header on that first request.
The API key is returned as data.key in the JSON response.
Capture your first signal:
curl -X POST http://localhost:3020/api/signals \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer vtg_YOUR_KEY_HERE' \
-d '{
"signalType": "post",
"platform": "x",
"content": "Every SaaS company will need an agent layer within 18 months.",
"topics": ["AI Agents", "SaaS"],
"importance": "high"
}'
MCP Server
Vantage includes an MCP server with 13 tools for use with Claude, Claude Code, Cursor, or any MCP-compatible client.
If you want to use the bundled stdio MCP server directly, install its dependencies too:
cd mcp-server
npm install
cd ..
Claude Code
claude mcp add vantage --transport http "http://localhost:3020/mcp" --header "Authorization: Bearer vtg_YOUR_KEY"
For manual testing, note that /mcp is a streamable HTTP endpoint. MCP clients handle the response format automatically, but ad hoc curl calls need to be prepared for stream-oriented responses rather than a simple JSON-only request/response flow.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"vantage": {
"command": "node",
"args": ["/path/to/vantage/mcp-server/src/index.js"],
"env": {
"VANTAGE_API_URL": "http://localhost:3020",
"VANTAGE_API_KEY": "vtg_YOUR_KEY_HERE"
}
}
}
}
MCP Tools
| Tool | What it does |
|---|---|
capture_signal | Save a post, article, quote, or discussion. Auto-creates sources and topics. |
search_signals | Full-text search with filters — platform, topic, date range, importance. |
list_recent_signals | Latest signals feed. |
get_signal | Full detail on a specific signal. |
manage_source | Create or update a person/account you're tracking. |
list_sources | See everyone you're tracking with signal counts. |
manage_topic | Create or update a topic/theme. |
list_topics | All topics with signal counts. |
manage_collection | Group signals into named collections. |
set_business_context | Upload strategy docs for comparison. |
analyze_signals | Assemble signals + context for analysis. |
get_dashboard | Summary — counts, top topics, top sources, highlights. |
save_analysis | Persist an analysis for later reference. |
Integrations
- OpenClaw community skill: vantage-shared-intel — capture signals, search prior intel, and generate shared digests against the same Vantage dataset from OpenClaw.
REST API
Most API requests require Authorization: Bearer vtg_YOUR_KEY.
Exceptions:
GET /healthPOST /api/auth/keysfor first-key bootstrap from localhost, or from a remote client that supplies a validX-Vantage-Bootstrap-Token
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/signals | Create a signal |
| GET | /api/signals | List signals with filters |
| GET | /api/signals/search?q=query | Full-text search |
| GET | /api/signals/feed | Chronological feed |
| GET | /api/signals/:id | Signal detail |
| POST | /api/sources | Create a source |
| GET | /api/sources | List sources |
| POST | /api/topics | Create a topic |
| GET | /api/topics | List topics |
| POST | /api/collections | Create a collection |
| POST | /api/contexts | Upload business context |
| GET | /api/dashboard/summary | Dashboard summary |
| POST | /api/auth/keys | Generate API key |
Tech Stack
| Component | Technology |
|---|---|
| Runtime | Node.js 20+ / Express / ESM |
| Database | SQLite via better-sqlite3 |
| Validation | Zod |
| Auth | API key (vtg_ prefix), SHA-256 hashed |
| MCP | @modelcontextprotocol/sdk (stdio + HTTP) |
Environment Variables
| Variable | Default | Description |
|---|---|---|
PORT | 3020 | Server port |
NODE_ENV | development | Environment |
DATABASE_PATH | ./data/vantage.db | SQLite file path |
CORS_ORIGIN | * | CORS allowed origin |
VANTAGE_BOOTSTRAP_TOKEN | unset | Allows first API key creation from a non-localhost client when sent as X-Vantage-Bootstrap-Token |
License
MIT — use it however you want.
Built by Jonathan Arehart at Cavendo AI.
Server Config
{
"mcpServers": {
"vantage": {
"command": "node",
"args": [
"/path/to/vantage/mcp-server/src/index.js"
],
"env": {
"VANTAGE_API_URL": "http://localhost:3020",
"VANTAGE_API_KEY": "vtg_YOUR_KEY_HERE"
}
}
}
}