SqlCertForge MCP

Your clients stopped trusting SQL Server by default.

ODBC 18, OLE DB 19, Microsoft.Data.SqlClient 4.0, and SSMS 20 all made encryption mandatory. Nothing on your server has to change for this to reach you: a driver update or a refreshed workstation image is enough, and connections that worked for years start failing with “the certificate chain was issued by an authority that is not trusted.”

SqlCertForge does the certificate work and then proves it took. It binds the TLS certificate for the database engine and for Reporting Services, distributes client trust to the machines that need it, sets certificate authentication on Always On and mirroring endpoints, and registers Always Encrypted column master keys — then reads its own work back instead of trusting the return code.

It runs inside your network. Nothing about your certificates or servers leaves it, and the licence verifies offline with no call home.

Start Starter — $79/mo  See what it does

Want to look before you buy? The read-only audit commands are free on the PowerShell Gallery and inventory every certificate surface you have — TLS bindings, TDE, backup encryption, endpoints, Always Encrypted, cell-level, PolyBase, client trust.

Plans & pricing

The paid tiers do the certificate work: bind, trust, register, authenticate, verify. A purchase issues and emails your licence automatically, and it verifies offline — no licence-server call, no phone-home. The twelve read-only audit tools stay free, no licence, no payment.

Free

No licence needed.

$0/mo
Get it on the PowerShell Gallery
  • All twelve read-only audit tools (full list below)
  • Estate-wide inventory across every certificate surface
  • Runs locally, stdio, PowerShell
  • Works with Claude Code or any MCP client
  • No licence key, ever
Starter

For one person.

$79/mo
Start Starter plan
  • Adds the four atomic tools: bind the TLS cert for SQL Server and for Reporting Services, distribute client trust, register an Always Encrypted column master key (full list below)
  • Licensed for one person
  • Covers 2 servers at a time
  • Everything in Free
Professional

For a team.

$499/mo
Start Professional plan
  • Adds the full Reporting Services reserve → bind → restart → verify orchestrator, plus endpoint certificate authentication — set, export, and grant (full list below)
  • Licensed for your team
  • Covers 25 servers at a time
  • Everything in Starter
Enterprise

Every tool, unlimited servers.

$1,999/mo
Buy Enterprise plan
  • Same tool access as Professional — the difference is capacity
  • Covers unlimited servers
  • Everything in Professional
The backup that will not restore

An encrypted backup is useless without the certificate that encrypted it, and that certificate lives on the server you just lost. SqlCertForge v2 ships the full TDE certificate lifecycle — create, escrow, restore, rotate — and we proved the disaster-recovery round trip on real servers rather than asserting it: a TDE-encrypted database backed up on one instance fails to restore on a second, restoring its certificate first recovers it, and the same backup then restores online with the original data readable. The free audit tells you today whether your TDE certificate’s private key has a backup at all. How TDE certificate backup works →

How the server limits work

Starter covers 2 servers at a time and Professional covers 25; Enterprise covers unlimited servers. The count is servers in active use — only what you are currently managing. Re-running against a server already under management never takes a second place, and a server that goes unused for 90 days drops off the count on its own, no action needed. Read-only tools are free and never count against the limit.

01 The twenty tools

Free, read-only: inventory and check what’s bound today, across every certificate surface. Nothing here changes anything.

ToolWhat it does
get_sql_cert_inventoryEstate-wide inventory of every certificate surface — engine binding, Reporting Services, TDE, backup encryption, endpoints, cell-level — one row per certificate, with expiry
test_sql_cert_bindingReport the TLS cert bound to a SQL Server instance from the registry: thumbprint, ForceEncryption, expiry
test_rs_cert_bindingReport the TLS cert bound to a Reporting Services endpoint via WMI
get_rs_http_configInventory a Reporting Services HTTPS surface: reserved URLs, SSL bindings, registered URLs
test_rs_https_endpointConfirm an RS endpoint actually serves over HTTPS, GET it, validate the served cert’s SAN and thumbprint
test_sql_tde_configurationReport Transparent Data Encryption status: database master key, TDE server certificate, whether its private key is backed up, which databases are encrypted
test_sql_backup_encryption_readinessReport whether the instance can encrypt backups: a backup-encryption certificate is present and its key backed up
test_sql_endpoint_cert_authReport a mirroring / Always On or Service Broker endpoint’s certificate-authentication state: which certificate, and its expiry
test_sql_column_master_keyReport Always Encrypted column master keys for a database: key store provider, key path, dependent column-encryption-key count, and whether a certificate-store key is present here
test_sql_cell_key_hierarchyReport the cell-level encryption hierarchy: certificates, the symmetric keys they protect, and which principals may use them
test_sql_polybase_certificateReport PolyBase scale-out readiness from the DMVs: compute node ids, names, and addresses
test_sql_cert_client_trustReport whether a certificate’s issuer is trusted in LocalMachine\Root on a client — the trust a driver needs to validate a SQL Server TLS certificate

