MCP.so
Sign In
Servers

McpClientServerExample

@dks50217

A simple .NET implementation of an MCP (Model Context Protocol) Client and Server example. This project demonstrates how to create and interact with an MCP server using custom tools, natural language prompts, and standard I/O transport.

Overview

What is McpClientServerExample?

McpClientServerExample is a sample project that demonstrates client-server communication using the Model Context Protocol (MCP). It includes a custom McpClient and an McpServer, built without relying on the Claude Client App.

How to use McpClientServerExample?

Clone the repository and ensure you have .NET 8.0 SDK and an OpenAI API key (if using GPT models). Set the OPENAI_API_KEY environment variable, then run the client with dotnet run --project client/McpClient.csproj.

Key features of McpClientServerExample

  • Client uses ModelContextProtocol.Client to communicate with the server.
  • Supports OpenAI GPT models for conversation and tool calling.
  • Server uses ModelContextProtocol.Server and communicates via standard input/output.
  • Provides built-in tools: Echo (returns user input) and ReverseEcho (returns reversed input).

Use cases of McpClientServerExample

  • Learning how to build a custom MCP client without a dedicated chat app.
  • Testing MCP server capabilities such as tool listing and invocation.
  • Prototyping an MCP-based assistant that combines GPT with local tools.

FAQ from McpClientServerExample

What are the system requirements?

.NET 8.0 SDK and, optionally, an OpenAI API key for GPT model usage.

How do I set up the OpenAI API key?

Export it as an environment variable: export OPENAI_API_KEY=your_api_key_here.

How do I run the client?

Run dotnet run --project client/McpClient.csproj in the project root.

What tools does the server provide?

The server provides Echo (returns the input as-is) and ReverseEcho (returns the reversed input).

Is this project intended for use with the Claude Client App?

No, it is designed as an example of using a custom client instead of the Claude Client App.

Tags

More from Other