github VoltAgent/voltagent @voltagent/internal@0.0.11

Patch Changes

  • #596 355836b Thanks @omeraplak! - - add @voltagent/a2a-server, a JSON-RPC Agent-to-Agent (A2A) server that lets external agents call your VoltAgent instance over HTTP/SSE

    • teach @voltagent/core, @voltagent/server-core, and @voltagent/server-hono to auto-register configured A2A servers so adding { a2aServers: { ... } } on VoltAgent and opting into honoServer instantly exposes discovery and RPC endpoints
    • forward request context (userId, sessionId, metadata) into agent invocations and provide task management hooks, plus allow filtering/augmenting exposed agents by default
    • document the setup in website/docs/agents/a2a/a2a-server.md and refresh examples/with-a2a-server with basic usage and task-store customization
    • A2A endpoints are now described in Swagger/OpenAPI and listed in the startup banner whenever an A2A server is registered, making discovery of /.well-known/... and /a2a/:serverId routes trivial.

    Getting started

    import { Agent, VoltAgent } from "@voltagent/core";
    import { A2AServer } from "@voltagent/a2a-server";
    import { honoServer } from "@voltagent/server-hono";
    
    const assistant = new Agent({
      name: "SupportAgent",
      purpose: "Handle support questions from partner agents.",
      model: myModel,
    });
    
    const a2aServer = new A2AServer({
      name: "support-agent",
      version: "0.1.0",
    });
    
    export const voltAgent = new VoltAgent({
      agents: { assistant },
      a2aServers: { a2aServer },
      server: honoServer({ port: 3141 }),
    });
  • #596 355836b Thanks @omeraplak! - - Ship @voltagent/mcp-server, a transport-agnostic MCP provider that surfaces VoltAgent agents, workflows, tools, prompts, and resources over stdio, SSE, and HTTP.

    • Wire MCP registration through @voltagent/core, @voltagent/server-core, and @voltagent/server-hono so a single VoltAgent constructor opt-in (optionally with honoServer) exposes stdio mode immediately and HTTP/SSE endpoints when desired.
    • Filter child sub-agents automatically and lift an agent's purpose (fallback to instructions) into the MCP tool description for cleaner IDE listings out of the box.
    • Document the workflow in website/docs/agents/mcp/mcp-server.md and refresh examples/with-mcp-server with stdio-only and HTTP/SSE configurations.
    • When MCP is enabled we now publish REST endpoints in Swagger/OpenAPI and echo them in the startup banner so you can discover /mcp/* routes without digging through code.

    Getting started

    import { Agent, VoltAgent } from "@voltagent/core";
    import { MCPServer } from "@voltagent/mcp-server";
    import { honoServer } from "@voltagent/server-hono";
    
    const assistant = new Agent({
      name: "AssistantAgent",
      purpose: "Respond to support questions and invoke helper tools when needed.",
      model: myModel,
    });
    
    const mcpServer = new MCPServer({
      name: "support-mcp",
      version: "1.0.0",
      agents: { assistant },
      protocols: { stdio: true, http: false, sse: false },
    });
    
    export const voltAgent = new VoltAgent({
      agents: { assistant },
      mcpServers: { primary: mcpServer },
      server: honoServer({ port: 3141 }), // flip http/sse to true when you need remote clients
    });

Don't miss a new voltagent release

NewReleases is sending notifications on new releases.