Vectorize MCP Server

Vectorize MCP Server

Provides semantic search capabilities by connecting Claude Desktop to a Cloudflare Workers backend powered by Vectorize. It enables natural language querying of knowledge bases using vector similarity and edge-based embedding generation.

Category
Visit Server

README

Vectorize MCP Server

A Model Context Protocol (MCP) server that provides semantic search capabilities by connecting Claude Desktop to a Cloudflare Workers backend with Vectorize.

Architecture

Claude Desktop ──stdio──> MCP Server ──HTTP──> Vectorize Worker ──> Vectorize Index

This is a hybrid architecture - the MCP server runs locally and bridges Claude Desktop to a remote Cloudflare Workers backend.

Features

  • Semantic Search Tool: Natural language search using vector similarity
  • stdio Transport: Works with Claude Desktop and other MCP clients
  • Remote Backend: Heavy lifting (embeddings, vector search) happens on Cloudflare Workers
  • Type-safe: Full TypeScript implementation

Prerequisites

Installation

1. Clone and install:

git clone https://github.com/dannwaneri/vectorize-mcp-server.git
cd vectorize-mcp-server
npm install

2. Build:

npm run build

3. Configure Claude Desktop:

Edit your Claude Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add this server:

{
  "mcpServers": {
    "vectorize-search": {
      "command": "node",
      "args": [
        "/absolute/path/to/vectorize-mcp-server/dist/index.js"
      ]
    }
  }
}

4. Restart Claude Desktop

Usage

The server exposes one tool to Claude:

semantic_search

Search the knowledge base using semantic similarity.

Parameters:

  • query (string, required): Natural language search query
  • topK (number, optional): Number of results to return (default: 5)

Example in Claude Desktop:

Search for information about AI embeddings

Claude will automatically use the semantic_search tool and return results with similarity scores.

How It Works

  1. Claude sends query to MCP server via stdio
  2. MCP server forwards query to Vectorize Worker via HTTP
  3. Worker generates embedding using Workers AI
  4. Vectorize searches for similar vectors
  5. Results flow back through MCP server to Claude
  6. Claude synthesizes answer using the search results

Configuration

Change Backend URL

Edit src/index.ts and update the Worker URL:

const WORKER_URL = "https://your-worker.workers.dev";

Then rebuild:

npm run build

Adjust Result Count

The default topK is 5. Users can override this:

Search for "databases" and show me 10 results

Development

Run in development mode:

npm run dev

Build for production:

npm run build

Test locally:

node dist/index.js

The server will output: Vectorize MCP server running on stdio

Example Queries

Try these in Claude Desktop:

What do you know about vector databases?
Find information about RAG systems
Search for anything related to Cloudflare Workers
Tell me about machine learning at the edge

Response Format

The tool returns JSON with:

  • query: Original search query
  • resultsCount: Number of results found
  • results: Array of matches with:
    • id: Entry identifier
    • score: Similarity score (0-1, higher is better)
    • content: Actual content
    • category: Content category

Claude automatically parses this and presents it naturally.

Troubleshooting

Server not appearing in Claude Desktop:

  1. Check the config file path is correct
  2. Verify the absolute path to dist/index.js
  3. Make sure you restarted Claude Desktop completely (quit, not just close)
  4. Check Developer Console (Ctrl+Shift+I in Claude Desktop)

"Not connected" errors:

  1. Ensure Worker is deployed and accessible
  2. Check WORKER_URL in src/index.ts
  3. Verify Worker has data populated (POST /populate)

No results returned:

  1. Populate the Vectorize index using the Worker's /populate endpoint
  2. Try broader search terms
  3. Check Worker logs with wrangler tail

Technology Stack

  • TypeScript: Type-safe development
  • @modelcontextprotocol/sdk: Official MCP SDK
  • Node.js: Runtime environment
  • stdio transport: Standard MCP communication method

Related Projects

Why This Architecture?

Advantages:

  • Works with Claude Desktop (requires stdio)
  • Backend runs on edge (fast, scalable)
  • Can share Worker backend across multiple clients
  • Heavy processing (embeddings, search) happens remotely

Tradeoffs:

  • Requires both local server and remote Worker
  • Extra network hop adds latency (~50-100ms)
  • Need to keep local server running

For a fully remote solution, see mcp-server-worker.

License

MIT

Author

Daniel Nwaneri - GitHub | Upwork

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured