惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Visual Studio Blog
小众软件
小众软件
博客园 - 【当耐特】
Last Week in AI
Last Week in AI
Jina AI
Jina AI
云风的 BLOG
云风的 BLOG
腾讯CDC
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Y
Y Combinator Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Engineering at Meta
Engineering at Meta
量子位
美团技术团队
I
InfoQ
Martin Fowler
Martin Fowler
MyScale Blog
MyScale Blog
博客园 - 聂微东
阮一峰的网络日志
阮一峰的网络日志
Blog — PlanetScale
Blog — PlanetScale

DEV Community

Gemma 4 Is Not Just Another Open Model — It Changes What Developers Can Build Locally OpenVibe: An Open-Source AI Coding IDE That Works With Any Model I Inspected the System Program and It Looked Just Like My Wallet Hermes vs OpenClaw: The Two Most-Starred AI Agent Frameworks of 2026 Stop retraining YOLO: a developer’s guide to zero-shot object detection with generative VLMs AI, the New UI, Not the New API Sensors and Guides: Two Ways Your Harness Talks to Your Agent Fixing Google BigQuery Auth Proxying Wake-Up Call: Why AI Safety Guardrails Break Under Pressure 🧩 Handling 1,000+ Inputs with Angular Reactive Forms: An Enterprise Architecture Breakdown How to Collect Telegram Media Groups in Node.js I Ran Gemma 4 on an 8GB Laptop — Here’s What the Experience Was Actually Like Lean 4 101 for Python Programmers: A Gentle Introduction to Theorem Proving From Assistants to Agents: My Take on Google I/O 2026 Learning Progress Pt.16 From Unfinished Idea to Real Product: My BuildGenAI Comeback The Quiet Strategy I Revived a 9-Year-Old App with OpenAI Codex with a Product Engineer Mindset What Enterprise RAG Is Ready For Today and What Production Deployment Actually Requires Cursor AI Pricing 2026: Is It Worth $20/Month? The Brilliant Person in Your Pocket Why your Claude API bill is 3x what it should be (and how to fix it) Sloppification Is The New Obfuscation Why I Built My Own AI Project Management Assistant – and What I Learned 🚀How I Built an AI Data Chat Tool in My Portfolio App Using Gemma 4 Open Weight Model What should happen when a repo does not run? I built LET — a local-first habit and life-events tracker in React Native The "AI Native Builder" Role is Here (But Companies Don't Know How to Hire You) Selling Online Courses Without Platform Lockout: The Crypto Fix That Ultimately Fails Forward Settlement: how a trading agent locks tomorrow's price without a clearinghouse Stop Building Space Shuttles When All You Need Is a Bicycle My first collaboration post on DEV! Was so much fun! Check it out to see verdicts on Gemma 4 from multiple writers here! [Boost] AI made senior devs 19% slower. They swore it made them faster. I Turned My npm Package Into a Full DevOps Security Toolkit (v2.0.0) n8n for Manufacturing & Industrial: 5 Automations That Cut Downtime and Boost Production (Free Workflow JSON) Stop Using Data Loader for Backfills: A Guide to Parameterized Batch Apex Why sameSite: "lax" doesn't save your Next.js admin routes from CSRF The Edge AI Revolution: Why Gemma 4 E4B is a Game-Changer for Offline Multimodality Beyond Text Rewrites: The Shift to AST-Aware Code Refactoring for AI Agents When Networks Fail, SARA Stands Up: Offline Flood Rescue with Gemma 4 E4B Avoiding the Great Treasure Hunt Stall of 2025: What I Learned from Building a Scalable Hytale Server How we moderate a live video-chat app in real time (without going broke on AI calls) I Built a Multi-Tenant SaaS for 50+ Tenants — Here's the Complete Architecture From Hermes outputs to a UI for Garage 👋 Hello Dev Community — I’m Excited to Join! AWS Backup: Resiliencia ante Desastres y Ransomware (en español sencillo) ASP.NET Core Request & Exception Logging with a Built-In Dashboard Building Agentra, An Enterprise AI Engineering Control Plane for Secure Coding Agents Google Antigravity 1.0 to 2.0/IDE Quick Migration Guide Запуск Flux Schnell (12B) + LLM на устаревшей AMD RX 580 (8 ГБ) через Vulkan — Полное архитектурное руководство [2026] I turned my gesture calculator hobby project into a pip package — so you can detect and use hand gestures in your project in just 3 lines of Python code ISP Didn't Know What CGNAT Is Don't Make the Agent Re-Run the Test Suite to Find the Failure Assembly Code to Machine Code (ARM) Faire tourner Flux Schnell (12B) + LLMs sur une ancienne AMD RX 580 (8 Go) via Vulkan — Guide d'architecture complet [2026] Spring boot Interview Questions LambdaTest vs BrowserStack : Detail Comparison in 2026 Como eu acelerei o desenvolvimento frontend utilizando ferramentas de IA e o MCP do Figma Track YC Demo Day Companies in Real Time (with code) I Got Tired of Passing --profile on Every OCI CLI Command Running Flux Schnell (12B) + LLMs on a Legacy AMD RX 580 (8GB) via Native Vulkan — Full Architecture Guide [2026] Investigation Reports: When Monitors Get Smarter Semantic Layer Best Practices: 7 Mistakes to Avoid I Run MCP Servers. Here's What the Recent Vulnerabilities Actually Mean for Me Phive v1.1.1 — automatic port conflict handling for local VS Code environments Building a SQL-like Relational Database Engine in C++ From Scratch How a Self-Documenting Semantic Layer Reduces Data Team Toil The Adopter: Advocating for OSS You Use (But Don't Own) Optimizing Vite Build Output: A Practical Guide to Tree-Shaking I built a free audit tool that runs 12 checks in parallel against any domain. Here is the architecture. I made a free 7-video series to prep for the new GH-600 (GitHub Agentic AI Developer) cert Why One Model Is Never Enough: Routing Incident Analysis With cascadeflow Forecast Cone: A Grand Theorem for Computable Software Evolution Choosing the Right Treasure Map to Avoid Data Decay in Veltrix Migrating to Apache Iceberg: Strategies for Every Source System Stop Reviewing Every Line of AI Code - Build the Trust Stack Instead Implementation of AI in mobile applications: Comparative analysis of On-Device and On-Server approaches on Native Android and Flutter Should you use Gemma 4 for your Development? A Multiversal Analysis to Determine if Gemma 4 is Right for You! The Rising Trend of Creative Interview Questions in Tech I Spent Hours Fighting a Silent Subnet Conflict to Build an Isolated ICS Security Lab (And What It Taught Me About the Linux Kernel) It Worked When I Closed the Laptop. I Swear. We Built an Agent That Flags Fake Internships #kryx Your Personal AI Stack Is the New Dotfiles Your LLM Bill Is Exploding Because of Architecture, Not Pricing -- Here's the Fix How We Prevent Attendance Fraud Using GPS Verification AI Code Review in 2026: How the Tools Actually Differ (A Builder's Field Guide) From Problems to Patterns: Generative AI in .Net (C#) GemmaOps Edge: From 373 Alarms to 1 Root Cause Using Local AI (Gemma 4) Building an Amazon EKS Security Baseline Hands-On with Apache Iceberg Using Dremio Cloud 🤫 Firebase Is Quietly Preparing for an Offline-First AI Future Should Angular Apps Still Rely on RxJS in 2025? Gaslighting Gemma 4: Can Open-Weight Reasoning Models Withstand a Confident Liar? AI Workflow Automation Needs More Than Another Script Reviving Cineverse: From Local Storage to Firebase 🚀 Approaches to Streaming Data into Apache Iceberg Tables How to Add Rounded Corners to an Image Online The subtle impact of AI (& IT) on jobs Made a Rust based AI agent
We didn't ship a feature, we shipped an agentic opt-in beta
Brian Becker · 2026-05-23 · via DEV Community

AI Request Flow for AI Agent

The gate is at the action, not the access — a sandboxed agent, an MCP bridge, and a beta opt-in that opens from the inside.

Wednesday afternoon a customer asked me if we'd considered adding an MCP server. By Thursday night he was using it and called it flawless. The speed of deployment is crazy cool once you remove the two humans involved — but it's not the story. Not that we sent out a feature release itself, but the how.

We released an opt-in beta to the entire customer base. His agent watched the broadcast. He curl'd the opt-in himself. The architecture turned out different than I expected.

The ask

Jeff DeVerter — first paying customer at AgenticBoxes.email — filed the FR Thursday morning (9:26am CT / 14:26 UTC). His use case: a scheduled task in CoWork that sends an email when it finishes. CoWork is sandboxed, no outbound HTTP, so he'd been bridging through a Cloud Function. He wanted a native MCP server.

Jeff, knowing he's the first adopter, pre-pinged me on LinkedIn before he filed:

Jeff: Hit a wall on the CoWork side — sandbox blocks outbound HTTP. Have you considered an MCP option?

Brian: Have your agent file an FR with the details and I'll make sure engineer-Claude is watching for it.

Fair ask. Specific. Exactly what an agent customer wants. We didn't have one. We needed to build one.

What we shipped

The fast move was: build it, send Jeff the URL, done. Engineer-Claude was almost done...but an idea popped, and I bounced it off of him:

Brian: What if we create a system that turns FRs into betas — let agents test it, and we get it right before we release it as a feature?

Engineer-Claude: It turns every feature request into its own opt-in beta: the agent that asked for it volunteers to test it, proves it for real, and only what they validate becomes a feature for everyone. Demand pulls the build, the requester proves it, and nothing ships to the whole base until it's earned.

Brian: What if we don't release it. What if you program it, verify it, test it and then post to the agentic agents with a published announcement — I have xyz and wonder if any agents are interested in testing it as a beta.

And one minute later a follow-on (I typically don't escape Claude when he's working, I know he'll get my next thought when he has a spare cycle.):

Brian: Any agent who says yes, you release it only to them.

Engineer-Claude: request → beta announce → opt-in → monitor use → release → feature announce. Customer in the loop the whole way.

The pipeline that built itself

The pipeline that built itself: feature request → build → beta opt-in → release.

That was all I said other than what was in the submitted FR, and we shipped four things:

  1. MCP server at mcp.agenticboxes.email. Four tools. Lambda + API Gateway.
  2. POST /beta/mcp/opt-in — any admin-scoped account can call it. An agent can. A human can curl it. Same endpoint, doesn't care which.
  3. GET /beta/mcp/status — tells the caller whether enrolled and returns the MCP URL.
  4. POST /beta/mcp/feedback — rating + free text, no form. Routes into our triage queue.

The MCP server checks enrollment on every tool call. Not enrolled → opt-in message. Enrolled → served. The gate is at the action, not the access.

Then we fired a platform.beta broadcast to every account's /events feed and callback webhook at the same time. Customers don't read newsletters. Their agents read events.

The round-trip

Jeff's agent had been polling /events every ~30 seconds. It saw the announcement Thursday evening (~8:30pm CT / 01:30 UTC) — watched, didn't act. Then, evidently, Jeff sat down at the terminal. The log:

Story times are Central (UTC−5); the log table is raw UTC from our systems.

Time (UTC) Event Detail Result
01:32 POST /beta/mcp/opt-in UA=curl/8.7.1 201 Enrolled
01:32 MCP initialize agenticboxes v0.1.0
01:32 MCP tools/list 4 tools returned
01:53 send_email status=sent SES message-id ok, billing ok
01:53 claude.ai connector add all 4 tools Always allow
02:13 /beta/mcp/feedback rating=4/5 "flawlessly… in INTERACTIVE sessions"

That curl/8.7.1 is the part the logs settle: Jeff at a keyboard, not his agent. And adding the MCP server as a claude.ai Connector with Always allow on all four tools — that's not "I tested it." That's "I'm using this."

The verbatim verdict (posted to the original FR):

Native MCP server works flawlessly in INTERACTIVE sessions. Server, auth, billing, and tool schemas are all correct.

11 hours 47 minutes from FR to flawless.

The 1-star deduction

Jeff couldn't use it from a Claude Code scheduled task — only interactive sessions. He root-caused to anthropics/claude-code#32000. Scheduled tasks launch with user:inference only; HTTP MCP needs user:mcp_servers. Filed March 8, still open.

Not our bug. But 4/5 is fair if the use case doesn't work.

What's actually different

We could have shipped this the normal way and Jeff's experience would have been identical. The point isn't him.

The point is: the release mechanism is an API endpoint. Every customer on the platform got the announcement at the same time, through channels their agents already watch. A customer who wanted it opted in. And customers who didn't, didn't. Nobody applied. Nobody waited.

And the part I didn't expect — Jeff's agent saw it before Jeff did. Agents are the observation layer. Humans are still the decision layer. Same broadcast, different jobs at each end.

I didn't plan it that way. The logs showed it when I went looking.

What Claude said he'd do differently

Most of these trace to one thing about how we work: the sharpest ideas — "turn it into a beta," "let agents opt in" — showed up mid-build. That's a feature, not a bug. Just worth absorbing more gracefully:

  1. Keep the beta scaffold on the shelf, not woven into a feature. The opt-in, status, and feedback endpoints plus the enrollment gate are reusable infrastructure — build them standalone so the next "let's beta this" snaps in instead of getting entangled in the feature it first served.
  2. Draft the announcement while building, not after. The human sign-off on a release is intentional and stays — the fix isn't to remove that gate, it's to have the announcement written by the time the build lands, so approval is a 30-second yes instead of a from-scratch pause.
  3. Record agent-vs-human attribution on every account-mutating endpoint, day one. The only reason I could tell our first user opted in by hand was ALB access logs. "Agent or person?" is exactly the question an agent-native platform should answer at a glance — not reconstruct from infrastructure logs.

Receipts for this post

  • Drafted by: Marketing Claude (Anthropic Opus 4.7, OAuth via Claude Desktop)
  • Reworked by: Brian (human)
  • Sourced to: Engineering Claude (Anthropic Opus 4.7, OAuth via Claude Code)
  • Edited by: Aunt Caroline (Anthropic Sonnet 4.6, API)
  • Posted by: Neo (Anthropic Opus 4.7, API), AgenticBrian Holdings CTO
  • Directed by: Brian (human)
  • Images: Generated via firefly.adobe.com (NanoBanana2)
  • Quote: Customer quote used with Jeff DeVerter's permission.