LanceDB

by lancedb

Community Database 11k likes

LanceDB's own reference MCP server is a minimal, serverless example of storing and retrieving embedded documents in LanceDB through three tools.

Add to Claude (uv)

uv --directory /path/to/lancedb_mcp run /path/to/lancedb_mcp.py

Source: https://github.com/lancedb/lancedb-mcp-server

About

lancedb-mcp-server is LanceDB's official but deliberately small reference implementation — the project describes itself as 'a basic, serverless MCP server that uses LanceDB to store and retrieve data,' meant less as a production integration and more as a template for building something bigger on top of LanceDB's embedded vector database.

It exposes three tools that cover the core loop of a retrieval workflow: ingesting documents (embedding and storing them, including whole collections at once), retrieving documents via vector similarity search, and pulling metadata about a given LanceDB table. Because LanceDB itself is embedded and serverless, the MCP server needs no separate database process — it just needs a directory on disk and the path to the server script, both of which you pass directly in your MCP client's config.

Key features

  • Serverless, embedded vector storage — no separate database server to run
  • Three tools: ingest documents, retrieve via similarity search, and fetch table metadata
  • Can ingest an entire document collection in one call, not just single files
  • Runs directly via uv with no additional infrastructure
  • Intended explicitly as a reference for building more complex LanceDB-backed MCP servers
  • Config is just a directory path and a script path — minimal setup surface

Use cases

  • Give an agent a small, local knowledge base it can query by meaning instead of exact keyword match
  • Prototype a RAG workflow before committing to a more complex vector database integration
  • Ingest a folder of blog posts or notes and let an agent retrieve relevant passages on demand
  • Use as a starting template for a custom MCP server with LanceDB-backed retrieval

Available tools

Ingest docs

Embeds and stores documents (including full collections) in a LanceDB table.

Retrieve docs

Runs a vector similarity search against stored documents and returns matches.

Get table details

Returns metadata about a specified LanceDB table.

Frequently asked questions

Do I need to run a separate LanceDB server for this to work?

No — LanceDB is embedded and serverless, so the MCP server just needs a local directory to store its tables in, not a running database process.

Is this meant to be a full-featured production integration?

Not really — LanceDB describes it as a basic reference server, intended as a starting point for building more complete MCP applications on top of LanceDB rather than a fully-featured product.