Unified Enterprise Knowledge Search (Advanced track)#4
Merged
Conversation
torrmal
approved these changes
Nov 6, 2025
|
👍 |
1 similar comment
|
👍 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Area51 - Unified Enterprise Knowledge Search (Advanced Track)
A production-ready AI-powered search system that unifies Zendesk tickets, Jira issues, and Confluence documentation into a single semantic search interface. Built with MindsDB Knowledge Bases for intelligent, context-aware discovery across all your enterprise knowledge sources.
Demo
Featured
Problem Statement
Modern enterprises battle knowledge fragmentation every day. Critical information is scattered across three distinct platforms:
This fragmentation creates real operational costs. Support agents waste 20+ minutes per ticket switching between systems, trying to piece together context that exists but isn't discoverable. An engineer investigating a bug can't easily see customer impact. Documentation teams operate blind to actual support needs.
The result: slower resolutions, duplicated effort, and knowledge that never reaches the people who need it.
Area51 solves this by creating a unified semantic search layer that understands relationships and context across all three platforms simultaneously.
Architecture
Area51 integrates Zendesk, Jira, and Confluence through MindsDB Knowledge Bases, using hybrid semantic search to provide intelligent results across all sources.
Core Components
Data Integration Layer
Knowledge Base Layer
Automation Layer
Query Layer
Three agent interfaces providing different interaction models:
Evaluation Framework
Built-in MindsDB evaluation metrics track search performance continuously:
Knowledge Base Schema
Each knowledge base follows a consistent schema that combines semantic search with structured metadata filtering.
Zendesk Knowledge Base
Storage: pgvector with Azure OpenAI embeddings
idsubjectdescriptionprioritystatusassignee_idrequester_idbrand_idcreated_atupdated_attypetagsurlorganization_idgroup_iddue_atcustom_fieldssatisfaction_rating.scoreJira Knowledge Base
idkeyproject_idproject_keyproject_namesummarydescriptionprioritycreatorassigneestatusConfluence Knowledge Base
idstatustitlespaceIdauthorIdownerIdcreatedAtbody_storage_valueversion_number_links_webuiSQL Examples
Semantic Search
Find relevant tickets using natural language understanding:
The semantic search understands that "docker" relates to "open source hosting" without requiring exact keyword matches.
Structured Filtering
Query specific metadata fields for precise results:
Hybrid Search
Combine semantic understanding with structured metadata filters:
This query semantically searches for 2fa-related content while simultaneously filtering by while using hybrid search functionality of mindsDb.
Scheduled Refresh Jobs
Keep knowledge bases current with automatic incremental updates:
CREATE JOB jira_refresh_job ( insert into jira_kb select * from jira_datasource.issues; ) EVERY hour;Evaluation Metrics
Monitor search quality continuously:
EVALUATE KNOWLEDGE_BASE confluence_kb USING test_table = 'pgvector_datasource.confluence_test_table', version = 'doc_id', generate_data = false, evaluate = true;Returns comprehensive metrics including Hit@1, Hit@5, Hit@10, MRR, and recall scores.
Performance Metrics
Area51 achieves strong performance across all three knowledge bases with sub-second query times and high relevance.
Detailed Evaluation Results
The evaluation framework generates comprehensive metrics showing retrieval performance across different query types and confidence thresholds.
Comparative Analysis
Side-by-side comparison of knowledge base performance across multiple evaluation dimensions.
Metrics are generated using MindsDB's built-in evaluation framework, which calculates hit rates, cumulative recall, and mean reciprocal rank. The system auto-generates test questions from knowledge base content for continuous quality monitoring.
Setup
Prerequisites
Installation
For detailed installation instructions, see QUICKSTART.md.
Usage
LangGraph Conversational Agent
The LangGraph agent provides a visual development interface and conversational interaction with your knowledge bases through an intelligent routing system.
Starting the LangGraph Server
Launch the LangGraph development server:
The server will start on
http://127.0.0.1:2024and automatically open LangChain Studio in your browser.Server output:
Graph Architecture
The support_agent graph uses intelligent routing to search across all knowledge bases:
search_jira- Search Jira issuessearch_zendesk- Search Zendesk ticketssearch_confluence- Search Confluence documentationUsing LangGraph Studio
Example Interaction
Query: "authentication failures on payment API"
Agent Response:
API Access
You can also interact with the agent programmatically via the REST API:
Debugging & Monitoring
Use the "Trace" button in Studio to inspect the execution flow through each node, making it easy to debug routing decisions and understand how queries are processed.
The Studio interface provides real-time visibility into:
MindsDB SQL Agent
The MindsDB SQL agent provides a high-performance interface for direct queries to your knowledge bases. It's automatically created during setup and accessible through both the MindsDB Studio UI and the SDK.
Using MindsDB Studio UI
http://localhost:47334The agent understands your question semantically and returns relevant results from all knowledge bases, automatically routing to Jira, Zendesk, or Confluence as needed.
Example Query
Query:
Response:
Direct Knowledge Base Queries
You can also query knowledge bases directly using MindsDB SDK:
Semantic Search Queries
Query knowledge bases semantically using SQL:
MCP Server
The MCP (Model Context Protocol) server enables AI assistants like Cursor and Claude Desktop to search across all knowledge bases through natural conversation.
Starting the Server
Launch the FastMCP server with Server-Sent Events (SSE) transport:
The server will start on
http://127.0.0.1:5000/ssewith the name "Support Agent Assistant".Server output:
Available Tools
The MCP server exposes these tools for AI assistants:
search_zendesk- Search Zendesk tickets semanticallysearch_jira- Search Jira issues semanticallysearch_confluence- Search Confluence documentationsearch_all- Unified search across all knowledge basesevaluate_kb- Get evaluation metrics for a knowledge baseConfigure Cursor
To use Area51's MCP server in Cursor:
{ "mcpServers": { "area51-support-agent": { "command": "uv", "args": ["run", "fastmcp", "run", "/path/to/enterprise-search/server.py", "--transport=sse"], "env": { "MINDSDB_URL": "http://localhost:47334" } } } }Once configured, you can ask Cursor: "Search for authentication errors in Zendesk" and it will use the MCP server to query your knowledge bases.
Session Management
The server uses session IDs for maintaining conversation context. Each interaction creates a session that persists throughout the conversation. Session IDs are automatically generated and managed by the server.
Alternative: Claude Desktop Configuration
For Claude Desktop, configure in
~/.claude_desktop_config.json:{ "mcpServers": { "enterprise-search": { "command": "uv", "args": ["run", "fastmcp", "run", "server.py", "--transport=sse"] } } }Documentation
Full MCP configuration details: https://gofastmcp.com
Why MindsDB
Traditional RAG systems require stitching together multiple components:
MindsDB consolidates this into a single SQL-native platform. Creating a knowledge base requires one
CREATE KNOWLEDGE_BASEstatement. Scheduling incremental updates is aCREATE JOBstatement. Evaluation is a singleEVALUATEcommand.The result: a production-ready, multi-source RAG system built in days instead of months, with orders of magnitude less code to maintain.
Advanced Track Submission
INSERT INTOINSERT INTOSQL statements.SELECT * FROM zendesk_kb WHERE content='2fa' AND hybrid_search=true AND hybrid_search_alpha=0.6 LIMIT 10;.CREATE JOB) for auto-updatesCREATE JOB jira_refresh_job (INSERT INTO jira_kb SELECT * FROM jira_datasource.issues;) EVERY hour;.WHERE status='In Progress'and hybrid filters usingLIKEandBETWEENoperators.EVALUATE KNOWLEDGE_BASEcommand.Authors
Built by the Area51 team.
@vaarshha @vigbav36 @prasnna-saravanan