首页
学习
活动
专区
圈层
工具
发布
MCP广场 >详情页
火鸟数据库助手2026-10-23179分享添加福利群:解决AI开发者的「MCP实战痛点」
一个为Firebird SQL数据库实现Anthropic模型上下文协议(MCP)的服务器,使克劳德和其他大型语言模型能够通过自然语言安全地访问、分析和操作Firebird数据库中的数据。
By PuroDelphi
2026-10-23179
github
详情内容

在MseeP上验证

MCP Firebird

smithery徽章

为Firebird数据库实现Anthropic的MCP(模型上下文协议)。

示例用法

https://github.com/user-attachments/assets/e68e873f-f87b-4afd-874f-157086e223af

什么是MCP Firebird?

MCP Firebird是一个服务器,为Firebird SQL数据库实现了Anthropic的模型上下文协议(MCP)。它允许像Claude这样的大型语言模型(LLMs)以安全和受控的方式访问、分析和操作Firebird数据库中的数据。

主要特性

  • SQL查询:在Firebird数据库上执行SQL查询
  • 模式分析:获取有关表、列和关系的详细信息
  • 数据库管理:执行备份、恢复和验证操作
  • 性能分析:分析查询性能并提出优化建议
  • 多种传输方式:支持STDIO、SSE(服务器发送事件)和可流式HTTP传输
  • 现代协议支持:完全支持MCP可流式HTTP(2025-03-26)和遗留的SSE
  • 统一服务器:自动协议检测和向后兼容
  • Claude集成:与Claude Desktop和其他MCP客户端无缝协作
  • VSCode集成:在Visual Studio Code中与GitHub Copilot协作
  • 会话管理:具有自动清理和可配置超时的稳健会话处理
  • 安全性:包括SQL查询验证和安全配置选项

手动安装

稳定版本

# 全局安装(稳定版)
npm install -g mcp-firebird

# 运行服务器
npx mcp-firebird --database /path/to/database.fdb

# 或使用特定的稳定版本
npm install -g mcp-firebird@2.2.3

稳定版特性(v2.2.3):

  • 🐛 修复:SSE JSON解析错误 - 解决“Invalid message: [object Object]”错误
  • ✨ 可流式HTTP传输支持(MCP 2025-03-26)
  • 🔄 具有自动协议检测的统一服务器
  • 📊 增强的会话管理和监控
  • 🛠️ 现代MCP SDK集成(v1.13.2)
  • 🔧 改进的错误处理和日志记录
  • 🧪 全面的测试套件,包含9+个SSE功能测试

Alpha版本(最新特性)

# 安装具有最新特性的alpha版本
npm install -g mcp-firebird@alpha

# 或使用特定的alpha版本
npm install -g mcp-firebird@2.3.0-alpha.1

Alpha版特性(v2.3.0-alpha.1):

  • 🐛 修复:SSE JSON解析错误 - 解决“Invalid message: [object Object]”错误
  • ✨ 可流式HTTP传输支持(MCP 2025-03-26)
  • 🔄 具有自动协议检测的统一服务器
  • 📊 增强的会话管理和监控
  • 🛠️ 现代MCP SDK集成(v1.13.2)
  • 🔧 改进的错误处理和日志记录
  • 🧪 全面的测试套件,包含9+个SSE功能测试
  • 📚 增强的文档,包含故障排除指南

对于备份/恢复操作,您需要安装Firebird客户端工具。有关更多详细信息,请参见完整安装。

对于VSCode和GitHub Copilot集成,请参见VSCode集成。

基本用法

与Claude Desktop一起使用

  1. 编辑Claude Desktop配置:

    code $env:AppData\Claude\claude_desktop_config.json  # Windows
    code ~/Library/Application\ Support/Claude/claude_desktop_config.json  # macOS
    
  2. 添加MCP Firebird配置:

    {
      "mcpServers": {
        "mcp-firebird": {
          "command": "npx",
          "args": [
            "mcp-firebird",
            "--host",
            "localhost",
            "--port",
            "3050",
            "--database",
            "C:\\path\\to\\database.fdb",
            "--user",
            "SYSDBA",
            "--password",
            "masterkey"
          ],
          "type": "stdio"
        }
      }
    }
    
  3. 重启Claude Desktop

传输配置

MCP Firebird支持多种传输协议,以适应不同的客户端需求和部署场景。

STDIO传输(默认)

STDIO传输是Claude Desktop集成的标准方法:

{
  "mcpServers": {
    "mcp-firebird": {
      "command": "npx",
      "args": [
        "mcp-firebird",
        "--database", "C:\\path\\to\\database.fdb",
        "--user", "SYSDBA",
        "--password", "masterkey"
      ],
      "type": "stdio"
    }
  }
}

SSE传输(服务器发送事件)

SSE传输允许服务器作为Web服务运行,适用于Web应用程序和远程访问:

基本SSE配置

# 在默认端口3003上启动SSE服务器
npx mcp-firebird --transport-type sse --database /path/to/database.fdb

# 自定义端口和完整配置
npx mcp-firebird \
  --transport-type sse \
  --sse-port 3003 \
  --database /path/to/database.fdb \
  --host localhost \
  --port 3050 \
  --user SYSDBA \
  --password masterkey

SSE的环境变量

# 设置环境变量
export TRANSPORT_TYPE=sse
export SSE_PORT=3003
export DB_HOST=localhost
export DB_PORT=3050
export DB_DATABASE=/path/to/database.fdb
export DB_USER=SYSDBA
export DB_PASSWORD=masterkey

