Token导航 LogoToken导航

MCP Server · 数据服务

Electric Elephant

Electric Elephant是一个专用于PostgreSQL的MCP服务器,支持通过MCP工具执行查询、搜索对象、模式差异分析等操作,并提供PII数据保护机制。

stdio官方级别未说明来源级核验工具 9electric-elephant
数据分析数据库工具PostgreSQLClaude

快速开始

作者 / 组织
ajgreyling
提供方
ajgreyling
运行时
Node.js

工具数量

9

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Electric Elephant 属于数据服务类 MCP Server,公开资料标注 9 个工具,通过stdio 本地进程接入,适配 Claude,有可以直接复制的安装命令;接入前先确认权限范围。

分类

数据服务

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

npx electric-elephant --transport http --port 8080 --dsn "postgres://postgres:postgres@localhost:5432/postgres"

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Node.js,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 9 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

电动大象

Electric Elephant是一个令牌高效的MCP服务器,用于探索和查询 PostgreSQL 来自具有MCP功能的客户端。它是 不 通用SQL桥:只支持PostgreSQL(不支持MySQL、SQLite、SQL Server、Oracle或其他引擎)。

PII和临床数据: 服务器 试图减轻 通过以下方式意外暴露个人身份信息和敏感的临床风格领域 execute_sql (在查询运行之前,对投影进行启发式、失败关闭的检查)。那是一个 尽最大努力保障,不是证书或数据库权限、行级安全性、法律审查或您自己的数据策略的替代品。请参阅目的项目符号和 docs/tools/execute-sql.mdx.

存储库:

上游同步状态

Electric Elephant是dbhub的一个分支。PostgreSQL相关的上游补丁通过dbhub commit同步 72adfdce530ebaf2d7e6df12de5ecde0d174cf4f (2026-04-21),位于上游释放管线的顶部 v0.21.2.

反向上游提交:

  • f319114033279532aff2ce9aaef2ce84b127a21f (PostgreSQL getTableComment() 视图支持)
  • ce2621d83d78d9ab8b363664c955584cb59ee049 (优雅地跳过及物 MODULE_NOT_FOUND)
  • 30d8007998503defc05d5198bcbd9130c609ee41 (HTTP DNS重新绑定保护)
  • f13fad459d1ac9f7837fc39e37941247bd6d0c6d (PostgreSQL SSL verify-ca/verify-full + sslrootcert)
  • f35144b87f4394dd7a36416b7a459bfd710b61f4 (SSL文档更新 verify-ca / verify-full)
  • 72adfdce530ebaf2d7e6df12de5ecde0d174cf4f (源代码描述出现在MCP工具描述中)

目的

  • 通过MCP工具公开PostgreSQL(execute_sql, search_objects, query_insights, schema_diff、可观察性助手和相关接线)。
  • 仅限PostgreSQL:没有其他SQL数据库的连接器或兼容层。
  • 提供安全的默认值(只读,除非明确为破坏性SQL启用)。
  • 缓解PII/临床泄漏(尽最大努力): 启发式防护 execute_sql 除非明确选择,否则会阻止通配符投影和许多看起来敏感的列名(基于名称的启发式方法可能会出现误报或漏报)。选择加入:TOML allow_access_to_pii_data,环境 ALLOW_ACCESS_TO_PII_DATA,或单个DSN CLI 赤裸的 --allow-access-to-pii-data (或 =true / 1 / yes). 破坏性SQL 在单DSN模式下:与相同的模式 --allow-destructive-sql临床命名配置文件包括HL7v2/LIST/LOINC/SNOMED样式标识符。看 docs/tools/execute-sql.mdx, docs/config/command-line.mdx,以及 CLAUDE.md.

存储库地标

  • src/index.ts -入口点和启动路径。
  • src/server.ts -HTTP MCP传输接线。
  • src/connectors/ -数据库连接器实现。
  • src/tools/ -MCP工具处理程序(execute_sql, search_objects, query_insights, schema_diff等等)。
  • src/config/ -TOML/config加载和验证。
  • frontend/ -本地web工作台UI。
  • CLAUDE.md -架构和开发惯例。

安装

对于将Electric Elephant作为MCP服务器运行的最终用户:

NPM(npx):

npx electric-elephant --transport http --port 8080 --dsn "postgres://postgres:postgres@localhost:5432/postgres"

Docker:

docker run --rm --init \
  --name electric-elephant \
  --publish 8080:8080 \
  electric-elephant \
  --transport http \
  --port 8080 \
  --dsn "postgres://postgres:postgres@host.docker.internal:5432/postgres"

看 docs/installation.mdx 和 docs/quickstart.mdx 获取完整的客户端设置说明。

开发快速启动

pnpm install
pnpm run dev

构建和测试:

