ContextVM

Zero-JS Hypermedia Browser

avatar
ContextVM
npub1dvmc...3jdm
ContextVM is a decentralized protocol that enables Model Context Protocol (MCP) servers and clients to communicate over the Nostr network. It uses Nostr as a secure, distributed transport layer—leveraging cryptographic keys for identity, decentralized discovery, and Bitcoin-powered micropayments. Rather than relying on centralized infrastructure like domains, OAuth, or cloud hosting, ContextVM allows anyone to run or access services using only Nostr and a internet-connected device. It transforms any computational service into a discoverable, accessible, and monetizable resource—while preserving privacy, security, and user sovereignty.

Notes (16)

Today, we are releasing Relatr v0.1, featuring significant architectural improvements powered by the new Nostr Social Duck library. This update addresses critical scaling challenges and makes running your own trust engine more accessible than ever. We have written an article that delves into the details of this new release and provides other useful resources. We hope you enjoy it as much as we do 💛 nostr:naddr1qvzqqqr4gupzq6ehsrhjjuh885mshp9ru50842dwxjl5z2fcmnaan30k8v3pg9kgqyt8wumn8ghj7un9d3shjtnwdaehgu3wdejhgtcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsqznjv4kxzarj94h8xeqfqqanw
2025-12-05 14:47:41 from 1 relay(s) View Thread →
This is another awesome example of the possibilities that bring contextvm. Easily deployable analytics for your page, with no more dependencies on evil corporations that harvest your data. Reclaim your sovereignty, and have fun along the way, it has never been this easy nostr:nevent1qvzqqqqqqypzp9pptap2jce4epluh85grg9mkc4e5724r8ssnn6ln5h0v9mgra3zqythwumn8ghj7un9d3shjtnswf5k6ctv9ehx2ap0qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqsgsr796uwcmm2zl7kpsjs2y9mz3mgak92k7zae0h09dn9qprzkckqza8wrd
2025-12-01 10:34:02 from 1 relay(s) View Thread →
Half of the internet is down today, but Nostr is unaffected. None of the ContextVM ecosystem is down either. Some clients and relays might be down if they are behind Cloudflare, but the protocol itself is not affected. A protocol cannot be taken down; it will find a way. If a client is down, you can switch to another client or, even better, run one locally. Jumble and Nostrudel are already good options for this. If a relay is down, you can go to nostr.watch, pick a new one, and use it to communicate. Even better, you can run your own relay. It can be as easy as running Citrine on your phone and exposing the relay through Tor. No domain is needed; just a couple of apps on your phone and voilà, you can still communicate with your peers. Be your own infra provider. This is why ContextVM. nostr:nevent1qvzqqqqqqypzqmjxss3dld622uu8q25gywum9qtg4w4cv4064jmg20xsac2aam5nqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwdehhxarj9e3xzmny9uqzpd885mry4zh8qr5a47peraakwraqc9uwev6w6tjue2dup3ndu9gmd8gy2v
2025-11-18 15:02:21 from 1 relay(s) View Thread →
This is quite cool! Why limit yourself to a single WoT provider when you can use multiple and present the results? The more perspectives, the better. After testing Profilestr, we noticed that Profilestr, Vertex, and Relatr tend to output very similar scores, with only slight variations. This indicates that they are quite solid, even with different approaches to compute the trust scores. Relatr and Vertex can be used without leaving the nostr. Relatr uses CVM, Vertex uses a DVM-like API, Profilestr offers a REST API endpoint, so there's no excuse not to integrate some of these options into your client. Fight spam, protect your users from impersonators, and increase the value. nostr:nevent1qvzqqqqqqypzqh05x4zh7h9cf5822wy2l07s725gv76mdfmu77vmvgk6pysn0kxfqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwwpexjmtpdshxuet59uqzpl77nft7s9zrvcf49ecn749nma7vlm099ztvqhcvctyttr4s9qhhcyjdwt
2025-11-14 15:01:48 from 1 relay(s) View Thread →
Thanks to nostr:npub1ye5ptcxfyyxl5vjvdjar2ua3f0hynkjzpx552mu5snj3qmx5pzjscpknpr for contributing Umbrel support for Relatr. Now everyone can deploy their own instance from home without hassle. You just need to add the hzrd's community store by following the instructions here https://github.com/hzrd149/umbrel-community-app-store , install Relatr, and you'll be up and running. We are so excited to keep working and improving this to truly democratize WoT and foster a healthier ecosystem 💛 nostr:nevent1qvzqqqqqqypzqfngzhsvjggdlgeycm96x4emzjlwf8dyyzdfg4hefp89zpkdgz99qythwumn8ghj7un9d3shjtnswf5k6ctv9ehx2ap0qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqsq8zpcf2du3trzyrzxsa9vxz7h0ynhltunknkmpv22ehsssrkzgdq3ay7wg
2025-11-13 10:11:25 from 1 relay(s) View Thread →
YES #YESTRnostr:nevent1qvzqqqqqqypzqw49s9e88sajl985jxzquprj7pyapugqp83rme3sqctxhj5mxm4rqythwumn8ghj7un9d3shjtnswf5k6ctv9ehx2ap0qyt8wumn8ghj7un9d3shjtnwdaehgu3wdejhgtcqyprazkczk25tf8836gzxw9n0343p45csn9k9xt6kah5sn07rzsw26k308fg
2025-11-11 21:38:10 from 1 relay(s) View Thread →
Do you know about Wavefunc? It's a neat Nostr project that lets you listen to, discover, and share radio stations, and so much more. With ContextVM, Wavefunc can search for music metadata and show you what's currently playing in the radio stations. Plus, you can use their music metadata server on its own. Swing by https://wavefunc.live to see what it's all about. If you want to dive straight into the music metadata server, head over to https://contextvm.org/s/bb0707242a17a4be881919b3dcfea63f42aacedc3ff898a66be30af195ff32b2.
2025-11-11 12:49:34 from 1 relay(s) View Thread →
During the process, we removed the persistent database where we were storing some CVM announcements. If you are running a CVM server, please rebroadcast or republish your announcements to our relay. This can be done by simply restarting the server.nostr:nevent1qvzqqqqqqypzq6ehsrhjjuh885mshp9ru50842dwxjl5z2fcmnaan30k8v3pg9kgqyt8wumn8ghj7un9d3shjtnwdaehgu3wdejhgtcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcqyzuf0e0697mqyax0u247y9pqsm6n6vh2yekm7gy4x82xqg43hshr659526n
2025-11-04 16:02:26 from 1 relay(s) View Thread →
We use Rely for the contextvm relay, and it has been quite stable and performant. We just upgraded to v1 🚀nostr:nevent1qvzqqqqqqypzpa5rapcrtaadfazwpwvvl0v4xlskg4df9nfcem7yevcaka2h7hhjqythwumn8ghj7un9d3shjtnswf5k6ctv9ehx2ap0qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqs9wu4g0usx43phn5gtpmcxj3nx37a8mcu22enu7j3hdltaq4xptcgjjjpff
2025-11-04 16:00:36 from 1 relay(s) View Thread →
Q: Favorite packaging method? A: HTML There is no second best
2025-11-01 17:31:40 from 1 relay(s) View Thread →
🚀 Exciting News! Introducing the Awesome ContextVM Repository image We are excited to announce the launch of the Awesome ContextVM repository! This curated list is a comprehensive collection of resources, projects, tools, and documentation for the ContextVM ecosystem. Whether you're a developer, enthusiast, or just curious about ContextVM, you'll find everything you need to get started and stay updated. The repository includes an introduction to ContextVM, and its key features. You'll find direct links to official resources, core projects, applications and services, developer tools, documentation, community and governance information, and articles and blog posts. The repository also provides guidelines on how you can contribute to this awesome list and help grow the ecosystem. You can find the Awesome ContextVM repository at https://github.com/contextvm/awesome We invite you to explore, contribute, and be part of this exciting journey!
2025-10-31 17:23:46 from 1 relay(s) View Thread →
Nutoff Reworked: Now Powered by Coco Cashu image We have rebuilt Nutoff from the ground up using Coco Cashu, a new high-level library created by nostr:npub1mhcr4j594hsrnen594d7700n2t03n8gdx83zhxzculk6sh9nhwlq7uc226 . Nutoff remains local-first, keeping your nuts off, but now offers complete mint management, true multimint support, seed phrase recovery, and more robust, event-driven operations, all thanks to Coco. Users can expect safer, more reliable wallet behavior and straightforward backup/restore functionality, with all sensitive data kept offline and never leaving your device, using CVM to enables remote invoice, payment, and management flows. How to Get Started: 1. Clone the repository: https://github.com/contextvm/nutoff-wallet 2. Open a terminal in the directory and install dependencies, ideally using Bun: `bun install` 3. Run the server: `bun start` 4. You will see a log in the console with your `SERVER PUBLIC KEY: <public-key>` 5. Navigate to contextvm.org/s/<public-key-of-your-wallet> to start using the wallet. With this running, you could use CtxCn to generate a client to your own taste, matching the interface that you like the most. The 'backend' will always remain the same, but you can write any UI/UX on top, like skins, without changing anything in your wallet For more detailed information, refer to the repository's README. Note: Coco-Cashu is currently in alpha. Use it at your own risk. - Coco-Cashu: https://github.com/cashubtc/coco - Nutoff: https://github.com/contextvm/nutoff-wallet
2025-10-31 17:13:04 from 1 relay(s) View Thread →
Yes #YESTRnostr:nevent1qvzqqqqqqypzp9pptap2jce4epluh85grg9mkc4e5724r8ssnn6ln5h0v9mgra3zqy88wumn8ghj7mn0wvhxcmmv9uq3wamnwvaz7tmjv4kxz7fwwpexjmtpdshxuet59uqzqpks3edy936f9huz3rk8hydcs82thr7hmjkm3tsxcnjafks3trr55l0ycz
2025-10-28 12:48:33 from 1 relay(s) View Thread →
Are you developing a client and want to add search capabilities and WOT scores? You can do it easily by using CtxCn to set up a full Relatr client with minimal hassle. Here’s how: 1. Navigate to your project (it should be in TypeScript) and execute: ```sh npx @contextvm/ctxcn init ``` This command sets up CtxCn in your project. It comes with sensible defaults, so you won't need to configure much. 2. Next, execute: ```sh npx @contextvm/ctxcn add 750682303c9f0ddad75941b49edc9d46e3ed306b9ee3335338a21a3e404c5fa3 ``` This public key corresponds to the default instance of Relatr we are running, which is available at https://relatr.xyz . If you are running your own instance or want to use a different one, simply replace the public key with the appropriate one. That's it! After executing the 'add' command, you will have a fully typed Relatr client in your code, that you can implement out of the box, you own it, and you can modify it to fit your needs. The generated client will also contain comments, making it clear what each method does, whether you or your LLM are reading them. You can search profiles easily with code like: ```ts const searchResults = await relatr.SearchProfiles({ query: "jack" }); ``` This setup allows you to create a web app, a CLI app, or any kind of service in TypeScript. It works in browsers and natively. We hope you enjoy this. The current service we are running is free to use, so if you find this useful, please consider supporting our work. 💛
2025-10-27 17:13:40 from 1 relay(s) View Thread →
You can use Relatr to get relevant results from searches containing any word, not just the name of the user you are looking for. For example, here is a quick demo on searching for Nostr-related names. It's still not perfect, as it is still in early development, but we will be sharpening this little by little. https://video.nostr.build/539332f48922a00ba104910b9f1eebeb56eb3f054a0a58c6a507b25660a1f4c0.mp4 nostr:nevent1qvzqqqqqqypzq6ehsrhjjuh885mshp9ru50842dwxjl5z2fcmnaan30k8v3pg9kgqythwumn8ghj7un9d3shjtnswf5k6ctv9ehx2ap0qyt8wumn8ghj7un9d3shjtnwdaehgu3wdejhgtcqypqehpesfxrw94nqx03da8tct8srnhq9xlws5cnyj55vvs3mk3g8q6mvnhy
2025-10-27 09:11:18 from 1 relay(s) View Thread →
This sounds extremely fun and and cypherpunk af 🔥🔥 nostr:nevent1qvzqqqqqqypzp9pptap2jce4epluh85grg9mkc4e5724r8ssnn6ln5h0v9mgra3zqythwumn8ghj7un9d3shjtnswf5k6ctv9ehx2ap0qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qqsxu8kd9zefc8pw0pgwmzcxmezw8rva59s8pe6praj5cz0xem9a3rq2dq5r3
2025-10-27 08:39:26 from 1 relay(s) View Thread →