Building a Crystal MCP for Web Search and Content Extraction

It was 7pm on a Wednesday. I was staring at my terminal, watching OpenCode try to answer a question about a library it had never seen before. The LLM was doing its best. But it was hallucinating API endpoints that didn’t exist. And I thought: “Why can’t my AI just… search the web?” The Problem I use OpenCode, Claude Code and some times Crush as my daily coding companion. It’s powerful. But it has a blind spot: The native web fetch can’t access claudflare protected sites. ...

March 25, 2026 · 6 min read · 1189 words · enrell

navi-agent Devlog #1 — Sprint 1 in motion: TUI, orchestrator loop, MCP path, and .env onboarding

The last post was about architecture decisions. This one is about execution. I spent this cycle turning ideas into something runnable and testable. Not polished. Not “AI magic.” Just real foundations. What shipped since the last post 1) REST API vertical slice navi-agent now has a working API backbone with health, task, and agent routes, including sync flow. This gave me a full path from request → service → persistence → response, which is where real design flaws start to show up. ...

March 2, 2026 · 4 min read · 643 words · enrell

Sharing some learnings about MCP and AST

Hello, world! First of all, I want to say that this is my first post in a long time, and I hope to keep writing more often. I have been working on a MCP (Model Context Protocol) for a while now, and I have been learning a lot about typescript AST manipulation. I want to share some of my learnings with you. What is a MCP (Model Context Protocol)? MCP is an open protocol that allows you to standardize the way that applications provide context to their models. ...

June 29, 2025 · 4 min read · 659 words · enrell