MCP Server logo

MCP Server

by jedrazb

This repository provides a Python implementation of an MCP server for semantic search through Search Labs blog posts indexed in Elasticsearch. It assumes you've crawled the blog posts and stored them in the `search-labs-posts` index using Elastic Open Crawler.

View on GitHub

Last updated: N/A

What is MCP Server?

A Python implementation of an MCP server designed to facilitate semantic search within Search Labs blog posts that are indexed in Elasticsearch.

How to use MCP Server?

  1. Configure Elasticsearch URL and API Key in a .env file. 2. Start the server using make dev. 3. Access the MCP Inspector at http://localhost:5173. 4. Integrate with Claude Desktop using make install-claude-config. 5. Crawl Search Labs blog posts using Elastic Open Crawler, following the provided steps for setup, configuration, index mapping, and execution.

Key features of MCP Server

  • Semantic search capabilities

  • Integration with Elasticsearch

  • Crawling functionality for Search Labs blog posts

  • Integration with Claude Desktop

  • MCP Inspector for server access

Use cases of MCP Server

  • Semantic search of blog posts

  • Integrating semantic search into Claude Desktop

  • Crawling and indexing blog content

  • Building a semantic search application with Elasticsearch

  • Enhancing search capabilities with ELSER model

FAQ from MCP Server

What is the purpose of the MCP server?

The MCP server enables semantic search of Search Labs blog posts indexed in Elasticsearch.

What is Elastic Open Crawler used for?

Elastic Open Crawler is used to crawl and index the Search Labs blog posts.

How do I configure the Elasticsearch connection?

You need to set the ES_URL and ES_AP_KEY environment variables in a .env file.

How do I integrate the MCP server with Claude Desktop?

Run the make install-claude-config command to update the claude_desktop_config.json file.

What is the ELSER model used for?

The ELSER model is used to enable semantic search capabilities in Elasticsearch.