Innovaas KMS MCP Server

Innovaas KMS MCP Server

Enables interaction with the Innovaas Knowledge Management System through MCP, providing multi-modal search, RAG-powered chat with intelligent token management, and document access.

Category
Visit Server

README

🧠 Innovaas KMS MCP Server

Enhanced Model Context Protocol (MCP) server for the Innovaas RAG Knowledge Management System. This server exposes powerful multi-modal search, RAG-powered chat with intelligent token management, and comprehensive document access to external systems via the standardized MCP protocol.

⚔ Latest v1.0.0 Features

šŸŽÆ Intelligent Token Management

  • Automatic Optimization: Prevents API token limit errors (65K+ → 30K tokens)
  • Provider-Aware: Different limits for OpenAI (30K) vs Claude (200K)
  • Smart Document Selection: Prioritizes by relevance, includes summaries of excluded content
  • Zero Configuration: Works automatically with kms_chat tool

šŸ” Advanced Search Capabilities

  • Full Document Content: Complete text (4,000+ characters) instead of 200-char previews
  • Multi-Modal Search: Text, audio transcriptions, video frames, and technical content
  • Intelligent Routing: Enhanced RAG with query analysis and optimal strategy selection
  • Technical Content Detection: Find code, diagrams, and UI elements in video content

šŸ’¬ Enhanced RAG-Powered Chat

  • Comprehensive Responses: Based on complete source material with full content access
  • Source Citations: Precise document and timestamp references
  • Provider Choice: OpenAI GPT-4o-mini or Claude for different use cases
  • Context Filtering: Focus conversations by tags and document types

šŸš€ Quick Start

1. Installation

# Clone the repository
git clone https://github.com/innovaas/kms-mcp-server.git
cd kms-mcp-server

# Install dependencies
npm install

# Build the server
npm run build

2. Configuration

# Required: KMS API endpoint
export KMS_BASE_URL="https://your-kms-domain.com/kms"

# Required: Authentication key
export BACKGROUND_PROCESS_API_KEY="your-secure-api-key"
# OR use MCP-specific key
export MCP_API_KEY="your-mcp-api-key"

3. Run the Server

# Development mode
npm run dev

# Production mode
npm start

# With environment variables inline
KMS_BASE_URL="https://your-domain.com/kms" BACKGROUND_PROCESS_API_KEY="your-key" npm start

šŸ› ļø Integration Examples

Claude Desktop Configuration

Add to your Claude Desktop config file (~/.claude_desktop_config.json):

{
  "mcpServers": {
    "innovaas-kms": {
      "command": "node",
      "args": ["/path/to/kms-mcp-server/dist/index.js"],
      "env": {
        "KMS_BASE_URL": "https://your-domain.com/kms",
        "BACKGROUND_PROCESS_API_KEY": "your-secure-api-key"
      }
    }
  }
}

Cline/VSCode Integration

Configure in your MCP settings:

{
  "name": "innovaas-kms",
  "serverPath": "/path/to/kms-mcp-server/dist/index.js",
  "environment": {
    "KMS_BASE_URL": "https://your-domain.com/kms",
    "MCP_API_KEY": "your-secure-api-key"
  }
}

Programmatic Integration

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

const transport = new StdioClientTransport({
  command: "node",
  args: ["/path/to/kms-mcp-server/dist/index.js"],
  env: {
    KMS_BASE_URL: "https://your-domain.com/kms",
    MCP_API_KEY: "your-api-key"
  }
});

const client = new Client(
  { name: "kms-client", version: "1.0.0" },
  { capabilities: {} }
);

await client.connect(transport);

// Use intelligent search with full content
const result = await client.callTool({
  name: "kms_intelligent_search",
  arguments: {
    query: "What are the best practices for implementing a Unified Namespace?",
    maxResults: 10
  }
});

šŸŽÆ Available Tools

kms_chat šŸš€ Primary Tool

Comprehensive knowledge queries with intelligent token management

{
  "message": "How do I implement OEE monitoring in a manufacturing environment?",
  "provider": "openai",
  "useMultiModal": true,
  "tags": ["OEE", "manufacturing"],
  "maxResults": 15
}

āœ… Key Benefits:

  • Token Optimization: Automatically prevents API limit errors
  • Full Content Access: Complete document text (4,000+ characters)
  • Provider-Aware: Adjusts context size for OpenAI vs Claude
  • Multi-Modal Context: Combines text, video, and web sources

kms_intelligent_search

Advanced RAG search with query analysis

{
  "query": "unified namespace MQTT implementation patterns",
  "maxResults": 15,
  "filters": {
    "type": "video",
    "tags": ["UNS", "MQTT"]
  },
  "includeAnalysis": true
}

kms_multimodal_search

Search across all content types

{
  "query": "user authentication flow diagrams",
  "searchMode": "multimodal",
  "maxResults": 10,
  "filters": {
    "hasVisualContent": true,
    "documentTypes": ["video", "whitepaper"]
  }
}

kms_search

Basic semantic search

{
  "query": "manufacturing execution systems",
  "limit": 10,
  "threshold": 0.7
}

kms_get_document

