from Hacker News

Show HN: Representing Agents as MCP Servers

by saqadri on 5/21/25, 5:19 PM with 16 comments

Hey HN! A few months ago we shared mcp-agent (https://github.com/lastmile-ai/mcp-agent) [1][2], a lightweight framework that implements every agent pattern from Anthropic’s Building Effective Agents blog [3] and handles MCP server/client management seamlessly. Our core bet is that connecting LLMs to tools, resources, and external systems will soon be MCP-native by default.

Today we're launching a significant update: Agents as MCP servers.

Currently "agentic" behavior exists only on the MCP client side – clients like Claude or Cursor use MCP servers to solve tasks. With this update, Agents can be MCP servers themselves, so that any MCP client can invoke, coordinate and orchestrate agents the same way it does with any other MCP server.

This paradigm shift enables: 1. Agent Composition: Build complex multi-agent systems over the same base protocol (MCP). 2. Platform Independence: Use your agents from any MCP-compatible client 3. Scalability: Run agent workflows on dedicated infrastructure, not just within client environments 4. Customization: Develop your own agent workflows and reuse them across any MCP client.

How an agent server is implemented:

We’ve implemented this in mcp-agent with Workflows. Each workflow is an agent application that can interact with other MCP servers (e.g. summarizing GitHub issues → Slack message). mcp-agent exposes workflows as MCP tools on an MCP Agent Server [5]:

- workflows/list – list available workflows - workflows/{WorkflowName}/run – Execute the workflow (async) - workflows/{WorkflowName}/get_status – Check workflow status - workflows/{WorkflowName}/resume – Resume paused workflow (e.g. with human input) - workflows/{WorkflowName}/cancel – Terminate workflow

We’ve also implemented Temporal for durable execution [6], so agent workflows can be paused, resumed and retried in production settings.

This demo [7] shows Claude invoking an MCP agent server, running workflows when appropriate, and polling for status. It basically shows agentic behavior on both the MCP client and MCP server side.

We're excited about the potential this unlocks—especially as more applications become MCP-compatible clients. We'd love your feedback and ideas!

[1] - https://news.ycombinator.com/item?id=42867050

[2] - https://github.com/lastmile-ai/mcp-agent

[3] - https://www.anthropic.com/research/building-effective-agents

[4] - https://github.com/github/github-mcp-server

[5] - https://github.com/lastmile-ai/mcp-agent/tree/main/examples/...

[6] - https://github.com/lastmile-ai/mcp-agent/tree/main/examples/...

[7] - https://youtu.be/pLe2GAjEoYs [DEMO]

  • by max_on_hn on 5/21/25, 9:22 PM

    This is super cool! We use a similar approach for CheepCode: our agent process connects to an MCP server that then "drives" the rest of the interaction.

    This paradigm feels like the obvious next step for agents. It more closely models human interaction (to the degree that this is desirable) and unlocks a lot of optimizations + powerful functionality.

    It is going to be an exciting rest of the year!

  • by msamadi on 5/21/25, 6:26 PM

    This is a fascinating evolution of the MCP ecosystem. How are you thinking about agent discovery, authentication, and trust in a world where agents are both clients and servers
  • by Beefin on 5/21/25, 8:22 PM

    Super cool direction. Making agents first-class MCP servers feels like a natural next step—especially for scaling multi-agent coordination across infra boundaries. Curious how you’re handling observability at the server level—do you expose structured logs or telemetry for workflows running across agents? This could be huge for debugging large-scale agentic chains.
  • by datadrivenangel on 5/21/25, 8:43 PM

    Really cool, but it seems like recursive agents are going to bog down into microservice hell.
  • by 3abiton on 5/21/25, 10:18 PM

    This a bit confusing, and maybe I am missing a piece of the puzzle, are mcp agents and mcp clients being used interchangeably?
  • by yujian on 5/21/25, 6:35 PM

    i've used this repo, it's a great starter pack