Communication rails and MCP tooling for autonomous AI agents.
At Siren, I engineered the developer infrastructure enabling AI agents to communicate: shared tool schemas, TypeScript and Python agent toolkits, and a standalone Model Context Protocol (MCP) server.
Model Context Protocol (MCP) · TypeScript · Python · OpenAI Functions · LangChain · CrewAI
The context
Siren provides omni-channel messaging and notification infrastructure. As autonomous agent workflows (OpenAI Function Calling, LangChain, CrewAI) began executing user-facing tasks, agents needed safe, deterministic ways to trigger notifications, verify recipients, and inspect delivery status without manual API integration.
The core architectural goal was to turn imperative REST API endpoints into clean, agent-readable semantic tool schemas with strict parameter boundaries and deterministic execution safeguards.
Zero-install Model Context Protocol (MCP) server
I built and distributed @trysiren/mcp, a standalone server implementing Anthropic’s Model Context Protocol. Supporting both stdio and Server-Sent Events (SSE) transports, it allowed AI coding assistants (Claude Desktop, Cursor, Antigravity) to send notifications directly from developer environments.
This eliminated ~75% of developer setup overhead: rather than installing libraries, importing HTTP clients, and managing secret rotation in application code, developers execute the server with zero installation via npx @trysiren/mcp.
Making existing products AI-native doesn’t require rebuilding the backend. It requires building an intuitive, deterministic discovery and execution layer for models.
Dual-stack agent toolkits with idempotency guards
For programmatic multi-agent swarms, I authored and published @trysiren/agent-toolkit on npm and siren-agent-toolkit on PyPI. Both feature automatic conversion adapters for LangChain Tools and CrewAI Actions.
Because LLM tool-calling can trigger stochastic retry loops, we embedded deterministic idempotency key derivation directly into the toolkits. Multiple identical intents from an agent resolve to the same underlying dispatch, preventing accidental notification spam.
What changed
Reduction in developer setup effort with zero-install MCP vs. manual SDK integration.
Peak registry downloads across npm and PyPI ecosystem distributions.
Serialization overhead across schema parsing and parameter validation pipelines.
Building agent tooling or Model Context Protocol integrations? Let’s talk about it.