DBchat
A powerful MCP server that lets you have natural language conversations with your database. Ask it to do complex analysis, generate beautiful visualizations, or build custom interactive dashboards based your data. Works with any JDBC-compatible database with support for most SQL DBs like PostgreSQL, MySQL, Oracle, SQL Server, SQLite, MongoDB, etc
Install / Use
/learn @skanga/DBchatREADME
DBChat - Talk to Your Database using AI
Transform your database into an intelligent conversational partner. Ask questions in plain English, get instant answers, and create beautiful visualizations - all through Claude Desktop or any other MCP Client.
🌟 What is DBChat?
DBChat is a bridge that connects any MCP client like Claude Desktop, Gemini-CLI, etc to your database, enabling natural language database interactions. Instead of writing SQL queries, simply ask the chatbot questions about your data and get instant, intelligent responses.
Before DBChat:
SELECT c.name, COUNT(o.id) as order_count, SUM(o.total) as revenue
FROM customers c
LEFT JOIN orders o ON c.id = o.customer_id
WHERE o.created_at >= '2024-01-01'
GROUP BY c.id, c.name
ORDER BY revenue DESC
LIMIT 10;
With DBChat:
"Show me our top 10 customers by revenue this year"
🎯 Why Use DBChat?
🗣️ Natural Language Database Queries
- Ask questions in plain English: "How many customers signed up last month?"
- Get conversational responses: The LLM explains the data and provides businessInsights
- No SQL knowledge required: Perfect for business users and analysts
📊 Instant Data Visualizations
- Automatic chart creation: Claude generates beautiful charts from your data
- Multiple chart types: Line charts, bar charts, pie charts, scatter plots, and more
- Interactive businessInsights: Drill down into your data with follow-up questions
🔍 Smart Data Exploration
- Database discovery: "What tables do we have?" "Show me the customer table structure"
- Relationship understanding: The AI model explains how your tables connect
- Data quality businessInsights: Find duplicates, missing data, and anomalies
💼 Business Intelligence Made Easy
- Executive dashboards: "Create a sales summary for our board meeting"
- Trend analysis: "Show me user growth over the past 6 months"
- Performance metrics: "Which products are underperforming?"
✨ Advanced Features
DBChat now includes powerful features for interactive demos, onboarding, collaborative analysis, and sophisticated business intelligence workflows.
🚀 MCP Prompts Support
Revolutionary structured workflow system for guided database analysis and business intelligence.
- Professional Business Scenarios: Pre-built scenarios for Retail/E-commerce, Finance/Banking, and Logistics with realistic business contexts
- Interactive Demo Templates: Complete 15-20 minute guided workflows with:
- Business narratives with protagonists and deadlines
- Step-by-step analytical progression
- Multiple choice decision points
- Expected outcomes and insights for each step
- Three Sophisticated Prompt Types:
mcp-demo- Complete interactive demo with business scenariosbusiness-intelligence- Comprehensive BI analysis frameworkdatabase-analysis- Enhanced database exploration workflow
- MCP Protocol Integration: Full compliance with MCP prompts protocol including
prompts/listandprompts/gethandlers - How to start: Use any prompt-aware MCP client and select from available structured prompts for guided analysis
🎯 Interactive Multiple Choice Workflow System
Sophisticated workflow engine for structured data exploration and analysis.
- Structured Progressions: Step-by-step workflows with contextual multiple choice options
- Scenario-Specific Content: Tailored workflows for retail, finance, and logistics business domains
- State Management: Tracks user choices and workflow progression throughout analysis sessions
- New MCP Tools:
start_workflow- Initiates interactive analysis workflows with business contextworkflow_choice- Processes user selections and advances workflow steps
- MCP Resources:
workflow://statusresource shows active workflow status and progress - Integration Ready: Seamlessly works with demo data setup and insights collection systems
🛠️ Automatic Demo Data Setup
Intelligent database population system for demonstrations and onboarding.
- Realistic Business Scenarios: Choose from Retail, Finance, or Logistics domains
- Database-Agnostic: Works across all supported database types and configurations
- Comprehensive Data Models:
- Retail: Customers, Products, Orders, Inventory with realistic relationships
- Finance: Accounts, Transactions, Customers, Loans with financial data patterns
- Logistics: Shipments, Routes, Warehouses, Deliveries with supply chain data
- Instant Setup: 2-3 related tables per scenario with 10-15 representative rows each
- Sample Analytics: Pre-built queries and analysis examples for each scenario
- Cleanup Capabilities: Automatic reset and cleanup functionality for fresh demonstrations
🧠 Enhanced Insights Collection System
Professional business intelligence capture and reporting system.
- Structured Insight Model: Comprehensive insights with categories, priorities, timestamps, and metadata
append_insightTool: Advanced tool for capturing structured business findings with:- Content validation and sanitization
- Automatic categorization with visual indicators
- Priority assignment (high/medium/low)
- Security audit logging
- Professional Memo Generation:
- Comprehensive Memos: Executive summaries, categorized findings, priority insights, timeline analysis
- Quick Summaries: Fast consumption format for rapid business updates
- Multi-format Support: Both detailed and summary formats available
- MCP Resources Integration:
insights://memo- Professional business intelligence reportinsights://summary- Quick overview of collected insights- Dynamic resource discovery as insights are captured
- Persistent Storage: Auto-save to JSON with load/restore capabilities and export functionality
- Real-time Statistics: Live tracking of insight counts, categories, and analytical progress
🗃️ Supported Databases
DBChat works with virtually any database (as long as it has a JDBC driver)
Popular Databases
- MySQL / MariaDB - Web applications and e-commerce
- Oracle - Enterprise applications
- PostgreSQL - Advanced applications and analytics
- SQL Server - Microsoft environments
- H2 - Testing and development
- SQLite - Local applications and prototypes
- HSQLDB - Testing and development
NoSQL & Caching
- Redis - In-memory data store
- MongoDB - Document-oriented database
- Cassandra - Wide-column store
Analytics & Cloud
- Snowflake - Cloud data platform
- Databricks - Cloud data platform
- Amazon Redshift - AWS data warehouse
- Google BigQuery - Google analytics
- ClickHouse - Real-time analytics
Flat-file Based Data
- CSV Files - Spreadsheet data and exports
- Excel Files - Can be exported to CSV and queried
See INSTALL.md for the complete list and build options.
🚀 Quick Start
Step 1: Download DBChat
Download the latest release from GitHub Releases:
- dbchat-4.0.0.jar - Basic version (PostgreSQL, SQLite, H2, HSQLDB, CSV)
<-- Start here - dbchat-4.0.0.jar - Standard version (add MySQL, MariaDB, ClickHouse)
- dbchat-4.0.0.jar - Enterprise version (add Oracle, SQL Server, DB2)
- dbchat-4.0.0.jar - Cloud Analytics version (add Redshift, Snowflake, BigQuery)
- dbchat-4.0.0.jar - All databases included (400MB+)
NOTE: Advanced users can also build a custom jar with only the drivers you need. See INSTALL.md for details.
IMPORTANT: Make sure that you are properly LICENSED to use any JDBC driver you install. The DBChat license does not cover any third party code or binaries.
Step 2: Install Claude Desktop (similar setup for any other MCP client)
- Download Claude Desktop (free)
- Sign in with your Claude account
- Important: The Claude website does not support MCP. For MCP only with Anthropic models you need to use Claude Desktop.
Step 2 (alternate):
If you are not using Claude Desktop but want to use another MCP client like Cursor, Windsurf, VS Code, Continue, etc then please refer to the MCP Setup document for more details
Step 3: Set Up Your Database Connection
Create a configuration file dbchat.conf:
# Basic database connection
DB_URL=jdbc:mysql://localhost:3306/your_database
DB_USER=your_username
DB_PASSWORD=your_password
DB_DRIVER=com.mysql.cj.jdbc.Driver
# Optional: Enable web interface (not needed for Claude desktop)
HTTP_MODE=false
HTTP_PORT=8080
Examples for Common/Popular Databases:
MySQL:
DB_URL=jdbc:mysql://localhost:3306/your_database
DB_USER=your_username
DB_PASSWORD=your_password
DB_DRIVER=com.mysql.cj.jdbc.Driver
PostgreSQL:
DB_URL=jdbc:postgresql://localhost:5432/your_database
DB_USER=your_username
DB_PASSWORD=your_password
DB_DRIVER=org.postgresql.Driver
SQLite:
DB_URL=jdbc:sqlite:/path/to/your/database.db
DB_USER=
DB_PASSWORD=
DB_DRIVER=org.sqlite.JDBC
H2 database (in memory - no database setup required):
DB_URL=jdbc:h2:mem:testdb
DB_USER=sa
DB_PASSWORD=
DB_DRIVER=org.h2.Driver
Oracle:
DB_URL=jdbc:oracle:thin:@localhost:1521:xe
DB_USER=system
DB_PASSWORD=password
DB_DRIVER=oracle.jdbc.driver.OracleDriver
Redis:
DB_URL=jdbc:redis://localhost:6379
DB_USER=
DB_PASSWORD=your_redis_password