Paid, state-changing: these bind, trust, register, and authenticate. On Reporting Services they also restart. Called without a licence, each returns a clear message saying so instead of a bare error.

ToolTierWhat it does
set_sql_cert_bindingStarter+Bind a cert to a SQL Server instance via the registry. Applies on the next SQL Server restart, which you run
set_rs_cert_bindingStarter+Bind a cert to a Reporting Services endpoint via WMI
add_sql_cert_client_trustStarter+Import a certificate’s issuer into LocalMachine\Root on a client, so it trusts certificates that issuer signed
register_sql_column_master_keyStarter+Register an Always Encrypted column master key against a certificate in a key store — the metadata step. Column encryption keys are created with the SqlServer module
install_rs_connection_certificateProfessional+Full orchestration for Reporting Services: reserve the URL, bind, restart, then verify it actually serves
set_sql_endpoint_cert_authenticationProfessional+Ensure a mirroring / Always On or Service Broker endpoint authenticates with a given local certificate — creating it with certificate authentication when absent, idempotent when already so
export_sql_endpoint_certificateProfessional+Export an endpoint’s public certificate — no private key — to hand to a partner replica
grant_sql_endpoint_cert_accessProfessional+Import a partner replica’s public certificate, create a login from it, and GRANT CONNECT on the endpoint — the trust half of certificate-authenticated mirroring
What it looks like
A live run on a two-node Always On availability group: private-key access granted, certificate bound, the SQL Server error log confirms it loaded for encryption, and an encrypted connection through the listener verifies.
And here it is, live on an availability group
A real run on a two-node synchronous-commit AG, not a mockup — click to read it
×Live availability group run, full size
Binding a certificate on a live two-node synchronous-commit availability group. The SQL Server error log confirms the certificate loaded for encryption, and an encrypted client connection through the listener is the verification.
×The floor moved, full size
ODBC 18, OLE DB 19, Microsoft.Data.SqlClient 4.0, and SSMS 20 all default to mandatory encryption. Nothing on the server changed; the workstation picked up a new driver, and sqlcmd fails with the certificate chain error.
×See where the estate stands, full size
The read-only commands need no licence and change nothing. This sweep found a certificate that had already expired and a node running without encryption.
×One command does the whole certificate job, full size
Request, submit, install, grant the private key, bind, verify. Each step reports its own result, and a failed or pending step stops the run instead of carrying on blind.
×Proof the site serves over TLS, full size
The Reporting Services verify step opens a real HTTPS connection and inspects the certificate that comes back — thumbprint, SAN, expiry. A node counts as done only when the site genuinely serves.
×Renewal on a schedule, full size
One job per certificate type, under Task Scheduler, cron, or SQL Server Agent. The runner acts only inside the expiry threshold, and the working certificate stays in place until the new one passes its own verify step.
02 How it works

SqlCertForge acts on your SQL Server or Reporting Services host, locally or on a remote node over -Node / -Credential. It runs on Windows PowerShell 5.1 or PowerShell 7 — either is enough. Windows Server ships with 5.1, so a locked-down SQL host needs no new PowerShell install.

Everything it talks to is inside your network — your certificate authority, your SQL Server and Reporting Services hosts, your own report URLs — and it makes no outbound internet calls at run time. Licences verify offline: no licence-server call, no phone-home, no telemetry.

  1. Inventory first: point it at an instance and the read-only tools report every certificate surface — the binding, TDE, backup encryption, endpoints, Always Encrypted, cell-level, PolyBase — with expiry. This is free, changes nothing, and is safe against production
  2. Change what you decide to: bind a TLS cert (a registry write for SQL’s SuperSocketNetLib, or a WMI call and URL reservation for RS), distribute client trust, register an Always Encrypted column master key, or set certificate authentication on an endpoint. On Reporting Services it then restarts the service; on the SQL engine the binding applies on the next restart, which you run
  3. It checks its own work: for Reporting Services it hits the endpoint over HTTPS and reads back the served certificate’s thumbprint, rather than trusting the bind returned success. For the SQL engine it reads the binding back from the registry. For an endpoint it reads back the authentication state. That is the evidence, not the return code
