Skip to main content
Glama
VivekKumarNeu

mcp-lucene-server

MCP Lucene Сервер

Описание

MCP Lucene Server — это Java-реализация Model Context Protocol (MCP), разработанная для предоставления эффективных возможностей поиска и извлечения с использованием Apache Lucene. Этот сервер позволяет управлять документами и запрашивать их, используя мощные функции индексации и поиска Lucene. Он создан с использованием Spring Boot для легкой настройки и развертывания.

Related MCP server: revenuebase-mcp-server

Функции

  • Соответствие MCP: реализует основной протокол контекста модели.

  • Lucene-Powered: использует Apache Lucene для полнотекстового поиска и индексации.

  • RESTful API: предоставляет RESTful API для взаимодействия с сервером.

  • Управление документами:

    • Upsert: добавление или обновление документов в индексе Lucene.

    • Удалить: удалить документы из индекса Lucene.

    • Список: Извлечь список документов из индекса.

  • Запрос:

    • Поддерживает сложные запросы с использованием синтаксиса запросов Lucene.

    • Фильтрация: Фильтрация запросов на основе метаданных документа.

  • Статус: Проверьте статус сервера.

  • Spring Boot: создан на основе Spring Boot для легкой настройки и развертывания.

  • Dockerization: содержит инструкции по контейнеризации приложения с использованием Docker.

Оглавление

Начиная

Предпосылки

  • Java: Java 11 или выше.

  • Maven: Maven 3.6.0 или выше.

  • Docker: установите Docker, если вы планируете использовать образ Docker.

Установка

  1. Клонируйте репозиторий:

    git clone [https://github.com/your-username/mcp-lucene-server.git](https://github.com/your-username/mcp-lucene-server.git)
    cd mcp-lucene-server

    (Замените your-username на ваше имя пользователя GitHub)

  2. Соберите проект с помощью Maven:

    mvn clean install

Запуск сервера

Без Докера

  1. Запустите приложение Spring Boot:

    java -jar target/mcp-lucene-server-0.0.1-SNAPSHOT.jar

    (Точное имя файла .jar может немного отличаться в зависимости от версии вашего проекта.)

  2. По умолчанию сервер запустится на порту 8080 .

С Докером

  1. Убедитесь, что у вас установлен Docker: следуйте инструкциям на официальном сайте Docker: https://docs.docker.com/get-docker/

  2. Создайте образ Docker: перейдите в корневой каталог вашего проекта в терминале и выполните:

    docker build -t mcp-lucene-server .
  3. Запустите Docker-контейнер:

    docker run -p 8080:8080 mcp-lucene-server

    Это сопоставит порт 8080 на вашем хост-компьютере с портом 8080 внутри контейнера.

Использование

Конечные точки API

Сервер предоставляет следующие конечные точки API:

  • GET /mcp/v1/status

    • Возвращает статус сервера.

  • POST /mcp/v1/upsert

    • Вставляет (вставляет или обновляет) один или несколько документов.

    • Текст запроса:

      {
        "documents": [
          {
            "id": "doc1",
            "text": "This is the text of document 1.",
            "metadata": {
              "category": "example",
              "language": "english"
            }
          },
          {
            "id": "doc2",
            "text": "This is document 2's text.",
            "metadata": {
              "category": "sample",
              "language": "spanish"
            }
          }
        ]
      }
  • POST /mcp/v1/query

    • Запрашивает индекс Lucene.

    • Текст запроса:

      {
        "queries": [
          {
            "query": "document",
            "top_k": 10,
            "filter": {
              "language": "english"
            }
          },
           {
            "query": "text search",
            "filter": {
               "category": "example"
             }
           }
        ]
      }
    • query : строка запроса Lucene.

    • top_k : (Необязательно) Максимальное количество возвращаемых результатов (по умолчанию: 10).

    • filter : (Необязательно) Карта полей метаданных и значений для фильтрации.

  • POST /mcp/v1/delete

    • Удаляет документы из индекса Lucene.

    • Текст запроса:

      {
          "ids": ["doc1", "doc2"]
      }
  • GET /mcp/v1/list

    • Перечисляет документы из индекса Lucene.

    • Текст запроса:

      {
          "ids": ["doc1", "doc2"]
      }

Примеры

Получить статус сервера:

curl http://localhost:8080/mcp/v1/status

Вставить документы:

curl -X POST 

http://localhost:8080/mcp/v1/upsert 

-H 'Content-Type: application/json' 

-d '{
"documents": [
{
"id": "doc1",
"text": "This is the text of document 1.",
"metadata": {
"category": "example",
"language": "english"
}
},
{
"id": "doc2",
"text": "This is document 2''s text.",
"metadata": {
"category": "sample",
"language": "spanish"
}
}
]
}'

Запросить документы:

curl -X POST 

http://localhost:8080/mcp/v1/query 

-H 'Content-Type: application/json' 

-d '{
"queries": [
{
"query": "document text",
"top_k": 5,
"filter": {
"language": "english"
}
}
]
}'

Удалить документы:

curl -X POST 

http://localhost:8080/mcp/v1/delete 

-H 'Content-Type: application/json' 

-d '{
"ids": ["doc1"]
}'

Список документов:

curl -X POST 

http://localhost:8080/mcp/v1/list 

-H 'Content-Type: application/json' 

-d '{
"ids": ["doc1", "doc2"]
}'

Конфигурация

Сервер можно настроить с помощью свойств приложения Spring Boot. Вот некоторые из ключевых свойств:

  • server.port : порт, который прослушивает сервер (по умолчанию: 8080).

  • lucene.index.path : Путь к каталогу индекса Lucene. Здесь хранятся индексированные данные. Если не задано, используется местоположение по умолчанию. Настоятельно рекомендуется настроить его на постоянное место хранения.

Эти свойства можно задать в файле application.properties или application.yml в каталоге src/main/resources или с помощью переменных среды.

Пример application.properties :

server.port=8080 lucene.index.path=/путь/к/lucene/index

Лицензия

Данный проект лицензирован под лицензией Apache 2.0 .

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Appeared in Searches

Latest Blog Posts

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/VivekKumarNeu/MCP-Lucene-Server'

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