Manceps – Ruby Client for the Model Context Protocol (MCP)
Ruby MCP client with httpx persistence when other options break persistent connections.

MCP over Nostr relays is clever, but solving a niche problem with immature ecosystem adoption.
MCP server developers, self-hosters, teams building remote capability servers on constrained hardware
Model Context Protocol · Nostr · SSH tunneling
I started building ContextVM some months ago, this is an open protocol that runs the Model Context Protocol (MCP) over Nostr.
In practice, it’s a transport for MCP that lets you expose remote servers without needing a domain, inbound ports, or OAuth, clients, and servers only need an outbound internet connection.
The problem I ran into: When deploying a remote MCP server you can feel the pain. You usually need a domain name, a static IP, TLS certificates, port forwarding, and some way to auth (often OAuth). That friction makes it hard to spin up a service on your laptop or a Raspberry Pi and expose it safely.
ContextVM solves this at the transport layer. It replaces HTTP/SSE with Nostr relays that act like a distributed, stateless message bus:
Identity/auth: public keys instead of OAuth.
Network/transport: clients and servers only need outbound connection to relays, so you can run behind NAT or a strict firewall.
Security: client↔server traffic is end-to-end encrypted; relays just route encrypted events blindly.
Addressing/discovery: servers (and clients) are addressable by public key, no domains required. Servers can be announced on relays instead of central registries. Private servers can skip announcements entirely, clients connect if they know the server’s public key.
Payments: Recently we included a payment method agnostic specification defining the lifecycle of payments, this is CEP-8 https://docs.contextvm.org/spec/ceps/cep-8/
The best part, you don’t need to rewrite your existing MCP servers:
- `cvmi`: a CLI to expose any local HTTP/Stdio MCP server over ContextVM. For example, `npx cvmi serve -- npx -y @modelcontextprotocol/server-filesystem /tmp`
- `ctxcn`: inspired by `shadcn/ui`. It connects to a server, reads its MCP schema, and generates a type-safe TypeScript client into your codebase.
- TypeScript SDK: for those who want to build natively on the protocol.
- Project site: It works as a tool for discovery, and debugging, you can run your server locally and connect through the site
We'd love feedback, questions, or critiques. If you want to dig deeper, you can visit the project page for a blog, read the docs, or just build something. It's all open source, permissionless, and fun!
We are also publishing a bi-weekly newsletter on substack: https://contextvm.substack.com/
Code: https://github.com/contextvm
Project site: https://contextvm.org
Ruby MCP client with httpx persistence when other options break persistent connections.
First MCP security scanner addressing early Docker Hub moment—but audience is still nascent.
Catches silent MCP breakage VCR.py never could—schema drift detection.
Official Balsamiq MCP server turns wireframes into LLM context for code generation.
Turkish collation awareness and NOLOCK support show real production thinking.
Hybrid tool discovery with SQLite FTS5 beats dumping hundreds of tools on agents.