CAMEODB
psychology The AI CameoDB Way

AI interface to your Data

CameoDB features a fully-compliant Model Context Protocol (MCP) server built directly into the core engine. Give Claude, Cursor, or Windsurf instant, high-speed access to your indexes.

auto_awesome

Zero to AI in 60 Seconds

Import your own data (or try our examples) and instantly communicate with that knowledgebase via your favorite AI interface. No middleware required.

database

1. Ingest Data

Use the CLI to load our Books or TED Talks examples, or your own CSV/TSV.

data load books https://dl.cameodb.com/examples/data/booksummaries.tsv
settings_ethernet

2. Connect Agent

Add a simple snippet to your Claude Desktop or Windsurf config file.

"url": "http://localhost:9480/mcp/sse"
forum

3. Start Asking

The agent automatically discovers your schemas and queries the cluster.

"Find me books about space opera written in the 1990s."

cable Client Configurations

Note: CameoDB defaults to port 9480. The MCP endpoints are nested natively under the /mcp path.

Windsurf / Cursor

SSE Transport

Add to .windsurf/mcp.json or Cursor MCP settings:

{
  "mcpServers": {
    "cameodb": {
      "url": "http://localhost:9480/mcp/sse",
      "transport": "sse"
    }
  }
}

Claude Desktop

Curl Bridge

Claude currently requires a curl bridge for SSE transport:

{
  "mcpServers": {
    "cameodb": {
      "command": "curl",
      "args": [
        "-N",
        "-H", "Accept: text/event-stream",
        "http://localhost:9480/mcp/sse"
      ]
    }
  }
}

build Available MCP Tools

6 specialized tools exposed securely (Read-Only) to the AI agent.

search_index Tool

Execute full-text search on a single CameoDB index.

Parameters
  • index (req)
  • query (req)
  • limit (opt)
  • fields (opt array)
"arguments": {
  "index": "papers",
  "query": "machine learning AND year:[2020 TO 2024]",
  "limit": 10,
  "fields": ["title", "author"]
}
search_indexes Federated

Execute federated search across multiple CameoDB indexes with per-index field projection.

"arguments": {
  "indexes": [
    {"index": "papers", "fields": ["title", "author"]},
    {"index": "books", "fields": ["title", "isbn"]}
  ],
  "query": "rust programming",
  "limit": 20
}
validate_query Linter

Validates query syntax against the schema. Returns fuzzy "did you mean" suggestions for unknown fields and syntax tips.

get_index

Retrieve schema and statistics for a single index.

list_indexes

List all available indexes and their schemas.

get_index_stats

Document counts, size, and aggregated cluster metadata.

account_tree Implementation & Transport

  • dns
    Shared-Port Architecture Runs in the same binary as CameoDB, sharing the same AppState and actor system. No sidecars needed.
  • rule
    Strict Spec Compliance (2024-11-05) Implements proper JSON-RPC 2.0 over SSE. Emits structured endpoint and message events.
  • bolt
    Asynchronous Processing Client POSTs to /mcp/messages are non-blocking. Server immediately returns 202 Accepted and processes via background tokio::spawn.
  • hourglass_empty
    Session Management Automatic session registry with a 5-minute timeout cleanup. Keepalive messages sent every 15 seconds to maintain connection.

Agent Query Syntax

Agents use the validate_query tool to learn this dynamically, but here is the reference.

Syntax Type Example Format
Basic Search machine learning
Field-Targeted title:rust
Phrase title:"rust programming"
Boolean Operators (title:rust OR title:go) AND year:[2020 TO 2024]
Range / Numeric price:[10.0 TO *]
Date Comparisons created_at:>2024-01-01
Inline Modifiers title:rust return title,author limit 5