Skip to main content
Glama
UAEpro

Smart MCP Server

by UAEpro

Smart MCP Server šŸš€

Intelligent SQL Database Interface with Natural Language Support

A production-ready FastMCP 2 server that connects to any SQL database (MySQL, PostgreSQL, SQLite, SQL Server, Oracle, etc.) and converts natural language questions into SQL queries using AI.


✨ Features

  • šŸ”Œ Universal Database Support: MySQL, PostgreSQL, SQLite, SQL Server, Oracle, MariaDB

  • 🧠 Natural Language to SQL: Ask questions in plain English, get SQL results

  • šŸ” Auto-Schema Detection: Automatically scans and understands your database structure

  • šŸ›”ļø Safety First: Read-only by default, blocks dangerous operations

  • ⚔ FastMCP 2 Powered: Modern, efficient MCP server implementation

  • šŸŽÆ Zero Configuration: Works with any schema without prior setup

  • šŸ”§ Extensible: Clean, documented code for easy customization


Related MCP server: TalkDB

šŸ“š Documentation

All documentation is organized in the docs/ folder with priority numbers for easy reading order.

→ See docs/00_READ_ME_FIRST.md for complete reading order


šŸš€ Quick Start

1. Crate Environment

python3 -m venv .venv

On Linux/Mac:

source .venv/bin/activate
On Windows:
.venv\Scripts\activate

2. Install Dependencies

pip install -r requirements.txt

3. Edit config.yaml with LLM connector and Database Connector

you can also setup the key from .env file

4. Run the automatic database Schema generator

python generate_schema.py

5. Run the Server

python main.py

you might need to edit the main.py in the main function to change the MCP starting protocol


šŸŽÆ Example Queries

Try these natural language questions:

"Show me all customers"
"What are the top 5 most expensive products?"
"Show me orders with customer names"
"What is the total revenue by category?"
"List customers who placed orders in the last 30 days"

šŸ› ļø Tech Stack

  • FastMCP 2 - MCP server framework

  • SQLAlchemy 2.x - Universal database adapter

  • OpenAI API - Natural language processing

  • Python 3.8+ - Core language


šŸ“¦ Project Structure

SmartMCP/
ā”œā”€ā”€ main.py                  # Server entry point
ā”œā”€ā”€ config.yaml              # Configuration
ā”œā”€ā”€ requirements.txt         # Dependencies
ā”œā”€ā”€ example_database.py      # Sample data generator
ā”œā”€ā”€ test_setup.py           # Setup verification
ā”œā”€ā”€ db/adapter.py           # Database connector
ā”œā”€ā”€ nlp/query_parser.py     # NL to SQL parser
ā”œā”€ā”€ mcp/tools.py            # MCP tool definitions
└── utils/schema.py         # Schema utilities

šŸŽ“ Learn More


šŸ”’ Safety Features

  • āœ… Read-only by default

  • āœ… Keyword blacklist (DROP, DELETE, etc.)

  • āœ… SQL injection prevention

  • āœ… Row limits (max 1000 per query)

  • āœ… Environment variable for secrets


šŸ“ License

MIT License - Free to use, modify, and distribute!


Built with ā¤ļø and AI :P for the MCP community

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables querying PostgreSQL and MySQL databases using natural language, with RESTful endpoints for listing tables, describing schemas, and executing read-only queries.
    1
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables natural language querying of databases with multi-turn conversations, auto-generated charts, and proactive monitoring via scheduled queries and alerts.
    1
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to query databases using natural language, with automatic schema discovery and SQL compilation.
    451 npm
    3,173
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language querying of SQL databases using AI, supporting multiple database types and automatic schema discovery.
    1
    MIT