database-analytics-mcp

khuyentran1401/database-analytics-mcp

3.3

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).

Tools
  1. connect_db

    Connect to SQLite database files

  2. execute_query

    Execute SQL queries with safety checks

  3. list_tables

    List all tables in the database

  4. 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 files
  • execute_query - Execute SQL queries with safety checks
  • list_tables - List all tables in the database

📊 Resources (Read-only Data Access)

  • schema://tables/{table_name} - Get table column information and structure
  • data://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

  1. Clone the repository:

    git clone https://github.com/khuyentran1401/database-analytics-mcp.git
    cd database-analytics-mcp
    
  2. Install UV (recommended):

    # Install UV if you haven't already
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  3. Install dependencies:

    # UV automatically manages dependencies from pyproject.toml
    uv sync
    
  4. Test the server:

    uv run example_usage.py
    
  5. 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

  1. Connect to Database

    Connect to my SQLite database at ./sample_database.db
    
  2. Explore Schema

    What tables are available in this database?
    
  3. Examine Table Structure

    Show me the schema for the users table
    
  4. Preview Data

    Show me some sample data from the users table
    
  5. Run Analytics Queries

    Calculate total sales by product category
    
  6. 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
    
  7. 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)

ToolParametersDescription
connect_dbdatabase_path: strConnect to SQLite database file
execute_querysql: strExecute SQL query with safety checks and timing
list_tablesNoneList all tables in connected database
export_to_csvsql: str, filename: strExport query results to CSV file

Resources (Read-only Access)

Resource URIDescription
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