# 启动服务器
npx mcp-firebird

SSE客户端连接

SSE服务器运行后,客户端可以连接到:

  • SSE端点:http://localhost:3003/sse
  • 消息端点:http://localhost:3003/messages
  • 健康检查:http://localhost:3003/health

可流式HTTP传输(现代)

最新的MCP协议,支持双向通信:

# 使用可流式HTTP启动
npx mcp-firebird --transport-type http --http-port 3003 --database /path/to/database.fdb

统一传输(推荐)

同时支持SSE和可流式HTTP协议,并具有自动检测功能:

# 启动统一服务器(支持SSE和可流式HTTP)
npx mcp-firebird --transport-type unified --http-port 3003 --database /path/to/database.fdb

统一服务器端点

  • SSE(遗留):http://localhost:3003/sse
  • 可流式HTTP(现代):http://localhost:3003/mcp
  • 自动检测:http://localhost:3003/mcp-auto
  • 健康检查:http://localhost:3003/health

配置示例

开发设置(SSE)

npx mcp-firebird \
  --transport-type sse \
  --sse-port 3003 \
  --database ./dev-database.fdb \
  --user SYSDBA \
  --password masterkey

生产设置(统一)

npx mcp-firebird \
  --transport-type unified \
  --http-port 3003 \
  --database /var/lib/firebird/production.fdb \
  --host db-server \
  --port 3050 \
  --user APP_USER \
  --password $DB_PASSWORD

使用SSE的Docker

docker run -d \
  --name mcp-firebird \
  -p 3003:3003 \
  -e TRANSPORT_TYPE=sse \
  -e SSE_PORT=3003 \
  -e DB_DATABASE=/data/database.fdb \
  -v /path/to/database:/data \
  purodelhi/mcp-firebird:latest

高级SSE配置

会话管理

配置会话超时和限制:

# 会话管理的环境变量
export SSE_SESSION_TIMEOUT_MS=1800000    # 30分钟
export MAX_SESSIONS=1000                 # 最大并发会话数
export SESSION_CLEANUP_INTERVAL_MS=60000 # 每分钟清理一次

npx mcp-firebird --transport-type sse

CORS配置

对于Web应用程序,配置CORS设置:

# 允许特定来源
export CORS_ORIGIN="https://myapp.com,https://localhost:3000"
export CORS_METHODS="GET,POST,OPTIONS"
export CORS_HEADERS="Content-Type,mcp-session-id"

npx mcp-firebird --transport-type sse

SSL/TLS支持

对于生产部署,使用像nginx这样的反向代理:

server {
    listen 443 ssl;
    server_name mcp-firebird.yourdomain.com;

    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;

    location / {
        proxy_pass http://localhost:3003;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

SSE故障排除

常见问题

  1. 连接被拒绝

    # 检查服务器是否正在运行
    curl http://localhost:3003/health
    
    # 检查端口可用性
    netstat -an | grep 3003
    
  2. 会话超时

    # 增加会话超时时间
    export SSE_SESSION_TIMEOUT_MS=3600000  # 1小时
    
  3. CORS错误

    # 允许所有来源(仅限开发)
    export CORS_ORIGIN="*"
    
  4. 内存问题

    # 减少最大会话数
    export MAX_SESSIONS=100
    
    # 启用更频繁的清理
    export SESSION_CLEANUP_INTERVAL_MS=30000
    
  5. JSON解析问题(在v2.3.0-alpha.1+中修复)

    # 如果遇到“Invalid message: [object Object]”错误,
    # 升级到最新的alpha版本:
    npm install mcp-firebird@alpha
    
    # 或直接使用最新的alpha版本:
    npx mcp-firebird@alpha --transport-type sse
    

    注意:在2.3.0-alpha.1之前的版本中,存在一个错误,即对/messages端点的POST请求无法正确解析JSON正文。这已通过改进的中间件处理得到修复,支持application/json和text/plain内容类型。

监控和日志记录

# 启用调试日志记录
export LOG_LEVEL=debug

# 监控服务器健康状态
curl http://localhost:3003/health | jq

检查活动会话

curl http://localhost:3003/health | jq '.sessions'

通过 Smithery 快速安装

要通过 Smithery 自动安装 MCP Firebird for Claude Desktop,请执行以下命令:

npx -y @smithery/cli install @PuroDelphi/mcpFirebird --client claude

文档

有关更详细的信息,请查看以下文档:

入门指南

传输协议

集成指南

高级主题

示例和用例

支持项目

捐赠

如果您发现 MCP Firebird 对您的工作或项目有帮助,请考虑通过捐赠支持其开发。您的贡献有助于维护和改进此工具。

image

雇佣我们的 AI 代理

支持此项目的另一种好方法是通过 Asistentes Autónomos 雇佣我们的 AI 代理。我们提供针对各种业务需求的专门 AI 助手,帮助您自动化任务并提高生产力。

优先支持

⭐ 捐赠者、赞助商和客户将获得优先支持和帮助,包括问题解决、功能请求和实施指导。虽然我们努力帮助所有用户,但那些为项目提供财务支持的用户将获得更快的响应时间和专门的协助。

您的支持非常宝贵,并有助于确保 MCP Firebird 的持续开发!

许可证

本项目遵循 MIT 许可证 - 详情请参阅 LICENSE 文件。

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档