pnpm run build
pnpm test

工作台

Electric Elephant包括一个内置的web工作台,用于运行工具和检查请求跟踪。

  • 使用HTTP传输启动服务器(上述示例),然后打开 http://localhost:8080
  • 工作台UI: /
  • MCP端点: /mcp

更多详情: docs/workbench/overview.mdx

MCP请求流

flowchart LR
    A[MCP Client] --> B[Transport: stdio or HTTP]
    B --> C[Tool Router]
    C --> D{Tool}
    D -->|execute_sql search_objects query_insights schema_diff ...| E[Connector Manager]
    E --> F[PostgreSQL connector]
    F --> G[(PostgreSQL)]
    G --> F --> E --> C --> A

所有内置(包括只读诊断,如 explain_plan, diagnose_locks,以及 replication_status)通过连接器管理器路由到所选源的同一PostgreSQL连接池。

内置MCP工具

默认情况下,这些工具已启用 [[sources]] 除非您将子集列入白名单 [[tools]] 在 dbhub.toml。对于多个源,名称以源id作为后缀(例如 execute_sql_prod_pg).

工具角色
execute_sql运行SQL(支持多语句); 试图减轻 通过默认防护进行PII/临床暴露(通过TOML/env/CLI选择退出 --allow-access-to-pii-data 在单DSN模式下);标准感知配置文件(hl7v2, fhir, loinc, snomed)
search_objects发现模式、表、列、索引、例程(渐进式细节)
query_insights排名声明来自 pg_stat_statements 如果可用
schema_diff比较两个已配置源之间的架构元数据
explain_plan结构化 EXPLAIN (FORMAT JSON, …) 对于一条只读语句
diagnose_locks阻止/等待来自的会话 pg_stat_activity
replication_status复制延迟、流客户端、插槽
table_health死元组、真空/分析统计数据、关系大小
extensions_status已安装的扩展和 pg_stat_statements 准备就绪

用户定义的 [[tools]] 条目添加自定义参数化SQL工具。看 docs/tools/overview.mdx 和 dbhub.toml.example.

查询执行状态机

stateDiagram-v2
    [*] --> RequestReceived
    RequestReceived --> ValidatingInput
    ValidatingInput --> SelectingSource
    SelectingSource --> Executing
    Executing --> FormattingResponse
    FormattingResponse --> Completed
    Executing --> Failed
    ValidatingInput --> Failed
    Failed --> [*]
    Completed --> [*]

人类+人工智能代理入职检查表

  1. 阅读 CLAUDE.md 在编辑连接器/工具之前。
  2. 更喜欢工具级别更改 src/tools/ 传输层变化。
  3. 保持 source_id 路由行为向后兼容。
  4. 更改时 execute_sql,保留PII保护语义(pii-sql-guard.ts, pii-heuristics.ts, PII_ACCESS_VIOLATION).
  5. 运行相关测试(pnpm test,或目标连接器/集成测试)。

工具模式示例

execute_sql 输入(列出显式列; SELECT * 当PII保护处于活动状态时,可能会被拒绝——仅在明确的策略下禁用:TOML, ALLOW_ACCESS_TO_PII_DATA,或裸露 --allow-access-to-pii-data):

{
  "sql": "SELECT id, status FROM users LIMIT 10;"
}

search_objects 输入:

{
  "object_type": "column",
  "schema": "public",
  "table": "users",
  "pattern": "%_id",
  "detail_level": "summary",
  "limit": 50
}

相关文档

工具与能力

工具数量

9

资源数量

0

提示词数量

0

能力标签

PostgreSQLTypeScript本地部署MCP服务器数据查询PII保护数据库工具

支持客户端

Claude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

用自然语言查库

不用手写 SQL,直接问数据,让模型组织查询语句。

数据巡检

定期拉指标、做对比,把异常项整理成一段说明。

打通业务数据

把数据库、数仓和接口接进同一个上下文,减少导出再上传。

选择建议

值得选的地方

  • 只提供 9 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Node.js,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在数据服务场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Electric Elephant

MCP World · 本页

9stdio有1 个2026-05-17
Memory 9d25f64e

MCP World

9未说明未标注1 个2026-05-17
Prisma MCP Server

MCP World

0stdio有3 个2026-05-17
Astr Bot

MCP World

0stdio有1 个2026-05-17
Getzep MCP

MCP World

9stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Electric Elephant 怎么安装?

公开资料给出的安装命令是 npx electric-elephant --transport http --port 8080 --dsn "postgres://postgres:postgres@loc…,运行环境为 Node.js。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Electric Elephant 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Node.js;保存后完全退出客户端再打开,配置才会生效。

Electric Elephant 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Electric Elephant 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Electric Elephant 支持哪些客户端?

公开资料标注支持 Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP