Supabase
Supabase’s official server lets AI create tables, query data and review project settings in your Supabase database.
Description from the maker (original English)
Read-only SQL Server introspection and querying: schema, definitions, dependencies and data.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"elekto-sql": {
"command": "dnx",
"args": [
"Elekto.Mcp.Sql",
"--yes"
]
}
}
}Run this in your terminal
claude mcp add elekto-sql -- dnx Elekto.Mcp.Sql --yesPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"elekto-sql": {
"command": "dnx",
"args": [
"Elekto.Mcp.Sql",
"--yes"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"elekto-sql": {
"type": "stdio",
"command": "dnx",
"args": [
"Elekto.Mcp.Sql",
"--yes"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account elekto-com-br, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (2.3.4) reached the registry 23 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need .NET on your computer.
In the same category: Supabase, MongoDB MCP Server, Elasticsearch MCP Server
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Supabase’s official server lets AI create tables, query data and review project settings in your Supabase database.
MongoDB Model Context Protocol Server
MCP server for interacting with Elasticsearch
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Read-only MCP server for SQL Server 2017+ introspection and querying (tested on 2019 and 2022). Exposes schema metadata, object definitions, and data queries via the MCP protocol (stdio), allowing GitHub Copilot (and other MCP clients, like Claude, etc.) to understand your database structure without storing credentials in the repository.
MCP servers act as a bridge between your local data and AI language models. When you use this server with an AI assistant (such as GitHub Copilot, Claude, or others), the following happens:
Before connecting this server to any database, carefully consider:
Recommendations:
max_query_rows to limit how much data can be returned in a single call.Regardless of the precautions you take, the responsibility for any consequences arising from the use of this tool rests entirely with you. This software is provided *as is* with no warranties of any kind.
| Tool | Description |
|---|---|
list_databases | Databases registered in the configuration |
get_database_overview | High-level database summary (counts, size, connection metadata), and whether the login sees everything |
check_permissions | What the connected login can and cannot see, the GRANT that completes it, and whether it could write |
get_schema_summary | Aggregated metrics by schema (objects, rows, size) |
list_schemas | Schemas in a database (excluding system schemas) |
list_tables | User tables with schema, dates, approximate rows and estimated size; filterable by schema and name pattern |
list_views | User views, filterable by schema and name pattern |
find_columns | Every table and view holding a column whose name matches a pattern |
list_procedures | User stored procedures (with basic complexity metrics) |
list_functions | User-defined functions (with basic complexity metrics) |
get_table_schema | Columns with unambiguous type declarations, all extended properties, PKs, FKs, checks, uniques and indexes with key order and declared key width |
get_view_definition | DDL definition + columns of a view, with the same column detail |
get_procedure_definition | CREATE PROCEDURE text |
get_function_definition | CREATE FUNCTION text |
get_dependency_graph | Object dependency edges (FK + SQL dependencies) |
get_table_usage | References to a table across FKs and SQL modules |
get_data_profile | Column profile (null ratio, distinct count, min/max, top values) |
get_index_health | Duplicate/unused index diagnostics + missing-index suggestions |
compare_schemas | Compares table/column structure between two configured databases |
generate_dependency_dot | Graphviz DOT dependency graph with node metadata (node_kind) |
query_table | SELECT from a table or view with filtering, grouping, secure aggregates, sorting, sampling and pagination |
Version 2.0.0 changes what the tools return and how their parameters are declared. Nothing needs reconfiguring — connection files, .mcp.json and the CLI arguments are unchanged — but anything that parses the output will notice:
| Change | What to do |
|---|---|
query_table returns an object, not an array | Read the rows from rows; check truncated |
Failures return ok: false content instead of raising a tool error | Test for ok === false before treating the payload as data |
Column results gained type_declaration, max_length_chars, is_persisted and extended_properties | Prefer type_declaration over max_length, which is bytes |
description on a column is now an alias for extended_properties.MS_Description | Nothing; it still works |
| Optional tool parameters are no longer nullable | Nothing over MCP. Direct C# callers pass "" (or 0) instead of null |
New: find_columns; list_tables and list_views take a name_pattern | Nothing; both are additive |
Everything else — every other tool, every other field — is unchanged.
Nothing changes shape: arrays are still arrays and objects keep every field they had. A few values now say "unknown" instead of passing a guess for a fact, which is worth knowing if you parse them:
| Change | Why |
|---|---|
New: check_permissions | Says what the login is missing, per tool, with the GRANT that fixes it |
get_database_overview, get_table_usage, get_index_health and generate_dependency_dot gained a visibility block | So a result the login could only partly see says so |
list_procedures / list_functions rows gained definition_visible; line_count and join_count are null when it is false | A hidden definition used to read as a body of 0 lines |
referenced_object_count is null, and get_table_usage's sql_module_usage is null, when the login cannot read sys.sql_expression_dependencies | Both used to fail the whole call with error 229 |
get_index_health returns the duplicates and null for the DMV sections when the login lacks the server permission | It used to fail outright, losing the part that needs no permission |
get_*_definition of a name the login cannot see returns ok: false instead of [] | [] read the same for "does not exist" and "hidden from you" |
| SQL errors carry their number, and the hint tells permission, missing name and syntax apart | One generic hint covered all three |
No tool result changes shape. What changes is how the server starts and how it is packaged:
| Change | Why |
|---|---|
The server starts without any connection, states it in its server instructions, and every tool answers ok: false with the file to create, where it looked and an example | A server that exited at startup showed only as "failed", and failed in every project when registered for all of them |
A configuration that cannot be read (invalid JSON, a %{VARIABLE} that is not set, a --connections file that is missing or empty) is reported the same way, instead of ending the process | The error now reaches whoever calls the tools |
| While nothing is loaded, every call looks for the configuration again | A connections file created after the server started is used without a restart |
The package is listed among nuget.org's MCP servers and carries .mcp/server.json | So it can be found there, with a ready configuration on its MCP Server tab |
The process no longer exits with code 1 when the configuration is missing or unreadable. Anything that relied on that exit code should read a tool's answer instead. The README also gained setup instructions for Claude Code and Codex.
No tool result changes shape; what changes is what the tools say about themselves, which is what an agent chooses them by:
| Change | Why |
|---|---|
Every tool declares a title and the MCP annotations readOnlyHint, idempotentHint, destructiveHint: false and openWorldHint: false | Clients can show the tools as safe, and agents need not infer it from prose |
| Every description says what the tool does, when to use it and which tool to use instead | So an agent picks the right one of 21 tools the first time |
| The server always sends instructions on connecting, describing how the tools fit together | Previously it sent them only when no connection was configured |
Nothing changes shape. generate_dependency_dot now says which way its arrows point, what it returns besides the DOT text, how to render it and when another tool fits better. The server is listed in the MCP Registry as "Elekto MCP for SQL Server", and each release now also appears under the repository's GitHub Releases.
Nothing changes shape. When no connection is configured, the guidance returned to the agent now tells it to agree with the user before writing anything, and never to write a password into the connections file or anywhere else, using %{VARIABLE} in its place. It also points to connections the project may already keep where this server does not look (spring.datasource.url in application.properties or application.yml, or a sqlserver:// or mssql:// URL in a .env file), for the agent to show the user rather than for the server to parse.
Nothing changes shape. The tool shipped System.Security.Cryptography.Pkcs 9.0.13, which Microsoft.Data.SqlClient brings in and which two .NET denial of service advisories affect: GHSA-846f-f764-76mx (CVE-2026-84008, high) and GHSA-2fmv-rv2c-59x7 (CVE-2026-70162, moderate). It now ships the fixed 10.0.13. Update the global tool with dotnet tool update -g Elekto.Mcp.Sql; a dnx configuration that names no version picks up 2.3.3 by itself.
This is also the first release whose GitHub Release carries the package, with a build provenance attestation; Verifying a release shows how to check it.
Nothing changes shape. The tool now runs on `Microsoft.Data.SqlC
Only the beginning is shown; read the rest in the repo