Skip to main content
Glama

MCP Embedding Search

A Model Context Protocol (MCP) server that queries a Turso database containing embeddings and transcript segments. This tool allows users to search for relevant transcript segments by asking questions, without generating new embeddings.

Features

  • 🔍 Vector similarity search for transcript segments
  • 📊 Relevance scoring based on cosine similarity
  • 📝 Complete transcript metadata (episode title, timestamps)
  • ⚙️ Configurable search parameters (limit, minimum score)
  • 🔄 Efficient database connection pooling
  • 🛡️ Comprehensive error handling
  • 📈 Performance optimized for quick responses

Configuration

This server requires configuration through your MCP client. Here are examples for different environments:

Cline Configuration

Add this to your Cline MCP settings:

{ "mcpServers": { "mcp-embedding-search": { "command": "node", "args": ["/path/to/mcp-embedding-search/dist/index.js"], "env": { "TURSO_URL": "your-turso-database-url", "TURSO_AUTH_TOKEN": "your-turso-auth-token" } } } }

Claude Desktop Configuration

Add this to your Claude Desktop configuration:

{ "mcpServers": { "mcp-embedding-search": { "command": "node", "args": ["/path/to/mcp-embedding-search/dist/index.js"], "env": { "TURSO_URL": "your-turso-database-url", "TURSO_AUTH_TOKEN": "your-turso-auth-token" } } } }

API

The server implements one MCP tool:

search_embeddings

Search for relevant transcript segments using vector similarity.

Parameters:

  • question (string, required): The query text to search for
  • limit (number, optional): Number of results to return (default: 5, max: 50)
  • min_score (number, optional): Minimum similarity threshold (default: 0.5, range: 0-1)

Response format:

[ { "episode_title": "Episode Title", "segment_text": "Transcript segment content...", "start_time": 123.45, "end_time": 167.89, "similarity": 0.85 } // Additional results... ]

Database Schema

This tool expects a Turso database with the following schema:

CREATE TABLE embeddings ( id INTEGER PRIMARY KEY AUTOINCREMENT, transcript_id INTEGER NOT NULL, embedding TEXT NOT NULL, FOREIGN KEY(transcript_id) REFERENCES transcripts(id) ); CREATE TABLE transcripts ( id INTEGER PRIMARY KEY AUTOINCREMENT, episode_title TEXT NOT NULL, segment_text TEXT NOT NULL, start_time REAL NOT NULL, end_time REAL NOT NULL );

The embedding column should contain vector embeddings that can be used with the vector_distance_cos function.

Development

Setup

  1. Clone the repository
  2. Install dependencies:
npm install
  1. Build the project:
npm run build
  1. Run in development mode:
npm run dev

Publishing

The project uses changesets for version management. To publish:

  1. Create a changeset:
npm run changeset
  1. Version the package:
npm run version
  1. Publish to npm:
npm run release

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT License - see the LICENSE file for details.

Acknowledgments

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

A Model Context Protocol server that searches transcript segments in a Turso database using vector similarity, allowing users to find relevant content by asking questions without generating new embeddings.

  1. Features
    1. Configuration
      1. Cline Configuration
      2. Claude Desktop Configuration
    2. API
      1. search_embeddings
    3. Database Schema
      1. Development
        1. Setup
        2. Publishing
      2. Contributing
        1. License
          1. Acknowledgments

            Related MCP Servers

            • -
              security
              F
              license
              -
              quality
              A Model Context Protocol server that provides AI-powered features for the Transcripter project, including tools for searching and summarizing transcriptions and resources for accessing transcription and analysis data.
              Last updated -
              690
              TypeScript
            • -
              security
              A
              license
              -
              quality
              A Model Context Protocol server that enables semantic search capabilities by providing tools to manage Qdrant vector database collections, process and embed documents using various embedding services, and perform semantic searches across vector embeddings.
              Last updated -
              89
              TypeScript
              MIT License
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that enables retrieval of transcripts from YouTube videos. This server provides direct access to video transcripts and subtitles through a simple interface, making it ideal for content analysis and processing.
              Last updated -
              1
              258
              10
              TypeScript
              MIT License
              • Linux
              • Apple
            • -
              security
              -
              license
              -
              quality
              A Model Context Protocol server that enables searching YouTube videos, retrieving and storing transcripts, and performing semantic search over video content without using the official YouTube API.
              Last updated -
              1
              Python
              MIT License

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/spences10/mcp-embedding-search'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server