mcpGW
An MCP gateway and proxy designed to simplify applications that utilize various tools.
mcpGW
An MCP gateway/proxy to simplify apps that use tools, derived from https://github.com/mark3labs/mcphost
This is a work in progress and only tested with ollama
Demo Setup 🔧
- Ollama Setup:
- Install Ollama from https://ollama.ai
- Pull your desired model:
ollama pull mistral
- Ensure Ollama is running:
ollama serve
- Optional whisper.cpp support for speech to prompt
- Install Whisper.cpp from https://github.com/ggml-org/whisper.cpp
- Run whisper server https://github.com/ggml-org/whisper.cpp/tree/master/examples/server
- Install a copy of ffmpeg into /tools
- Optional melotts
- Create a server config.. see config.sample.json
{
"UI": {
"Listen": ":8080",
"TLS": true,
"Root": "example/ui"
},
"_comment": "You don't need SpeechToText or TextToSpeech, current code only suports whisper-server and melotts",
"SpeechToText": {
"Provider": "whisper",
"Host": "http://10.0.0.10:8802",
"Model": ""
},
"TextToSpeech": {
"Provider": "melotts",
"Host": "http://10.0.0.10:7777",
"Model": ""
},
"Inference": {
"Provider": "ollama",
"Host": "http://localhost:11434",
"Token": "",
"Model": "mistral-small3.1",
"SystemPrompt": ""
},
"Servers": {
"mcpServers": {
"reminders": {
"command": "./reminders",
"args": [
]
}
}
}
}
- Build and run
make all
./mcpgateway --config ./config.sample.json
Writing your own application
mcpGW provides a set of apis (see server/server.go) and will run any application pointed to by the config UI section:
We included a basic sample UI:
"UI": {
"Listen": ":8080",
"TLS": true,
"Root": "example/ui"
},
Writing your own mcp server
mcpGW will run any mcpserver, but we also included a simple one in examples/mcpservers/reminders
You can then add the server to the mcpServers section of the config
"Servers": {
"mcpServers": {
"reminders": {
"command": "./reminders",
"args": [
]
}
}
}
Related Servers
MCP-Slicer
Integrates 3D Slicer with model clients via MCP, allowing natural language control for medical image processing and scene manipulation.
Remote MCP Server (Authless)
An example of a remote MCP server deployable on Cloudflare Workers without authentication.
Domain Checker
Check domain name availability using WHOIS lookups and DNS resolution.
Remote MCP Server (Authless)
An example of a remote MCP server deployable on Cloudflare Workers, without authentication.
Remote MCP Server (Authless)
An authentication-free remote MCP server deployable on Cloudflare Workers.
MCP LaTeX Server
Create, edit, and manage LaTeX files. Requires an external LaTeX distribution like MiKTeX, TeX Live, or MacTeX.
Kafka MCP
A natural language interface to manage Apache Kafka operations.
Stability AI
Integrates with the Stability AI API for image generation, editing, and upscaling.
Release Notes Server
Generates release notes from GitHub repositories by fetching and organizing commits.
Azure DevOps
Provides comprehensive integration with Azure DevOps services.