Skip to content

Support Multiple Authentication Methods and Multi-Database Connections #79

Description

@ihari277

Problem Statement

Currently, the MCP server only supports a single authentication method at a time (either Azure AD or SQL Authentication), and
can only connect to one database per server instance.

Proposed Enhancements

  1. Support Multiple Authentication Methods
    The server should automatically detect and use the appropriate authentication method based on environment variables:
  • Azure AD Interactive Browser: If AZURE_AUTH_METHOD=interactive is set
  • Azure AD Default Credential: If AZURE_AUTH_METHOD=default is set (for managed identities, service principals)
  • Azure AD Service Principal: If AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET are set
  • SQL Authentication: If SQL_USER and SQL_PASSWORD are set
  • Windows Authentication: If WINDOWS_AUTH=true is set
  1. Support Multiple Database Connections
    Allow configuring multiple SQL Server instances/databases simultaneously, enabling users to:
  • Query across different databases
  • Work with multiple Azure SQL servers
  • Connect to both on-premises and cloud databases

Use Cases

  1. Development vs Production: Use different auth methods for local dev (SQL auth) vs Azure (Managed Identity)
  2. Multi-tenant applications: Connect to multiple customer databases
  3. Data migration/comparison: Query data across different SQL servers

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions