数据库查询服务器

Firebird MCP Server是一个为Firebird数据库实现的模型上下文协议服务器,提供无缝数据库集成和查询功能。

  • by tqrcisio
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 tqrcisio/firebird-mcp-server

使用说明

Firebird MCP服务器

Firebird数据库的模型上下文协议(MCP)服务器实现,提供无缝的数据库集成和查询功能。

特性

  • 数据库连接管理:使用可配置参数进行安全连接处理
  • 表操作:列出表并检索详细的架构信息
  • 查询执行:执行具有内置安全措施的只读SQL查询
  • 连接测试:Ping功能用于验证数据库连接
  • 灵活部署:支持STDIO和服务器发送事件(SSE)模式

安装

pnpm install

用法

Firebird MCP服务器可以以两种不同的模式启动:

1.STDIO模式(标准输入/输出)

非常适合与MCP客户直接集成:

pnpm start -- --host localhost --port 3050 --database /path/to/database.fdb --user SYSDBA --password masterkey

2.SSE模式(服务器发送事件)

非常适合基于web的应用程序和实时更新:

pnpm start:sse -- --host localhost --port 3050 --database /path/to/database.fdb --user SYSDBA --password masterkey

配置参数

连接参数可以通过命令行参数提供

参数 命令行 必填
主机 --主机 否
端口 --端口 否
数据库 --数据库 是
用户 --用户 否
密码 --密码 是
角色 --角色 否

可用工具

服务器提供以下MCP工具:

1. ping

测试数据库连接并验证服务器可用性。

用法:不需要参数 退货:连接状态和响应时间

2. list_tables

检索数据库中所有表的完整列表。

用法:不需要参数 退货:包含元数据的表名数组

3. tables_details

提供特定表的详细架构信息。

参数:

  • table_name (string,必填):要检查的表的名称

退货:表结构,包括列、数据类型、约束和索引

4. execute_query

执行具有可配置结果限制的只读SQL查询。

参数:

  • query (字符串,必填):要执行的SQL SELECT语句
  • limit (number,可选):要返回的最大行数(默认值:10)

退货:包含列元数据的查询结果

安全说明:出于安全原因,只允许使用SELECT语句。

安全考虑

  • 只读操作:查询执行仅限于SELECT语句
  • 参数验证:所有输入都经过验证和消毒
  • 连接安全性:支持基于角色的访问控制
  • 错误处理:全面的错误处理可防止信息泄露

错误处理

该服务器包括强大的错误处理功能,用于:

  • 连接参数无效
  • 网络连接问题
  • SQL语法错误
  • 权限被拒绝的情况
  • 数据库不可用

贡献

欢迎投稿!请确保所有更改包括:

  • 综合测试
  • 更新文件
  • 安全注意事项
  • 绩效影响评估

支持

对于问题和疑问:

  • 检查文档
  • 审查现有问题
  • 创建包含详细信息的新问题

备注:此MCP服务器专为开发和测试目的而设计。对于生产使用,确保采取了适当的安全措施、监控和备份程序。