Skip to main content
Glama
Enesp4rl4k

enterprise-knowledge-integrator

by Enesp4rl4k

🧠 Enterprise Knowledge Integrator

Подключайте корпоративные приватные данные (PDF, Excel, Word, SQL) к LLM и AI-агентам со встроенной санитизацией PII, гибридным поиском и MCP-сервером.

License: MIT Python 3.9+ FastAPI Model Context Protocol PRs Welcome

Живая панель • Быстрый старт • Настройка MCP-сервера • Архитектура • Справочник API


🌟 Зачем нужен Enterprise Knowledge Integrator?

Предприятия имеют разрозненные знания в PDF-документах политик, финансовых моделях Excel/CSV, контрактах и заметках ERP. Прямая подача этих данных в LLM часто приводит к утечке PII, галлюцинациям на числах и потере контекста.

Enterprise Knowledge Integrator — это открытое, легковесное, подключаемое промежуточное ПО, которое превращает необработанные файлы вашей компании в чистый, цитируемый и безопасный контекст для любой LLM или AI-агента.


Related MCP server: nacre

✨ Ключевые возможности

  • 📄 ETL с учётом таблиц (Excel и CSV): Преобразует строки электронных таблиц в markdown-таблицы и семантические группы строк, чтобы LLM никогда не галлюцинировали номера строк или формулы.

  • 🛡️ Встроенный санитайзер PII и секретов: Автоматически обнаруживает и маскирует TCKN, IBAN, кредитные карты, налоговые номера (VKN), телефонные номера и API-ключи перед эмбеддингом или инъекцией в промпт.

  • ⚡ Гибридный поиск (Vector + Okapi BM25 + RRF): Сочетает плотные эмбеддинги с разреженным сопоставлением по ключевым словам с использованием Reciprocal Rank Fusion (RRF) для 100% точности по финансовым кодам и числам.

  • 👥 Управление доступом на основе ролей (RBAC): Обеспечивает уровни допуска к документам (Public, Internal, Confidential, Restricted) и фильтрацию по отделам.

  • 🔍 Валидатор цитирования и галлюцинаций: Автоматически проверяет сгенерированные ответы LLM на соответствие исходным документам и вычисляет оценку уверенности.

  • 🔄 Автоматический наблюдатель за каталогами: Отслеживает ваши папки/подключённые облачные диски и автоматически переиндексирует добавленные или изменённые файлы.

  • 🔌 Универсальные шлюзы:

    • Model Context Protocol (MCP) для Cursor, Claude Desktop, Antigravity.

    • FastAPI REST API с Swagger UI.

    • Интерактивная веб-панель (не требует дополнительных зависимостей).

    • Адаптер инструментов LangChain / LangGraph.


🏛️ Системная архитектура

graph TD
    subgraph Ingestion ["1. Multi-Source Ingestion & ETL"]
        F1["📄 Documents (PDF, Word, Markdown)"]
        F2["📊 Tabular (Excel, CSV)"]
        F3["🗄️ Notes & Text Snippets"]
        F1 & F2 & F3 --> PII["🛡️ PII Masker (TCKN, IBAN, Cards)"]
        PII --> Chunk["✂️ Semantic & Parent-Child Chunker"]
    end

    subgraph Storage ["2. Storage & Hybrid Search Engine"]
        Chunk --> V["V-Store: Cosine Dense Embeddings"]
        Chunk --> B["BM25: Sparse Keyword Index"]
        V & B --> RRF["🎯 Reciprocal Rank Fusion (RRF)"]
    end

    subgraph Governance ["3. Security & Governance"]
        RRF --> RBAC["👥 RBAC & Clearance Filter"]
        RBAC --> Val["🔍 Citation & Grounding Validator"]
    end

    subgraph Interfaces ["4. LLM & Agent Gateways"]
        Val --> MCP["⚡ MCP Server (Claude Desktop / Cursor)"]
        Val --> API["🌐 FastAPI REST API (/api/v1/context)"]
        Val --> UI["🖥️ Modern Web Dashboard (/dashboard)"]
        Val --> SDK["💼 LangChain / LangGraph Adapter"]
    end

