Skip to main content

mssql-py-mcp

A MSSQL MCP server implementation in Python, designed to work with the pytds library. This project provides a simple and efficient way to interact with Microsoft SQL Server databases, leveraging the pure Python pytds driver for connectivity.

This project uses pure pytds for database connections.

What is pytds?

pytds is a pure Python implementation of the Tabular Data Stream (TDS) protocol, which is used to communicate with Microsoft SQL Server. Unlike other drivers that rely on native libraries (like FreeTDS), pytds is written entirely in Python, making it platform-independent and easy to install.

Key Features of pytds

  • Pure Python: No external dependencies or compilers needed.
  • Cross-Platform: Runs on any platform where Python is supported.
  • Thread-Safe: Safe to use in multi-threaded applications.
  • Supports various authentication methods: Including SQL Server and Windows authentication.
  • Lightweight: Minimal overhead and easy to integrate.

Features

  • MCP Server: Implements the Minecraft JEWEI MCP protocol for database interaction.
  • MSSQL Connectivity: Connects to Microsoft SQL Server using pytds.
  • Database Operations: Supports executing queries, listing tables, and retrieving database information.
  • Easy Configuration: Uses a .env file for simple setup of database credentials.

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/mssql-py-mcp.git
    cd mssql-py-mcp
    
  2. Create a virtual environment (recommended):

    python -m venv venv
    source venv/bin/activate  # On Windows, use `venv\Scripts\activate`
    
  3. Install dependencies:

    pip install -r requirements.txt
    

Configuration

  1. Create a .env file in the root directory of the project. You can copy the example file:

    cp .env.example .env
    
  2. Edit the .env file with your MSSQL database credentials:

    DB_HOST=your_server_address
    DB_USER=your_username
    DB_PASSWORD=your_password
    DB_NAME=your_database_name
    DB_PORT=1433
    

Usage

Run the MCP server with the following command:

python -m mssql_py_mcp.server

The server will start and listen for incoming MCP connections on the default port.

How It Works

The server listens for MCP commands, establishes a connection to the MSSQL database using pytds, executes the requested queries, and returns the results in the MCP format. The core logic is handled in mssql_py_mcp/core.py, which manages the database connection and query execution.

Contributing

Contributions are welcome! Please open an issue or submit a pull request if you have any improvements or bug fixes.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Metadata

Release files for mssql-py-mcp 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mssql-py-mcp 0.1.3
File Size Uploaded
mssql_py_mcp-0.1.3.tar.gz 8.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mssql-py-mcp 0.1.3
File Interpreter ABI Platform
mssql_py_mcp-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 18.4 kB

Release files / mssql_py_mcp-0.1.3.tar.gz

Download URL mssql_py_mcp-0.1.3.tar.gz
Size 8.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d815dc6bbfb281c26e8b4ff6b3b17441d16ae6038bb804fe6f48c5b81b18a2e2
BLAKE2b-256 checksum
How to use checksums
dcb09564a593f553e735aef08a587fae26bfe8c504853c2fe057051706ab39b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.14

Release files / mssql_py_mcp-0.1.3-py3-none-any.whl

Download URL mssql_py_mcp-0.1.3-py3-none-any.whl
Size 9.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
02e491ab1b1ff665a7f74e8ce1d9c2f2043df47f369db5b742d3ca4edf27c7d1
BLAKE2b-256 checksum
How to use checksums
cf53f3ea6302e71b1da9ef25554783f2750cb526e639131448115e7ad2143137
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.14

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page