Retrieve specific document

{
  "documentId": "uuid-of-document"
}

kms_get_stats

System analytics

{
  "includeProcessingDetails": true
}

kms_list_documents

Browse documents

{
  "limit": 25,
  "type": "video",
  "tags": ["training", "technical"],
  "mediaType": "video"
}

šŸŽ‰ What's Fixed in v1.0.0

āŒ Before: Token Limit Errors

Error: Request too large for gpt-4o: Limit 30000, Requested 70239

āœ… After: Intelligent Optimization

{
  "tokenOptimization": {
    "enabled": true,
    "documentsIncluded": 8,
    "documentsExcluded": 7,
    "optimization": "Included 8/15 documents, using ~27,518 tokens",
    "estimatedTotalTokens": 27518
  }
}

šŸ”§ Improvements Made

  1. Automatic Token Management: No more API limit errors
  2. Smart Document Selection: Prioritizes most relevant content
  3. Full Content Access: 4,000+ character responses vs 200-char previews
  4. Provider Optimization: Different strategies for OpenAI vs Claude
  5. Transparent Operation: Shows what was included/excluded and why

šŸ“Š System Capabilities

Current KMS Status āœ…

  • 127+ documents processed with 100% success rate
  • 1,000+ video frames extracted and analyzed
  • Multi-modal search across text, audio, and video
  • Technical content detection for code, diagrams, UI elements
  • Real-time processing pipeline with error recovery

Content Coverage

  • Technical Documentation: API docs, system architecture, code examples
  • Training Videos: 105+ processed videos with transcription and frame analysis
  • Manufacturing Content: MES, OEE, UNS, MQTT, IoT, SCADA terminology
  • Web Resources: Crawled documentation and technical resources

AI Capabilities

  • AssemblyAI: High-quality transcription with technical term boosting
  • OpenAI Embeddings: 1536-dimensional vectors for semantic search
  • Claude Vision: Technical content analysis for diagrams and code
  • Multi-Provider Chat: OpenAI GPT-4o-mini and Claude support

šŸ›”ļø Authentication & Security

API Key Authentication

# Set authentication key
export BACKGROUND_PROCESS_API_KEY="secure-random-string"

# Or use MCP-specific key
export MCP_API_KEY="mcp-specific-secure-key"

Network Configuration

  • Protocol: HTTPS (secure connection)
  • Transport: STDIO (standard for MCP)
  • Authentication: Bearer token with API key

šŸ“‹ Development

Project Structure

kms-mcp-server/
ā”œā”€ā”€ src/
│   └── index.ts           # Main MCP server implementation
ā”œā”€ā”€ dist/                  # Built files (generated by npm run build)
ā”œā”€ā”€ examples/              # Configuration examples
ā”œā”€ā”€ package.json           # Dependencies and scripts
ā”œā”€ā”€ tsconfig.json          # TypeScript configuration
└── README.md             # This file

Scripts

npm run build              # Compile TypeScript to JavaScript
npm run dev                # Development mode with hot reload
npm start                  # Run compiled server
npm run clean              # Clean build directory
npm test                   # Run tests

Requirements

  • Node.js: 18.0.0 or higher
  • TypeScript: 5.0.0 or higher
  • KMS Server: Running Innovaas KMS instance

šŸ› Troubleshooting

Common Issues

  1. Connection Failed

    Error: KMS API request failed: 500 Internal Server Error
    
    • āœ… Ensure KMS server is running
    • āœ… Check KMS_BASE_URL environment variable
    • āœ… Verify network connectivity
  2. Authentication Errors

    Error: 401 Unauthorized
    
    • āœ… Verify API key is set correctly
    • āœ… Check Bearer token format
    • āœ… Ensure KMS server has matching API key
  3. Token Limit Errors (Should be fixed)

    Error: Request too large for gpt-4o: Limit 30000, Requested 65879
    
    • āœ… Update to v1.0.0 with token optimization
    • āœ… Use kms_chat tool (automatically optimized)
    • āœ… Check tokenOptimization in responses

Debug Mode

# Enable verbose logging
DEBUG=1 npm run dev

# Check KMS server status
curl -H "Authorization: Bearer your-api-key" https://your-domain.com/kms/api/dashboard-stats

šŸ¤ Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes
  4. Run tests: npm test
  5. Build: npm run build
  6. Commit changes: git commit -m 'Add amazing feature'
  7. Push to branch: git push origin feature/amazing-feature
  8. Create Pull Request

Development Guidelines

  • Follow existing code patterns for consistency
  • Add comprehensive error handling
  • Update tool schemas when modifying parameters
  • Test with multiple MCP clients before committing
  • Document new features in README

šŸ“„ License

MIT License - see the LICENSE file for details.

šŸ”— Links

  • GitHub Repository: https://github.com/innovaas/kms-mcp-server
  • Issues: https://github.com/innovaas/kms-mcp-server/issues
  • Innovaas Website: https://innovaas.co
  • Model Context Protocol: https://modelcontextprotocol.io

šŸš€ Ready to integrate your knowledge management with any MCP-compatible system with intelligent token optimization!

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured