CowAgent 2.0.9 lands three meaningful upgrades for builders: a pluggable tool ecosystem via MCP, a consolidated model configuration UI, and persistent browser sessions for login-gated sites. Each one removes a real friction point from production deployments.
The biggest architectural shift is MCP protocol support. CowAgent now implements Model Context Protocol natively, using JSON-RPC with zero extra dependencies. Both stdio and sse transports are supported. Any MCP-compatible service plugs directly into the agent as a tool, and the configuration format matches the mcpServers style used by Claude Desktop and Cursor. The agent loads ~/cow/mcp.json first, so your existing MCP configs can slot right in. This moves CowAgent from a fixed tool set to an open, extensible ecosystem.
Model configuration gets a dedicated Models page in the Web console. The design is organized by provider plus capability: chat, image, voice, embedding, and search. The key improvement is unified provider config. You enter an API key once at the top and every downstream capability picks it up. Previously that was not the case. Image understanding and image generation can each select their own provider and model, or fall back to the main chat model. STT and TTS are configured independently, with Qwen and GLM ASR and TTS models now supported. Embedding models for memory and knowledge-base retrieval are configurable separately, with support for OpenAI, Qwen, Doubao, GLM, and others. If you switch embedding models, run /memory rebuild-index to rebuild the index online. Web search now supports Bocha, Baidu, GLM, and more, and in auto mode the agent can combine multiple sources for research tasks.
Persistent browser sessions address a common pain point: sites that require login or use anti-bot protection. The browser tool can now maintain login state across runs.
There is also a security-relevant default change worth noting immediately. The Web console now binds to 127.0.0.1 by default instead of all interfaces. If you run CowAgent on a server and need external access to the console, you must set web_host to 0.0.0.0 in config.json after upgrading. The release notes strongly recommend also setting web_password to enable authentication. Do not skip that step.
For product engineers: if you are upgrading, check your web_host setting first. If you are building on top of CowAgent, the MCP integration is the most actionable new surface. Any tool you have already wrapped as an MCP server is now available to the agent with minimal configuration.