Memory, skills, and live data sources behind one MCP endpoint.
Relivo MCP Server is a multi-namespace Model Context Protocol server in Go. Point any MCP client at a route and its tools appear: memory, skills, Search Console, Product Hunt, and events, all behind one HTTP mux.
{
"mcpServers": {
"memory": {
"type": "http",
"url": "https://go-mcp-server-latest.onrender.com/memory/mcp",
"headers": {
"X-API-Key": "<your-api-key>"
}
},
"skills": {
"type": "http",
"url": "https://go-mcp-server-latest.onrender.com/skills/mcp",
"headers": {
"X-API-Key": "<your-api-key>"
}
},
"gsc": {
"type": "http",
"url": "https://go-mcp-server-latest.onrender.com/gsc/mcp",
"headers": {
"X-API-Key": "<your-api-key>"
}
},
"producthunt": {
"type": "http",
"url": "https://go-mcp-server-latest.onrender.com/producthunt/mcp",
"headers": {
"X-API-Key": "<your-api-key>"
}
},
"event": {
"type": "http",
"url": "https://go-mcp-server-latest.onrender.com/event/mcp",
"headers": {
"X-API-Key": "<your-api-key>"
}
}
}
}5 servers, one endpoint
Each namespace is a fully independent MCP server. Mount the ones you need and ignore the rest.
/memory/mcpPer-user long-term memory. Hybrid RAG (semantic + keyword) over Postgres + pgvector.
Explore/skills/mcpFind and download Agent Skills live from GitHub. Nothing is cached; every call reflects live GitHub.
Explore/gsc/mcpGoogle Search Console over MCP: properties, search-analytics reports, URL inspection, and sitemaps.
Explore/producthunt/mcpProduct Hunt's v2 GraphQL API over MCP: posts, topics, collections, users, and a raw GraphQL escape hatch.
Explore/event/mcpPublish and consume Kafka messages over MCP. Produce to a topic, poll it back through a durable consumer group, and manage topics on Confluent Cloud.
ExploreBuilt to extend
Opinionated where it counts, out of your way everywhere else.
Multi-namespace mux
Five independent MCP servers on one endpoint. A domain never reaches across another except through internal/mcpx.
Self-registering
Add a namespace as a single package with an init(). cmd/server/main.go never changes; the mux picks it up on the next start.
Streamable HTTP
Built on the official MCP Go SDK's Streamable HTTP transport, over stdlib net/http with structured slog logging.
Hybrid RAG memory
Durable, per-user recall by meaning and keyword over Postgres + pgvector. Store a fact once, retrieve it across sessions.
Live Agent Skills
Find and download Agent Skills straight from GitHub in real time. Nothing is cached; every call reflects live GitHub.
Keyed by default
Every namespace requires an X-API-Key before dispatch, and memory scopes each caller to their own rows — one caller can never read another's memories.
Adding a namespace is one package
Namespaces self-register through internal/mcpx. Create a package that calls mcpx.Register from its init(), blank-import it, and the mux mounts the new route on the next start. No wiring, no central registry to edit.
// internal/todo/register.go
package todo
func init() { mcpx.Register(namespace{}) }
// That's it. Blank-import the package in main.go
// and the mux mounts /todo/mcp on the next start.Point a client at it and go
Free and open source. Clone the repo, run make run, and connect your first MCP client in under a minute.