mcpField
M
mpc-csharp-semantickernel

mpc-csharp-semantickernel

Local
github.com/mrazvanalexDeveloper Tools3Updated 83w ago

About mpc-csharp-semantickernel

mpc-csharp-semantickernel is an unmaintained sample showing Microsoft Semantic Kernel, OpenAI, and the official C# SDK for MCP. It demonstrates a web chat endpoint that can invoke email tools, with recipients configured in code.

Key features

  1. 01Example integration of Semantic Kernel and OpenAI
  2. 02Uses the official C# MCP SDK
  3. 03Email tools with configured recipients
  4. 04Web chat endpoint for sending requests

Use cases

  1. 01Explore a C# Semantic Kernel and MCP example
  2. 02Test chat requests that invoke email tools

MCP support

The sample includes an MCP server built with the official C# SDK. Its web application uses Semantic Kernel and OpenAI to handle chat requests that can invoke email tools.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

$${\color{red}This \space repository \space will \space not \space be \space maintained. \space It's \space just \space a \space quick \space sample.}$$

mpc-csharp-semantickernel

An example usage of Microsoft Semantic Kernel with OpenAI and the The official C# SDK for the Model Context Protocol which can be found at https://github.com/modelcontextprotocol/csharp-sdk

Prerequisites

A SMTP Email Server (for the EmailTools) An OpenAI ApiKey

How to run the sample

  1. Use your OpenAI Developer Dashboard to get an ApiKey.
  2. Fill out the appsettings for each separate project.
  3. The email addresses that you can send emails to are hardcoded as a dictionary inside Tools/EmailTool.cs. Update the dictionary with your email list. Feel free to make this a setting.
  4. Run the project. The default launchSettings are set to http://localhost:5109
Appsettings
WebAppMCPPoc Project
{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "OpenAI": {
    "ApiKey": "<yourApiKey>",
    "ChatModelId" : "gpt-4o-mini"
  }
}

MCPServer Project
{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "AllowedHosts": "*",
  "EmailSettings": {
    "SMTPServer": {
      "MailPort": "465",
      "MailServer": "<yourserver.com>",
      "Sender": "<[email protected]>",
      "SenderName": "<AIEmailSender>",
      "Password": "<EmailPassword>",
      "Username": "<EmailUsername>"
    }
  }
}

Sending Requests:

You can use a tool like postman to send requests.

Example request: POST https://localhost:7113/chat Body: { "text": "send and email toaFriend and tell him that you are an ai in 250 words. Tell him you're using C# to do this.."}

Replace {someone} with a name you have added in the EmailTool emails dictionary.

        private static readonly Dictionary<string, string> emails = new Dictionary<string, string>
        {
            { "example", "[email protected]" },
            { "aFriend", "[email protected]" }
        };

License

This project is licensed under the MIT License.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.