03 Free MCP and paid MCP
Free

PowerShell, stdio, local only

The twelve read-only tools, running as a local PowerShell MCP server. No licence, no payment, no network calls beyond the SQL/RS host you point it at.

Install-Module SqlCertForge.Audit — the module ships the read-only audit commands and the MCP server, and runs on Windows PowerShell 5.1 or PowerShell 7.

SqlCertForge.Audit on the Gallery →
Paid

C#, stdio or hosted

The same read-only tools stay free; the eight state-changing tools need a licence to run. Runs locally over stdio, or hosted for a team.

dotnet tool install --global DetentPoint.SqlCertForge.Mcp — then save the .lic emailed after purchase and point SQLCERTFORGE_LICENSE_FILE at it.

DetentPoint.SqlCertForge.Mcp on NuGet →
04 Honest limits
Always On Availability Groups

SqlCertForge binds the TLS certificate on each Always On replica — the same per-instance operation it runs on a standalone server. Verified live against a two-node synchronous-commit availability group: encrypted connections through the listener kept working across a manual failover. It does not build the availability group or create the listener; point it at replicas that already exist.

Always Encrypted

SqlCertForge registers and audits the column master key — the certificate-backed outer key, and the metadata that points the database at it. It does not create column encryption keys or encrypt columns; that cryptography is done with the SqlServer module, which is where it belongs.

Endpoint certificate authentication

The endpoint tools set certificate authentication on a mirroring / Always On or Service Broker endpoint, export the public certificate, and grant a partner CONNECT — the certificate-trust half of a cross-node session. Proven live: a certificate-authenticated mirroring session between two instances reached SYNCHRONIZED, and a Service Broker message crossed between them over the same trust. It does not build the mirroring or availability-group topology itself.

PolyBase

SqlCertForge reports PolyBase scale-out readiness — the compute nodes and their addresses, read-only. It does not manage the internal PolyBase scale-out certificates; that is SQL Server’s own to rotate.

05 Under test

The test suite runs on both Windows PowerShell 5.1 and PowerShell 7, covering the cert-surface logic, and the C# MCP layer carries its own suite: tier-to-tool mapping, the licence gate including real RSA sign / verify / tamper / expiry cases, and Stripe webhook signature verification. All state-changing tools have been exercised live against real SQL Server — SQL Server 2022 and SQL Server 2025, SSRS, and Power BI Report Server. Live validation is not a formality here: it surfaced and fixed six real defects that mocked unit tests could not catch, including SQL Server 2025 reporting a certificate’s type as CERTIFICATE_OAEP_256 rather than CERTIFICATE. Proven end to end: a TDE-encrypted database backed up on one instance and recovered on another by restoring its certificate first; a certificate-authenticated mirroring session reaching SYNCHRONIZED across two nodes; a client connection that fails untrusted and succeeds once the issuer is distributed; and a cell-level encrypt/decrypt round-trip.

06 Documentation

Every command has a reference page with several views — written for management, practitioners, and learners, plus software-approval, dependency, and compliance lenses, with worked recipes that use only real parameters. The same content ships as a single adoption guide.

Command reference →  ·  Adoption guide →  ·  The guide as a PDF →

Guides by problem: TrustServerCertificate →  ·  TDE certificate backup →  ·  Restoring encrypted backups →  ·  Always Encrypted CMKs →  ·  Endpoint certificate auth →  ·  Certificate expiry inventory →

Get it now

SqlCertForge is available through multiple channels. The free audit module is on the PowerShell Gallery. The paid tiers are available direct from Detent Point via the links above, or through the marketplaces below.

PowerShell Gallery →  ·  AWS Marketplace →  ·  Azure Marketplace →

Where next

SqlCertForge.MCP is one of a line of single-purpose MCP servers, alongside ClusterValidator.MCP and PesterForge.MCP.

ClusterValidator →  ·  PesterForge MCP →  ·  All products →