khuyentran1401/database-analytics-mcp
If you are the rightful owner of database-analytics-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A practical database analytics MCP server built with FastMCP, providing SQLite database operations through the Model Context Protocol (MCP).
connect_db
Connect to SQLite database files
execute_query
Execute SQL queries with safety checks
list_tables
List all tables in the database
export_to_csv
Export query results to CSV file
Database Analytics MCP Server
A practical database analytics MCP server built with FastMCP, providing SQLite database operations through the Model Context Protocol (MCP). Perfect for data analysis workflows with AI assistants like Claude.
What This Server Provides
🛠️ Tools (Interactive Operations)
connect_db
- Connect to SQLite database filesexecute_query
- Execute SQL queries with safety checkslist_tables
- List all tables in the database
📊 Resources (Read-only Data Access)
schema://tables/{table_name}
- Get table column information and structuredata://tables/{table_name}
- Get sample table data for preview
🔐 Safety Features
- SQL injection prevention with dangerous operation blocking
- Read-only resource access for safe schema exploration
- Comprehensive error handling with descriptive messages
Setup and Installation
-
Clone the repository:
git clone https://github.com/khuyentran1401/database-analytics-mcp.git cd database-analytics-mcp
-
Install UV (recommended):
# Install UV if you haven't already curl -LsSf https://astral.sh/uv/install.sh | sh
-
Install dependencies:
# UV automatically manages dependencies from pyproject.toml uv sync
-
Test the server:
uv run example_usage.py
-
Add to Claude Code
# Quick setup claude mcp add database-analytics -- uv run database_mcp_server.py
Verify installation:
# Check if the server is registered claude mcp list
Other MCP Clients
For any MCP client that supports the standard protocol:
servers:
- name: database-analytics
transport:
type: stdio
command: uv
args: ["run", "database_mcp_server.py"]
Example Workflows
Data Exploration with Claude Code
-
Connect to Database
Connect to my SQLite database at ./sample_database.db
-
Explore Schema
What tables are available in this database?
-
Examine Table Structure
Show me the schema for the users table
-
Preview Data
Show me some sample data from the users table
-
Run Analytics Queries
Calculate total sales by product category
-
Export Results
Export the query "SELECT product_name, SUM(quantity) as total_sold FROM orders GROUP BY product_name" to CSV file called sales_report.csv
-
Get Table Statistics
Show me statistics for the users table
Common Use Cases
- Database Schema Discovery: Quickly understand database structure
- Data Quality Checks: Sample data to verify data integrity
- Ad-hoc Analysis: Run custom SQL queries safely
- Report Generation: Execute complex analytical queries
- Data Exploration: Browse tables and relationships with pagination
- Data Export: Export query results to CSV for external analysis
- Performance Monitoring: Track query execution times
Available Tools & Resources
Tools (Interactive Operations)
Tool | Parameters | Description |
---|---|---|
connect_db | database_path: str | Connect to SQLite database file |
execute_query | sql: str | Execute SQL query with safety checks and timing |
list_tables | None | List all tables in connected database |
export_to_csv | sql: str , filename: str | Export query results to CSV file |
Resources (Read-only Access)
Resource URI | Description |
---|---|
schema://tables/{table_name} | Get column info, types, constraints, foreign keys |
data://tables/{table_name} | Get sample rows with pagination, statistics (limit, offset) |
stats://tables/{table_name} | Get comprehensive table statistics and column analysis |