@verifiedstate/obsidian
v1.0.0
Published
Bridge your Obsidian vault to VerifiedState — verified memory for AI agents
Maintainers
Readme
@verifiedstate/obsidian
Your Obsidian vault is your brain. VerifiedState is your agent's brain. Same knowledge, verified.
Bridge your Obsidian vault to VerifiedState. Your notes become verified, structured assertions that any AI agent can query instantly — with conflict detection, temporal validity, and signed receipts.
Why?
Your vault has 800 notes. When your AI agent searches it:
- Raw vault search: 2 seconds, 40 results, no ranking, no verification
- VerifiedState: 0.01ms, 3 verified facts, conflict-aware, temporally valid
Your notes stay in Obsidian. Your agent reads from VerifiedState. Best of both worlds.
Quick start
# Install
npm install -g @verifiedstate/obsidian
# Run
VERIFIEDSTATE_API_KEY=your-key vs-obsidian ~/Documents/MyVault
# Or pass args directly
vs-obsidian ~/Documents/MyVault vs_key_abc123 my-vaultThat's it. Your vault is now syncing to VerifiedState.
Use with AI agents
If you already have the VerifiedState MCP server connected, the vault assertions are just there — same namespace, same queries, same four-tier retrieval.
Or add to your Claude Code / Cursor MCP config:
{
"mcpServers": {
"verifiedstate": {
"command": "npx",
"args": ["-y", "@verifiedstate/mcp"],
"env": {
"VERIFIEDSTATE_API_KEY": "your-key",
"VERIFIEDSTATE_NAMESPACE_ID": "obsidian-vault"
}
}
}
}Your agent now has verified access to everything in your vault.
What gets extracted?
- Facts from note content — extracted as subject-predicate-object assertions via LLM
- Frontmatter metadata — structured fields become typed assertions
- Wikilinks —
[[note]]links become relationship assertions - Tags — tracked as categorization assertions
- Changes over time — updated notes produce new assertions; old facts remain in the append-only log
What VerifiedState adds that raw vault search doesn't
| | Raw Vault Search | VerifiedState | |---|---|---| | Speed | 1-3 seconds | 0.01ms (zero-hop filter) | | Verification | None | Every fact has a signed receipt | | Conflicts | Silent overwrites | Detected and flagged | | Temporal validity | None | Knows when facts expire | | Structure | Raw markdown text | Subject-predicate-object assertions | | Cross-tool access | Obsidian only | Any MCP client, any API, any SDK |
Environment variables
| Variable | Required | Description |
|---|---|---|
| VERIFIEDSTATE_API_KEY | Yes | Your VerifiedState API key |
| VERIFIEDSTATE_NAMESPACE | No | Namespace ID (default: obsidian-vault) |
| VERIFIEDSTATE_BASE_URL | No | API base URL (default: https://api.verifiedstate.ai) |
Links
- VerifiedState Docs
- Get API Key — free tier: 25,000 assertions/month
- SDK Reference
- MCP Server
