All postsNext post

CameoDB v0.2.2: A Native MCP Server, Sorting and Compressed Sources

The native MCP server, sorting inline or in JSON, and transparent gzip and zip sources.

What’s new since this post (v0.3.8). Three tools have their current names: search_indexes is now search_across_indexes, get_index is describe_index, and get_index_stats is get_catalog_stats. The MCP endpoint now honours API keys with per-index scope, and CameoDB ships signed builds for macOS, Linux and Windows, with deb, rpm and msi packages.

A Native MCP Server

v0.2.2 brings the headline feature of the 0.2 line: a Model Context Protocol server built into the binary. Start CameoDB and AI agents can discover your indexes, read their schemas and search them, with no sidecar and no middleware.

Six Read-Only Tools

list_indexes, get_index, search_index, search_indexes, validate_query and get_index_stats. Agents can discover, query and validate, and every tool is a read.

The Orchestrator Prompt

The prompts capability ships the cameodb-orchestrator skill, which hands an agent the workflow and the rules for answering from your data.

Resources

Four resource URIs for exploring indexes, their metadata, schemas and stats.

Two Transports

Spec-compliant SSE with a full session lifecycle, and direct HTTP JSON-RPC.

Queries an Agent Can Get Right

validate_query checks a query against the index's field types before it runs, with a syntax reference and "did you mean" suggestions for a mistyped field. Index metadata comes back as a compact field list with deduplicated query hints, so an agent reads exactly what it needs.

// A mistyped field gets a suggestion
query = titel:rust
// → Unknown field 'titel', with title suggested

Inline query modifiers apply to the MCP search tools too, so an agent can shape its results in the query itself.

Sorting

Search results can now be sorted, inline in the query or in the JSON payload:

// Inline
title:rust sort year:desc

// JSON payload
{"query": "title:rust", "sort": {"field": "year", "order": "desc"}}

Compressed Sources

Every data source reads gzip and zip transparently. Point the loader at books.csv.gz or a zip archive, local or over HTTP, and it streams the records straight in.

Builds and Fixes

Release builds now use thin LTO with fewer codegen units, Docker builds share one release-docker profile with smarter CA certificate handling, and the toolchain moves to Rust 1.94.

  • The sequence counter initializes correctly from Tantivy's descending sort keys
  • Every CSV field is indexed during single-pass data loading
  • The MCP server shuts down gracefully, cleaning up its sessions

Get CameoDB

The latest release is on the downloads page, with signed binaries for every platform. Source code is on GitHub under Apache 2.0, MIT and FSL-1.1-Apache-2.0.

Downloads View on GitHub MCP Guide