mcpField
🛠
🛠️ MCP Server with C# + Firebird

🛠️ MCP Server with C# + Firebird

ローカル
github.com/BoscoBeckerデータベース573 週間前に更新

🛠️ MCP Server with C# + Firebird について

C#で構築されたFirebird向けMCPサーバーです。MCP経由でFirebirdデータベースを検索したい開発者向けで、SQL条件による絞り込みと取得件数の制限に対応します。

主な機能

  1. 01C#による構築
  2. 02Firebirdへの接続
  3. 03テーブルレコードの絞り込み
  4. 04レコード件数の上限設定
  5. 05appsettings.jsonによる設定

活用シーン

  1. 01Firebirdのテーブルデータ検索
  2. 02条件に合うレコードの抽出
  3. 03検索結果の件数制限

MCP 対応

ListTableツールを通じてFirebirdのテーブル検索をMCPクライアントに公開します。テーブル名、SQLフィルター、取得件数を指定できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"MCPServerCSharp": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/inspector"
]
}
}
}
起動コマンドnpx -y @modelcontextprotocol/inspector

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@modelcontextprotocol/inspector

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

🛠️ C# + Firebird の MCP サーバー

このプロジェクトは、カスタムツールに対応した、C# で作成された MCP(Model Context Protocol)サーバーです。機能の 1 つとして、Firebird データベースでフィルターとレコード数の上限を指定した動的クエリを実行できます。


📦 使用技術

  • NPX
  • C# (.NET 9)
  • MCP(Model Context Protocol)
  • FirebirdSql.Data.FirebirdClient
  • 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 ツール

🔍 ListTable
[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 を使用)

{DF1F6239-E983-45A0-87E3-645291A6D2C7}

使用例:

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

MCP サーバーの実行

  npx @modelcontextprotocol/inspector dotnet run

{58D6C0FD-B032-48FC-9F16-8769A9403E82}

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。