⚡ Быстрый старт за 60 секунд

1. Установка

git clone https://github.com/your-username/enterprise-knowledge-integrator.git
cd enterprise-knowledge-integrator
pip install -r requirements.txt

2. Запуск веб-панели и API

python -m knowledge_integrator.interfaces.api.app

Откройте браузер по адресу http://localhost:8088/dashboard, чтобы получить доступ к визуальной панели управления.


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

Загрузка текста / заметки политики:

python -m knowledge_integrator.interfaces.cli.main ingest-text \
  --title "2025 Travel Policy" \
  --content "Daily travel allowance is 2,500 TL. Stays above 5,000 TL require CFO approval." \
  --category "policy"

Загрузка файлов или каталогов (PDF, Excel, CSV, Word, Markdown):

python -m knowledge_integrator.interfaces.cli.main ingest ./company_docs/ --category "finance"

Поиск по базе знаний:

python -m knowledge_integrator.interfaces.cli.main query "What is the travel budget limit?"

Список проиндексированных документов:

python -m knowledge_integrator.interfaces.cli.main list

⚡ Сервер Model Context Protocol (MCP)

Подключайте корпоративные знания напрямую к Claude Desktop, Cursor IDE или Antigravity.

Добавьте это в ваш claude_desktop_config.json или cursor settings:

{
  "mcpServers": {
    "company-knowledge": {
      "command": "python",
      "args": ["-m", "knowledge_integrator.interfaces.cli.main", "serve-mcp"]
    }
  }
}

Доступные MCP-инструменты:

  • search_company_knowledge: Выполняет гибридный поиск по приватным документам компании.

  • get_company_context: Возвращает чистый, цитируемый контекст, готовый для инъекции в промпт.

  • list_company_documents: Перечисляет все проиндексированные источники и метаданные.

  • ingest_company_note: Динамически сохраняет новую политику или фрагмент знаний.


🌐 Справочник REST API

Метод

Конечная точка

Описание

POST

/api/v1/ingest/file

Загрузка и индексация файла (PDF, Excel, CSV, Word, MD)

POST

/api/v1/ingest/text

Загрузка необработанной корпоративной заметки или правила

POST

/api/v1/context

Получение цитируемого блока контекста, готового для LLM

POST

/api/v1/search

Поиск ранжированных фрагментов (гибридный)

GET

/api/v1/documents

Список всех проиндексированных документов

DELETE

/api/v1/documents/{id}

Удаление документа и всех связанных эмбеддингов

Интерактивная документация Swagger доступна по адресу: http://localhost:8088/docs


🤖 Интеграция с Python и LangChain / LangGraph

from knowledge_integrator import KnowledgeEngine
from knowledge_integrator.agentic_cfo_adapter import AgenticCFOKnowledgeAdapter

# 1. Initialize engine
engine = KnowledgeEngine()

# 2. Ingest document
engine.ingest_file("budget_2025.xlsx", category="finance")

# 3. Retrieve LLM context
ctx = engine.get_context_for_llm("What was the Q3 software budget?")
print(ctx.context_text)

# 4. Use as a LangChain / LangGraph Tool for AI Agents
adapter = AgenticCFOKnowledgeAdapter(engine)
agent_tool = adapter.as_langchain_tool()

🐳 Развёртывание в Docker

docker-compose up -d

🧪 Запуск тестов

python -m pytest knowledge_integrator/tests/ -v

📄 Лицензия

Этот проект распространяется под лицензией MIT — подробности см. в файле LICENSE.

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables document ingestion, semantic search, and retrieval-augmented generation via MCP tools and REST API, using vector embeddings and intelligent chunking.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Provides a self-hosted knowledge index with document-level permissions, enabling AI agents to retrieve exactly the documents they are authorized to see via MCP. Supports OAuth 2.1, custom embedding models, and runs inside your network.
    26 npm
    2
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to query and manage a document knowledge base via MCP, with RAG-powered search and grounded answers with citations.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to securely search and list internal company documents via MCP tools, so they can answer employee questions based on current internal documentation.
    -