1. Conduid
  2. Healthcare
  3. Keerukee.MCPServer.Stdio
MCP server · Healthcare

Keerukee.MCPServer.Stdio

A lightweight library for building MCP (Model Context Protocol) servers in .NET without external dependencies.

Unclaimed healthcare
34Low

Scored 6 months ago · breakdown

About Keerukee.MCPServer.Stdio

Keerukee.MCPServer.Stdio is an MCP server in the Healthcare category: a lightweight library for building MCP (Model Context Protocol) servers in .NET without external dependencies.

Install

From source
git clone https://github.com/keerukee/MCPServer

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Keerukee.MCPServer.Stdio

Powered by Claude · Grounded in docs

I know everything about Keerukee.MCPServer.Stdio. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

MCPServer

A lightweight .NET library for building MCP (Model Context Protocol) servers without external dependencies. Simply decorate your methods with attributes and the library handles all the protocol communication.

Features

  • Zero external dependencies - Uses only built-in .NET libraries
  • Attribute-based registration - Decorate methods with [McpTool], [McpResource], or [McpPrompt]
  • Automatic discovery - Tools, resources, and prompts are discovered via reflection
  • JSON Schema generation - Input schemas are automatically generated from method parameters
  • Full MCP compliance - Supports all standard MCP methods for client compatibility

Installation

Add a reference to the MCPServer project:

<ItemGroup>
  <ProjectReference Include="..\MCPServer\MCPServer.csproj" />
</ItemGroup>

Or if published as a NuGet package:

<ItemGroup>
  <PackageReference Include="MCPServer" Version="1.0.0" />
</ItemGroup>

Quick Start

1. Create the Server Entry Point

using MCPServer;

var server = new McpServerHost(new McpServerOptions
{
    ServerName = "MyMCPServer",
    ServerVersion = "1.0.0"
});

server.Run();

2. Add Tools

Create a class with static methods decorated with [McpTool]:

using MCPServer.Attributes;

public static class MyTools
{
    [McpTool("greet", "Greets a person by name")]
    public static string Greet(
        [McpParameter("The name of the person to greet")] string name)
    {
        return $"Hello, {name}!";
    }

    [McpTool("calculate_sum", "Adds two numbers together")]
    public static string CalculateSum(
        [McpParameter("First number")] double a,
        [McpParameter("Second number")] double b)
    {
        return $"The sum is {a + b}";
    }
}

3. Add Resources (Optional)

Resources provide read-only data to clients:

using MCPServer.Attributes;

public static class MyResources
{
    [McpResource("config://app", "App Configuration", "Returns application configuration", "application/json")]
    public static string GetAppConfig()
    {
        return """{"version": "1.0.0", "environment": "production"}""";
    }
}

4. Add Prompts (Optional)

Prompts are reusable prompt templates:

using MCPServer.Attributes;

public static class MyPrompts
{
    [McpPrompt("code_review", "Generates a code review prompt")]
    public static string CodeReviewPrompt(
        [McpParameter("Programming language")] string language,
        [McpParameter("Code to review")] string code)
    {
        return $"Please review this {language} code:\n```{language}\n{code}\n```";
    }
}

Attributes Reference

[McpTool(name, description)]

Marks a static method as an MCP tool.

Parameter Type Description
name string Unique identifier for the tool
description string Human-readable description

[McpParameter(description, required)]

Adds metadata to method parameters.

Parameter Type Default Description
description string - Description for the JSON schema
required bool true Whether the parameter is required

[McpResource(uri, name, description, mimeType)]

Marks a static method as an MCP resource.

Parameter Type Default Description
uri string - URI that identifies this resource
name string - Human-readable name
description string - Description of the resource
mimeType string "text/plain" MIME type of the content

[McpResourceTemplate(uriTemplate, name, description, mimeType)]

Marks a static method as an MCP resource template.

Parameter Type Default Description
uriTemplate string - URI template pattern (e.g., "file:///{path}")
name string - Human-readable name
description string - Description of the template
mimeType string "text/plain" MIME type of the content

[McpPrompt(name, description)]

Marks a static method as an MCP prompt.

Parameter Type Description
name string Unique identifier for the prompt
description string Human-readable description

Server Configuration

var server = new McpServerHost(new McpServerOptions
{
    ServerName = "MyServer",           // Name shown to clients
    ServerVersion = "1.0.0",           // Your server version
    ProtocolVersion = "2024-11-05"     // MCP protocol version
});

Supported Parameter Types

The library automatically converts JSON values to these C# types:

C# Type JSON Schema Type
string string
int, long, short integer
double, float, decimal number
bool boolean
Arrays array
Other types object

MCP Client Configuration

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "my-server": {
      "command": "dotnet",
      "args": ["run", "--project", "path/to/your/project.csproj"]
    }
  }
}

Or if using a compiled executable:

{
  "mcpServers": {
    "my-server": {
      "command": "path/to/your/server.exe"
    }
  }
}

VS Code / Continue

Add to your MCP configuration:

{
  "servers": {
    "my-server": {
      "command": "dotnet",
      "args": ["path/to/your/server.dll"]
    }
  }
}

Supported MCP Methods

Method Description
initialize Returns server capabilities and info
ping Health check
tools/list Lists available tools
tools/call Executes a tool
resources/list Lists available resources
resources/read Reads a resource
resources/templates/list Lists resource templates
prompts/list Lists available prompts
prompts/get Gets a prompt with arguments
completion/complete Autocompletion (returns empty)

Example Project Structure

MyMCPServer/
├── MyMCPServer.csproj
├── Program.cs
└── Features/
    ├── Tools.cs
    ├── Resources.cs
    └── Prompts.cs

License

Keerthi RB

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Keerukee.MCPServer.Stdio

How do I install Keerukee.MCPServer.Stdio?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Keerukee.MCPServer.Stdio safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Keerukee.MCPServer.Stdio still maintained?

Conduid hasn't recorded a commit date for this repository yet. Check the repository directly for recent activity.