Firebird数据库查询工具

一个基于C#和MCP协议的服务器工具,支持对Firebird数据库执行动态查询,包括条件过滤和记录限制功能。

  • by BoscoBecker
  • C#
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 BoscoBecker/MCPServerCSharp

使用说明

🛠️ 使用C#+Firebird的MCP服务器

此项目是用C#创建的MCP(模型上下文协议)服务器,支持自定义工具。其中一个功能是在 火鸟 具有过滤和记录限制的数据库。


📦 使用的技术

  • NPX
  • C#(.NET 9)
  • MCP(模型上下文协议)
  • FirebirdSql。数据。Firebird客户端
  • 依赖注入通过 Host.CreateApplicationBuilder
  • 通过配置 appsettings.json

⚙️ 配置

通过nuget安装依赖项

dotnet add package ModelContextProtocol --prerelease

🔧 appsettings.json 文件

创建一个 appsettings.json 项目根目录中的文件,内容如下:

{
"ConnectionStrings": {
"FirebirdDb": "Database=C:\\yourdata.fdb;User=SYSDBA;Password=masterkey;Dialect=3;Charset=NONE;" }
}

📝 更改的路径。根据数据库的位置创建FDB文件。

📂 推荐项目结构

src/
├── MCPServer/
│ ├── Factory/
│ │ └── FbConnectionFactory.cs
│ ├── Tools/
│ │ └── FbQueries.cs
│ ├── Program.cs
│ └── appsettings.json

🧩 MCP工具可用

🔍 列表

[McpTool, Description("List all records from a Firebird table")]
public List<Dictionary<string, object>> ListTable(string tableName, string filter = "", int limitRecords = 0)

此工具使用以下命令从Firebird数据库表返回记录:

🔎 通过SQL进行条件筛选

🔢 记录数量限制(使用FIRST)

使用示例:

{
  "tool": "ListTable",
  "args": {
    "tableName": "CUSTOMERS",
    "filter": "STATUS = 'ACTIVE'",
    "limitRecords": 10
  }
}

运行MCP服务器

  npx @modelcontextprotocol/inspector dotnet run