Catalyst MCP Server
An MCP server that loads and serves Knowledge Packs to connect AI assistants with business systems like databases, DevOps tools, and APIs.
README
Catalyst MCP Server
MCP (Model Context Protocol) server implementation that loads and serves Knowledge Packs.
Features
- MCP server implementation with FastAPI
- LibreChat integration for web interface
- Docker deployment support
- Knowledge Pack loading from YAML configurations
- Authentication and rate limiting
- Support for multiple AI models (Claude, GPT, Gemini)
Quick Start
1. Clone and Configure
# Clone the repository
git clone https://github.com/billebel/catalyst_mcp.git
cd catalyst_mcp
# Copy environment template
cp .env.example .env
# Edit .env with your API keys
nano .env
2. Set Your API Keys
Edit .env file:
# Add your API keys
ANTHROPIC_API_KEY=your-claude-api-key
OPENAI_API_KEY=your-openai-api-key # Optional
GOOGLE_API_KEY=your-gemini-api-key # Optional
# JWT secrets (change for production!)
JWT_SECRET=your-secure-jwt-secret
JWT_REFRESH_SECRET=your-secure-refresh-secret
3. Start with Docker
# Start the complete stack
docker-compose up -d
# View logs
docker-compose logs -f
4. Access Your AI Assistant
- Web Chat Interface: http://localhost:3080
- MCP Server: http://localhost:8443
- API Documentation: http://localhost:8443/docs
Architecture
graph TD
A[AI Assistant<br/>Claude Desktop] --> B[MCP Protocol]
C[Web Chat<br/>LibreChat] --> B
B --> D[Catalyst MCP Server]
D --> E[Knowledge Packs]
E --> F[Your Business Systems]
F --> G[Databases]
F --> H[REST APIs]
F --> I[Cloud Services]
Knowledge Packs
Catalyst includes example Knowledge Packs for common business systems:
| Pack | Description | Use Cases |
|---|---|---|
| PostgreSQL Analytics | Database queries and reporting | Business intelligence, data analysis |
| GitHub DevOps | Repository management and CI/CD | Code management, deployment tracking |
| GitLab DevOps | GitLab API integration | Project management, pipeline monitoring |
| Linux Server Admin | Server management and monitoring | System administration, log analysis |
| RabbitMQ Messaging | Message queue management | Queue monitoring, message handling |
| S3 Storage | AWS S3 file operations | File management, backup operations |
Creating Custom Packs
Create Knowledge Packs using the Catalyst Builder:
# Install the pack builder
pip install catalyst-builder
# Create a new CRM integration pack
catalyst-packs create crm-integration \
--type rest \
--description "Connect to our CRM system"
# This generates a complete pack structure:
# crm-integration/
# ├── pack.yaml # Main configuration
# ├── tools/ # Tool definitions
# ├── prompts/ # AI prompts
# └── README.md # Documentation
The generated pack.yaml:
metadata:
name: crm-integration
description: "Connect to our CRM system"
domain: sales
connection:
type: rest
base_url: "https://api.yourcrm.com/v1"
auth:
method: bearer
token: "${CRM_API_TOKEN}"
tools:
- name: search_customers
type: search
description: "Find customers by name or email"
endpoint: "/customers/search"
Pack Builder Resources:
- Catalyst Builder GitHub - Complete documentation
- Getting Started Guide - Step-by-step tutorial
- CLI Reference - All available commands
- Pack Development Guide - Advanced configuration
Deployment Options
Docker Compose (Recommended)
# Production deployment
docker-compose up -d
# Development with hot reload
docker-compose -f docker-compose.yml -f docker-compose.override.yml up -d
Local Development
# Install Python dependencies
pip install -r requirements.txt
# Start MCP server
python -m catalyst_mcp.server
# Start chat interface (separate terminal)
# See docs/chat-customization.md for LibreChat setup
Configuration
Environment Variables
| Variable | Description | Required | Default |
|---|---|---|---|
MCP_PORT |
MCP server port | No | 8443 |
MCP_HOST |
Server bind address | No | 0.0.0.0 |
LOG_LEVEL |
Logging level | No | INFO |
ANTHROPIC_API_KEY |
Claude API key | Yes* | - |
OPENAI_API_KEY |
OpenAI API key | No | - |
GOOGLE_API_KEY |
Gemini API key | No | - |
JWT_SECRET |
Chat authentication | Yes | - |
ALLOW_REGISTRATION |
Allow new users | No | false |
*At least one AI provider API key is required.
Chat Interface Customization
Catalyst uses LibreChat for the web interface. Customize:
- Branding: Edit
librechat.yamlfor colors, logos - Authentication: Configure OAuth providers in
.env - Models: Enable/disable AI models per user
- Plugins: Add custom plugins and tools
AI Assistant Integration
Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"catalyst": {
"command": "mcp-client",
"args": ["--url", "http://localhost:8443"]
}
}
}
ChatGPT/OpenAI
Use the MCP-compatible plugin or direct API integration.
Custom AI Applications
Connect any MCP-compatible AI application:
import mcp_client
# Connect to Catalyst MCP server
client = mcp_client.MCPClient("http://localhost:8443")
# Use business tools
result = client.call_tool("search_customers", {"query": "ACME Corp"})
Security Features
Authentication & Authorization
- JWT-based session management
- Role-based access control
- OAuth provider integration (GitHub, Google, etc.)
API Security
- Rate limiting and request throttling
- Input validation and sanitization
- Audit logging for compliance
Deployment Security
- HTTPS/TLS encryption
- Environment variable secrets
- Container isolation
Examples & Use Cases
Business Intelligence
Use the Catalyst Builder to create database analytics packs:
catalyst-packs create bi-dashboard --type database --description "Executive dashboard"
DevOps Automation
Create deployment and monitoring packs:
catalyst-packs create devops-tools --type rest --description "CI/CD automation"
Customer Support
Build support system integrations:
catalyst-packs create support-tools --type rest --description "Help desk integration"
Community & Support
- Catalyst Builder: catalyst-builder on PyPI
- Documentation: Complete Pack Development Guide
- GitHub Issues: Report bugs and request features
License
MIT License
Quick Commands
# Start everything
docker-compose up -d
# View logs
docker-compose logs -f catalyst-mcp
# Stop services
docker-compose down
# Create custom packs
pip install catalyst-builder
catalyst-packs create my-integration --type rest
Getting Started
- Clone repository:
git clone https://github.com/billebel/catalyst_mcp.git - Install pack builder:
pip install catalyst-builder - Create packs as needed
- Deploy with Docker:
docker-compose up -d
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.