MCPServerCSharp

MCPServerCSharp is a server application built in C# that enables efficient data processing and communication. It excels in API integration and database operations, allowing developers to quickly add features. With a simple structure and extensibility, it is suitable for a wide range of users from beginners to intermediate developers.

GitHub Stars

2

User Rating

Not Rated

Forks

0

Issues

0

Views

2

Favorites

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}

Author Information

0

Followers

0

Repositories

0

Gists

0

Total Contributions

Threads