UNPKG

sqlserver-mcp-colossal

Version:

MCP Server for SQL Server database operations with comprehensive CRUD functionality, views, stored procedures, execution plan analysis, and safety features

300 lines (238 loc) 12.5 kB
# Complete Features Documentation ## Overview The SQL Server MCP Colossal (v1.2.0) is a comprehensive Model Context Protocol server that provides full-featured SQL Server database operations through Claude Desktop and other MCP clients. ## 🚀 Core Features ### 1. Database Connection Management - **Multiple Configuration Methods**: Environment variables, JSON config files, or runtime configuration - **ODBC Driver Support**: Compatible with ODBC Driver 17, 13, and legacy SQL Server drivers - **Connection Security**: Encrypted connections with certificate validation - **Connection Pooling**: Efficient connection management for high-volume operations - **Cross-Platform**: Windows, Linux, and macOS support ### 2. Comprehensive CRUD Operations - **Create (INSERT)**: Insert single or multiple records with JSON data - **Read (SELECT)**: Query data with flexible WHERE clauses and limits - **Update (UPDATE)**: Modify existing records with safety confirmations - **Delete (DELETE)**: Remove records with safety confirmations - **Parameterized Queries**: Protection against SQL injection - **Transaction Support**: Full transaction management capabilities ### 3. Database Schema Exploration - **Table Discovery**: List all tables in the database - **Table Structure**: Detailed column information, data types, constraints - **View Management**: Complete view support with structure analysis - **Stored Procedure Support**: Full stored procedure operations - **Schema Navigation**: Multi-schema database support ### 4. Advanced Query Features - **Custom SQL Execution**: Execute any SQL query with parameters - **Execution Plan Analysis**: XML plan parsing with optimization recommendations - **Performance Monitoring**: Query execution time tracking - **Result Set Management**: Flexible data retrieval with limits - **Error Handling**: Comprehensive error reporting and recovery ## 🔒 Safety Features ### 1. Confirmation Requirements - **UPDATE Operations**: Require explicit confirmation to prevent accidental data modification - **DELETE Operations**: Require explicit confirmation to prevent accidental data deletion - **Safety Warnings**: Clear warnings before destructive operations - **Operation Preview**: Shows exactly what will be modified before execution ### 2. Input Validation - **Pydantic Models**: Comprehensive type safety for all inputs - **JSON Validation**: Ensures proper data format for all JSON parameters - **Parameter Validation**: Validates all tool parameters before execution - **Error Prevention**: Catches common mistakes before database operations ### 3. Security Measures - **SQL Injection Protection**: Parameterized queries prevent injection attacks - **Connection Security**: Encrypted connections with certificate validation - **Access Control**: Respects SQL Server user permissions - **Audit Logging**: Comprehensive operation logging for security monitoring ## 📊 Data Management Tools ### 1. Table Operations - **list_tables**: Discover all tables in the database - **describe_table**: Get detailed table structure information - **get_table_data**: Retrieve data with flexible filtering and limits - **insert_data**: Add new records with JSON data - **update_data**: Modify existing records (with confirmation) - **delete_data**: Remove records (with confirmation) ### 2. View Operations - **list_views**: Discover all views in the database - **describe_view**: Get detailed view structure and definition - **get_view_data**: Retrieve data from views with filtering ### 3. Stored Procedure Operations - **list_stored_procedures**: Discover all stored procedures - **describe_stored_procedure**: Get procedure details, parameters, and definition - **execute_stored_procedure**: Execute procedures with parameter support ## 🔍 Performance Analysis ### 1. Query Execution Plan Analysis - **XML Plan Parsing**: Detailed analysis of SQL Server execution plans - **Cost Analysis**: Estimated vs actual costs and row counts - **Optimization Recommendations**: Prioritized suggestions for query improvement - **Performance Metrics**: Execution time, resource usage, and efficiency metrics ### 2. Performance Monitoring - **Execution Time Tracking**: Monitor query performance over time - **Resource Usage**: Track CPU, memory, and I/O usage - **Bottleneck Identification**: Identify performance issues and optimization opportunities - **Trend Analysis**: Track performance improvements and regressions ## 🛠️ Development Features ### 1. Type Safety - **Pydantic Integration**: Full type safety with automatic validation - **Field Validators**: Custom validation rules for all inputs - **Error Handling**: Comprehensive error reporting with helpful messages - **IDE Support**: Full IntelliSense and type checking support ### 2. Testing Support - **Comprehensive Test Suite**: 55+ tests covering all functionality - **Mock Support**: Easy testing with mocked database connections - **Validation Testing**: Tests for all Pydantic models and validators - **Integration Testing**: End-to-end testing of all MCP tools ### 3. Code Quality - **Code Formatting**: Black and isort for consistent code style - **Type Checking**: MyPy for static type analysis - **Linting**: Comprehensive code quality checks - **Documentation**: Extensive documentation with examples ## 📚 Documentation Features ### 1. Comprehensive Guides - **Quick Start Guide**: Get up and running in minutes - **Safety Features Guide**: Detailed safety documentation - **Execution Plan Guide**: Query optimization best practices - **Features Documentation**: Complete feature reference ### 2. Examples and Tutorials - **Real-World Examples**: Practical examples for common scenarios - **Best Practices**: Industry best practices for database operations - **Troubleshooting Guide**: Common issues and solutions - **Performance Tips**: Optimization strategies and techniques ### 3. API Documentation - **Tool Reference**: Complete reference for all MCP tools - **Parameter Documentation**: Detailed parameter descriptions - **Return Value Documentation**: Complete output format documentation - **Error Code Reference**: Comprehensive error handling guide ## 🔧 Configuration Features ### 1. Flexible Configuration - **Environment Variables**: Secure credential management - **Configuration Files**: JSON-based configuration - **Runtime Configuration**: Dynamic configuration updates - **Default Values**: Sensible defaults for all settings ### 2. Connection Options - **Multiple Drivers**: Support for various ODBC drivers - **Port Configuration**: Custom port support - **SSL/TLS Options**: Encryption and certificate validation - **Connection Timeouts**: Configurable timeout settings ### 3. Security Configuration - **Credential Management**: Secure password handling - **Certificate Validation**: SSL certificate verification - **Access Control**: User permission management - **Audit Settings**: Configurable logging levels ## 🌐 Integration Features ### 1. MCP Protocol Support - **Full MCP Compliance**: Complete Model Context Protocol implementation - **Claude Desktop Integration**: Seamless integration with Claude Desktop - **Tool Discovery**: Automatic tool registration and discovery - **Error Handling**: Comprehensive MCP error handling ### 2. Cross-Platform Support - **Windows**: Full Windows support with native ODBC drivers - **Linux**: Ubuntu/Debian support with Microsoft ODBC drivers - **macOS**: Homebrew-based installation and configuration - **Docker**: Containerized deployment options ### 3. Deployment Options - **NPM Package**: Easy installation via npm - **Python Package**: PyPI package for Python environments - **Source Installation**: Direct installation from source - **Docker Deployment**: Containerized deployment ## 📈 Monitoring and Logging ### 1. Comprehensive Logging - **Operation Logging**: All database operations are logged - **Performance Logging**: Execution times and resource usage - **Error Logging**: Detailed error information and stack traces - **Security Logging**: Authentication and authorization events ### 2. Monitoring Capabilities - **Real-Time Monitoring**: Live performance metrics - **Historical Data**: Performance trends over time - **Alert Support**: Configurable alerts for performance issues - **Dashboard Integration**: Integration with monitoring dashboards ### 3. Debugging Support - **Verbose Logging**: Detailed logging for debugging - **Query Tracing**: Complete query execution tracing - **Error Diagnostics**: Detailed error analysis and suggestions - **Performance Profiling**: Query performance profiling ## 🔄 Version History ### v1.2.0 (Current) - **Safety Features**: Comprehensive confirmation requirements for destructive operations - **Enhanced Validation**: Latest Pydantic field_validator syntax - **Documentation**: Complete safety and features documentation - **Dependencies**: Updated to latest versions - **Testing**: Enhanced test coverage with safety feature tests ### v1.1.0 - **Views Support**: Complete view management capabilities - **Stored Procedures**: Full stored procedure support - **Execution Plans**: Query execution plan analysis - **Type Safety**: Comprehensive Pydantic validation - **Documentation**: Enhanced documentation with examples ### v1.0.0 - **Core CRUD**: Basic create, read, update, delete operations - **SQL Server Connectivity**: ODBC-based database connectivity - **MCP Integration**: Model Context Protocol implementation - **Configuration**: Basic configuration management ## 🎯 Use Cases ### 1. Database Administration - **Schema Management**: Explore and manage database schemas - **Data Migration**: Move data between databases - **Performance Tuning**: Optimize query performance - **Maintenance Tasks**: Automated database maintenance ### 2. Application Development - **Rapid Prototyping**: Quick database operations for development - **Data Analysis**: Analyze application data and performance - **Testing**: Database testing and validation - **Debugging**: Debug database-related issues ### 3. Business Intelligence - **Data Exploration**: Discover and analyze business data - **Report Generation**: Create reports from database data - **Performance Analysis**: Analyze business process performance - **Data Quality**: Ensure data integrity and quality ### 4. DevOps and Operations - **Database Monitoring**: Monitor database health and performance - **Automated Tasks**: Automate routine database operations - **Troubleshooting**: Diagnose and resolve database issues - **Capacity Planning**: Plan database capacity and growth ## 🚀 Getting Started ### Quick Installation ```bash # Install via npm npm install sqlserver-mcp-colossal # Or install via pip pip install sqlserver-mcp-colossal ``` ### Basic Usage ```python # Configure connection configure_sqlserver( server="your-server", database="your-database", username="your-username", password="your-password" ) # List tables list_tables() # Query data get_table_data(table_name="users", limit=10) # Insert data insert_data( table_name="users", data='{"name": "John Doe", "email": "john@example.com"}' ) ``` ## 📞 Support and Resources - **Documentation**: Complete documentation in the `docs/` folder - **Examples**: Real-world examples in the README - **GitHub Issues**: Report bugs and request features - **Email Support**: support@javiandev.com - **Community**: Join our community discussions ## 🔮 Future Roadmap ### Planned Features - **Graph Database Support**: Neo4j and other graph databases - **NoSQL Support**: MongoDB, Redis, and other NoSQL databases - **Cloud Integration**: Enhanced cloud database support - **Advanced Analytics**: Machine learning integration - **Real-Time Features**: Real-time data streaming and updates ### Community Contributions - **Plugin System**: Extensible plugin architecture - **Custom Validators**: User-defined validation rules - **Theme Support**: Customizable UI themes - **API Extensions**: Extended API capabilities --- *This documentation is continuously updated. For the latest information, visit our GitHub repository or contact support.*