MCP ArcKnowledge

Как это работает?

Это сервер протокола контекста модели (MCP) для ваших пользовательских конечных точек веб-перехватчиков (база знаний).
С этим вы можете легко управлять и запрашивать ваш список базы знаний (конечные точки веб-перехвата). Вы можете добавлять новые источники документов, регистрируя их URL-адреса, и по желанию предоставлять описание и ключ API.
Вы также можете составить список всех зарегистрированных источников документов и просмотреть их данные.
Когда вы будете готовы задать вопрос/выполнить поиск, вы можете отправить запрос в базу знаний с помощью текстового вопроса, указав, в каких источниках выполнять поиск, или оставив поле пустым, чтобы выполнить поиск по всем источникам.
Затем инструмент объединит результаты из запрошенных источников и предоставит их вам.
Предпосылки
Идти
Питон 3.6+
Приложение Anthropic Claude Desktop (или Cursor или Cline)
UV (менеджер пакетов Python), установка с помощью
curl -LsSf https://astral.sh/uv/install.sh | sh
Related MCP server: PDF RAG MCP Server
Концепция
Представьте себе возможность объединить одну унифицированную настройку, в которой вы можете соединить все конечные точки вашей пользовательской базы знаний веб-перехватчиком в одну конфигурацию, устраняя необходимость в нескольких серверах MCP.
Демо



Установка Установка
Клонировать репозиторий
Настройте конечные точки. Сделайте копию или измените
knowledge_document_sources.json. Смотрите папкуsample_endpointдля ссылок на текущую схему API конечных точек знаний, поддерживаемую. Вы можете изменить код по своему усмотрению в соответствии с вашими потребностями.Подключиться к серверу MCP
Скопируйте приведенный ниже json-файл с соответствующими значениями {{PATH}}:
{ "mcpServers": { "mcp-arcknowledge": { "command": "cmd /c uv", "args": [ "--directory", "C:/Users/Acer/OneDrive/GitHub/YourDrive", "run", "main.py" ], "env": { "DOCUMENT_SOURCES_PATH": "C:/Users/Acer/OneDrive/GitHub/YourDrive/testcustomother.json" } } } }
Для Claude сохраните это как claude_desktop_config.json в каталоге конфигурации Claude Desktop по адресу:
Для Cursor сохраните это как mcp.json в каталоге конфигурации Cursor по адресу:
Для cline сохраните это как cline_mcp_settings.json в вашей конфигурации
Перезапустите клиент: Claude Desktop / Cursor / Cline / Windsurf Откройте и перезапустите клиентскую среду для mcp. Например, Claude/Cursor/Cline/и т. д.
Совместимость с Windows
Если вы запускаете этот проект на Windows, учтите, что go-sqlite3 требует включения CGO для правильной компиляции и работы. По умолчанию CGO отключен на Windows , поэтому вам нужно явно включить его и установить компилятор C.
Шаги, которые нужно выполнить:
Установить компилятор C
Мы рекомендуем использовать MSYS2 для установки компилятора C для Windows. После установки MSYS2 обязательно добавьте папкуucrt64\binв вашPATH.
→ Пошаговое руководство доступно здесь .
Обзор архитектуры
Это приложение состоит из простого основного компонента:
Сервер Python MCP ( main.py ): сервер Python, реализующий протокол контекста модели (MCP), который предоставляет стандартизированные инструменты клиенту для взаимодействия с данными и вызова API.
Хранение данных
Все хранилище находится на локальном главном сервере Python во время выполнения.
Технические подробности
Клиент отправляет запросы на сервер Python MCP
Сервер MCP ищет в своей базе знаний конфигурации времени выполнения.
Затем на основе ваших запросов он вызывает API конечной точки вашей базы знаний,
Поиск неисправностей
Если при запуске uv у вас возникли проблемы с правами доступа, вам может потребоваться добавить его в PATH или использовать полный путь к исполняемому файлу.
Для корректной работы интеграции убедитесь, что приложение Go и сервер Python запущены.
Запуск сервера
Конфигурация Запустите сервер в режиме разработки:
Или установите его для использования с Клодом:
Доступные инструменты
1. По умолчанию загружает список знаний из knowledge_document_sources.json
По умолчанию загружает источники знаний из конфигурации
Вы можете загрузить пользовательские знания из конфигурации среды mcp.json
2. Перечислите все зарегистрированные на данный момент источники знаний.
Показывает и поясняет список всех зарегистрированных источников знаний.
3. Добавить новый источник документа знаний
Добавить новый источник документа arcknowledge endpoint url. Укажите url, описание цели и apikey (если есть)
4. Запрос конкретного источника документа знаний
Выполните запрос к базе данных arcknowledge, созданной на основе этих источников, используя query_knowledge_base.
Функции инструмента
add_new_knowledge_document_source(url: str, description:str = None, apikey:str = None) -> strРегистрирует новый URL-адрес источника документа, при необходимости с описанием и ключом API.
Возврат: подтверждающее сообщение с новым идентификатором источника.
list_knowledge_document_sources() -> Dict[str, Dict[str, str]]Перечисляет все зарегистрированные источники документов.
Возвращает: словарь, сопоставляющий идентификаторы источников с их данными (URL, описание, ключ API).
query_knowledge_base(query: str, source_ids: List[str] = [], image: str = '') -> strЗапрашивает указанные источники документов (или все, если не указано ни одного) с помощью текстового запроса и дополнительных данных изображения.
Возвращает: агрегированные результаты из запрошенных источников.
Разработка
Важные файлыСтруктура проекта
Конфигурация курсора AI MCP
Создайте файл
mcp.jsonв корневом каталоге вашего проекта:
Настроить курсор ИИ:
Открыть настройки курсора AI
Перейдите в раздел MCP
Добавьте путь к вашему файлу
mcp.jsonПерезапустите Cursor AI, чтобы применить изменения.
Проверьте конфигурацию:
Добавление новых функций
Определить новые модели в
main.pyДобавьте новые инструменты с помощью декоратора
@mcp.tool()Обновляйте документацию по мере необходимости.
Лицензия
Массачусетский технологический институт
Внося вклад
Форк репозитория
Создайте свою ветку функций
Зафиксируйте ваши изменения
Нажмите на ветку
Создать новый запрос на извлечение