MCPServerCSharp

MCPServerCSharpは、C#で構築されたサーバーアプリケーションで、効率的なデータ処理と通信を実現します。特に、APIとの連携やデータベース操作に優れ、開発者が迅速に機能を追加できるよう設計されています。シンプルな構造と拡張性を兼ね備えており、初心者から中級者まで幅広く利用可能です。

GitHubスター

2

ユーザー評価

未評価

フォーク

0

イシュー

0

閲覧数

3

お気に入り

0

README
🛠️ MCP Server with C# + Firebird

This project is an MCP ( Model Context Protocol ) server created in C#, with support for custom tools. One of the features included is the execution of dynamic queries in a Firebird database with filter and record limit.


📦 Technologies Used
  • NPX
  • C# (.NET 9)
  • MCP ( Model Context Protocol )
  • FirebirdSql.Data.FirebirdClient
  • Dependency Injection via Host.CreateApplicationBuilder
  • Configuration via appsettings.json

⚙️ Configuration

Install dependencies by nuget

dotnet add package ModelContextProtocol --prerelease
🔧 appsettings.json File

Create an appsettings.json file in the project root with the following content:

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

📝 Change the path of the .FDB file according to the location of your database.

📂 Recommended Project Structure

src/
├── MCPServer/
│ ├── Factory/
│ │ └── FbConnectionFactory.cs
│ ├── Tools/
│ │ └── FbQueries.cs
│ ├── Program.cs
│ └── appsettings.json
🧩 MCP Tool Available
🔍 ListTable
[McpTool, Description("List all records from a Firebird table")]
public List<Dictionary<string, object>> ListTable(string tableName, string filter = "", int limitRecords = 0)

This tool returns records from a Firebird database table with:

🔎 Conditional filter via SQL

🔢 Limitation of number of records (using FIRST)

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

Example of use:

{
  "tool": "ListTable",
  "args": {
    "tableName": "CUSTOMERS",
    "filter": "STATUS = 'ACTIVE'",
    "limitRecords": 10
  }
}
Run MCP server
  npx @modelcontextprotocol/inspector dotnet run

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

作者情報

0

フォロワー

0

リポジトリ

0

Gist

0

貢献数

スレッド