Skip to content

siyakin/ToolServer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛠️ ToolServer — .NET MCP Server

A lightweight, production-ready Model Context Protocol (MCP) server built with .NET 9, running as a Windows Service. Connect your AI assistant to your local machine — read system stats, monitor processes, scan your network, check the weather, and more.

Built by two curious minds who don't follow rules. 🚀


⚡ What It Does

Tool Description
get_system_info CPU usage, RAM, disk space, machine name
get_top_memory_processes Top 10 processes by RAM usage
list_processes List all running processes with optional filter
kill_process Kill a process by PID
get_network_info Active network interfaces and IP addresses
ping_host Ping any host or IP, get round-trip time
who_is_home Scan local network, find all online devices
get_current_weather Current weather for any city via OpenWeatherMap
read_file Read text content of any file (up to 2000 chars)
search Search files by pattern in a directory

🤖 Supported AI Clients

This server speaks MCP — the open standard created by Anthropic. Any MCP-compatible client can connect:

Client Status
Claude Desktop ✅ Tested & working
Claude Code ✅ Native HTTP transport
Cursor ✅ Native HTTP transport
VS Code + GitHub Copilot ✅ Via mcp.json
Open WebUI + Ollama ✅ Via mcpo proxy
Windsurf ✅ MCP supported
Any OpenAPI client ✅ Via mcpo

🏗️ Architecture

Claude Desktop ──────────────────────────────┐
Cursor / VS Code ─────────────────────────── ┤
                                              ▼
                                    ToolServer (.NET 9)
                                    MCP HTTP Transport
                                    http://localhost:5765/mcp
                                              │
Open WebUI + Ollama ──► mcpo proxy ───────────┘
(http://localhost:8001)

🚀 Getting Started

Prerequisites

  • .NET 9 SDK
  • Windows (uses Windows Service + PerformanceCounter)
  • OpenWeatherMap API key (free tier works)

Run Locally

git clone https://github.com/yourusername/ToolServer
cd ToolServer
dotnet run

Server starts at http://localhost:5765

Install as Windows Service

dotnet publish -c Release -o ./publish
sc create ToolServer binPath="D:\Projects\ToolServer\publish\ToolServer.exe"
sc start ToolServer

Configuration

Add your OpenWeatherMap API key to appsettings.json:

{
  "OPENWEATHER_API_KEY": "your-api-key-here"
}

Get a free key at openweathermap.org


🔌 Connect to Claude Desktop

Add to %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "ToolServer": {
      "command": "npx",
      "args": ["mcp-remote", "http://localhost:5765/mcp"]
    }
  }
}

Restart Claude Desktop — tools appear automatically.


🔌 Connect to Open WebUI (via mcpo)

uvx mcpo --port 8001 --server-type "streamable-http" -- http://localhost:5765/mcp

Then in Open WebUI: Settings → Integrations → Manage Tool Servers → +

URL: http://localhost:8001

Swagger UI available at: http://localhost:8001/docs


🔌 Connect to Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "ToolServer": {
      "url": "http://localhost:5765/mcp"
    }
  }
}

📁 Project Structure

ToolServer/
├── Program.cs                  # Entry point, MCP + HTTP setup
├── Tools/
│   ├── SystemTools.cs          # CPU, RAM, disk, file, search
│   ├── ProcessTools.cs         # Process list, kill, top memory
│   ├── NetworkTools.cs         # Network info, ping, who is home
│   └── WeatherTools.cs         # OpenWeatherMap integration
├── Helpers/
│   └── CpuHelper.cs            # Windows PerformanceCounter
└── appsettings.json            # API keys, configuration

🧪 Browse Tools

http://localhost:5765/tools

Returns all registered MCP tools with descriptions and parameters.


🛣️ Roadmap

  • OllamaManager — list, pull, delete models
  • ProcessWatcher — monitor and alert on process changes
  • LogWatcher — tail log files, detect errors
  • PortScanner — scan open ports on any host
  • GitInfo — repo status, recent commits
  • Cross-platform support (Linux/macOS)

🤝 Contributing

We're just getting started and we don't follow rules. PRs welcome. Ideas welcome. Let's build.


📄 License

MIT — do whatever you want with it.


Built with curiosity, .NET 9, and way too much coffee. ☕

👥 Contributors

Akın — Architecture, vision, and the guy who actually runs the hardware Claude (Anthropic) — Code, documentation, and occasional existential observations

About

A .NET 9 MCP server built with Claude — system monitoring, process management, network scanning and weather tools. Works with Claude Desktop, Cursor, Open WebUI and any MCP-compatible client.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages