Show HN: We packaged an MCP server inside Chromium
9 by felarof | 6 comments on Hacker News. Hey HN, we just shipped a browser with an inbuilt MCP server! We're a YC startup (S24) building BrowserOS — an open‑source Chromium fork. We're a privacy‑first alternative to the new wave of AI browsers like Dia, Perplexity Comet. Since launching ~3 months ago, the #1 request has been to expose our browser as an MCP server. -- Google beat us to launch with chrome-devtools-mcp (solid product btw), which lets you build/debug web apps by connecting Chrome to coding assistants. But we wanted to take this a step further: we packaged the MCP server directly into our browser binary. That gives three advantages: 1. MCP server setup is super simple — no npx install, no starting Chrome with CDP flags, you just download the BrowserOS binary. 2. with our browser's inbuilt MCP server, AI agents can interact using your logged‑in sessions (unlike chrome-devtools-mcp which starts a fresh headless instance each time) 3. our MCP server also exposes new APIs from Chromium's C++ core to click, type, and draw bounding boxes on a webpage. Our APIs are also not CDP-based (Chrome Debug Protocol) and have robust anti-bot detection. -- Few example use cases for BrowserOS-mcp are: a) *Frontend development with Claude Code*: instead of screenshot‑pasting, claude-code gets WYSIWYG access. It can write code, take a screenshot, check console logs, and fix issues in one agentic sweep. Since it has your sessions, it can do QA stuff like "test the auth flow with my Google Sign‑In." Here's a video of claude-code using browserOS to improve the css styling with back-and-forth checking: https://youtu.be/vcSxzIIkg_0 b) *Use as an agentic browser:* You can install BrowserOS-mcp in claude-code or Claude Desktop and do things like form-filling, extraction, multi-step agentic tasks, etc. It honestly works better than Perplexity Comet! Here's a video of claude-code opening top 5 hacker news posts and summarizing: https://youtu.be/rPFx_Btajj0 -- *How we packaged MCP server inside Chromium binary*: We package the server as a Bun binary and expose MCP tools over HTTP instead of stdio (to support multiple sessions). And we have a BrowserOS controller installed as an extension at the application layer which the MCP server connects to over WebSocket to control the browser. Here's a rough architecture diagram: https://dub.sh/browseros-mcp-diag -- *How to install and use it:* We put together a short guide here: https://ift.tt/yZqgDK7 Our vision is to reimagine the browser as an operating system for AI agents, and packaging an MCP server directly into it is a big unlock for that! I'll be hanging around all day, would love to get your feedback and answer any questions!
Show HN: Modeling the Human Body in Rust So I Can Cmd+Click Through It
31 by lleong1618 | 33 comments on Hacker News. I started this trying to understand two things: why my Asian friends turn red after drinking, and why several friends all seemed to have migraine clusters. I was reading medical papers and textbooks, but kept getting lost jumping between topics. I thought: what if I could just Cmd+Click through this like code? What if "ALDH2 gene" was actually clickable, and took me to the variant, the phenotype, the population frequencies? So I started modeling human biology in Rust with my Ralph agent (Claude in a loop, ty ghuntley). Turns out the type system is perfect for this. Every biological entity is strongly-typed with relationships enforced at compile time. After 1 day of agent coding: - 277 Rust files, ~95k lines of code - 1,561 tests passing - 13 complete organ systems - Genetics with ancestry-specific variants - Clinical pathology models Try it: git clone https://ift.tt/rPdzbRt cd open_human_ontology cargo run --example ide_navigation_demo Then open `examples/ide_navigation_demo.rs` and Cmd+Click through: Understanding Asian flush: AsianGeneticVariantsCatalog::get_metabolic_variants() // Click through to: // → ALDH2 gene on chromosome 12q24.12 // → rs671 variant (Glu504Lys) // → 40% frequency in Japanese population // → Alcohol flush reaction // → 10x esophageal cancer risk with alcohol // → Acetaldehyde metabolism pathway Understanding migraines: Migraine { subtype: WithAura, triggers: [Stress, LackOfSleep, HormonalChanges], genetic_variants: ["rs2075968", "rs1835740"], ... } // Click through to: // → 17 migraine trigger types // → 12 aura symptom types // → Genetic risk factors // → Why clusters happen (HormonalChanges → Menstruation) Now I can actually navigate the connections instead of flipping through PDFs. Heart → CoronaryArtery → Plaque. VisualCortex → 200M neurons → NeuralConnection pathways. It's like Wikipedia but type-checked and with jump-to-definition. This isn't production medical software - it's a learning tool. But it's way more useful than textbooks for understanding how biological systems connect. The agent keeps expanding it. Sometimes it OOMs but that's part of the fun. Tech: Rust, nalgebra, serde, rayon, proptest I am not a dr or medical professional this is for my education you can commit to it if you want to or review and open some PR's if you find wrong information or want to add references.
Show HN: I built a local-first podcast app
15 by aegrumet | 4 comments on Hacker News. I worked on early podcast software in 2004 (iPodder/Juice) and have been a heavy podcast consumer ever since. I wanted a podcast app that respects your privacy and embraces the open web—and to explore what's possible in the browser. The result is wherever.audio, which you can try right now at the link above. How it works: It's a progressive web app that stores all your subscriptions and data locally in your browser using IndexedDB. Add it to your home screen and it feels native. Works offline with downloaded episodes. No central server storing your data—just some Cloudflare/AWS helpers to smooth out browser limitations. What makes it different: - True local-first: Your data stays on your device - Custom feeds: Add any RSS feed, not just what's in a directory - On-device search: Search across all feeds and episodes, including your custom ones - Podcasting 2.0 support: Chapters, transcripts, funding tags, and others - Auto-generated chapters: For popular shows that don't have them - AI-powered discovery: Ask questions to find shows and episodes (this feature does send queries to a 3rd party API, and also uses anonymized analytics while we work out the prompts) - Audio-guided tutorials: Interactive walkthroughs with voice guidance and visual cues The basics work well too: Standard playback features, queue management, speed controls, etc. I'm really interested in feedback—this is more passion project than business right now. I've been dogfooding it as my daily podcast app for over a year, and I'm open to exploring making it a business if people find it valuable. Curious if there are unmet needs that a privacy-focused, open web approach could address.
Show HN: ut – Rust based CLI utilities for devs and IT
20 by ksdme9 | 5 comments on Hacker News. Hey HN, I find myself reaching for tools like it-tools.tech or other random sites every now and then during development or debugging. So, I built a toolkit with a sane and simple CLI interface for most of those tools. For the curious and lazy, at the moment, ut has tools for, - Encoding: base64 (encode, decode), url (encode, decode) - Hashing: md5, sha1, sha224, sha256, sha384, sha512 - Data Generation: uuid (v1, v3, v4, v5), token, lorem, random - Text Processing: case (lower, upper, camel, title, constant, header, sentence, snake), pretty-print, diff - Development Tools: calc, json (builder), regex, datetime - Web & Network: http (status), serve, qr - Color & Design: color (convert) - Reference: unicode For full disclosure, parts of the toolkit were built with Claude Code (I wanted to use this as an opportunity to play with it more). Feel free to open feature requests and/or contribute.
Show HN: Run – a CLI universal code runner I built while learning Rust
4 by esubaalew | 0 comments on Hacker News. Hi HN — I’m learning Rust and decided to build a universal CLI for running code in many languages. The tool, Run, aims to be a single, minimal dependency utility for: running one-off snippets (from CLI flags), running files, reading and executing piped stdin, and providing language-specific REPLs that you can switch between interactively. I designed it to support both interpreted languages (Python, JS, Ruby, etc.) and compiled languages (Rust, Go, C/C++). It detects languages from flags or file extensions, can compile temporary files for compiled languages, and exposes a unified REPL experience with commands like :help, :lang, and :quit. Install: cargo install run-kit (or use the platform downloads on GitHub). Source & releases: https://ift.tt/Jw5k2yW I used Rust while following the official learning resources and used AI to speed up development, so I expect there are bugs and rough edges. I’d love feedback on: usability and UX of the REPL, edge cases for piping input to language runtimes, security considerations (sandboxing/resource limits), packaging and cross-platform distribution. Thanks — I’ll try to answer questions and share design notes.