> ## Documentation Index
> Fetch the complete documentation index at: https://docs.langchain.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Core capabilities overview

> Overview of Agent Server core capabilities including streaming, human-in-the-loop, MCP, A2A, distributed tracing, webhooks, and double-texting.

Agent Server provides a set of capabilities for building and operating production agents. This section covers:

<CardGroup cols={2}>
  <Card title="Streaming API" icon="player-play" href="/langsmith/streaming">
    Stream outputs from your deployed agent in real time using the LangGraph SDK.
  </Card>

  <Card title="Human-in-the-loop" icon="user-check" href="/langsmith/add-human-in-the-loop">
    Pause agent execution to review, edit, or approve tool calls before continuing.
  </Card>

  <Card title="Time travel" icon="clock" href="/langsmith/human-in-the-loop-time-travel">
    Replay agent runs from any prior state to debug or explore alternative paths.
  </Card>

  <Card title="MCP endpoint" icon="plug" href="/langsmith/server-mcp">
    Expose your agents as MCP tools, accessible to any MCP-compliant client.
  </Card>

  <Card title="A2A endpoint" icon="arrows-exchange" href="/langsmith/server-a2a">
    Enable agent-to-agent communication using the A2A protocol.
  </Card>

  <Card title="Distributed tracing" icon="git-merge" href="/langsmith/agent-server-distributed-tracing">
    Unify traces across services when calling Agent Server from external applications.
  </Card>

  <Card title="Webhooks" icon="webhook" href="/langsmith/use-webhooks">
    Trigger external systems in response to run events from your deployed agent.
  </Card>

  <Card title="Double-texting" icon="messages" href="/langsmith/double-texting">
    Control how Agent Server handles a new message while a run is already in progress.
  </Card>
</CardGroup>

### Durable execution

At its core, LangSmith Deployment is a durable execution engine. Your agents run on a managed task queue with automatic checkpointing, so any run can be retried, replayed, or resumed from the exact point of interruption, not from scratch.

Because execution is durable, agents can do things that would be fragile or impossible in a stateless runtime:

* **Wait for external input.** An agent calls [`interrupt()`](/langsmith/add-human-in-the-loop) and the runtime checkpoints its state, frees resources, and waits for a human to approve a transaction, a reviewer to edit a draft, or another system to return results. When [`Command(resume=...)`](/langsmith/add-human-in-the-loop) arrives hours or days later, execution picks up exactly where it stopped. This is the primitive underneath [human-in-the-loop](/langsmith/add-human-in-the-loop) workflows and [time-travel debugging](/langsmith/human-in-the-loop-time-travel).
* **Run in the background.** [Background runs](/langsmith/background-run) execute without blocking the caller. The runtime manages the full lifecycle (queuing, execution, checkpointing, completion) while the client moves on.
* **Run on a schedule.** [Cron jobs](/langsmith/cron-jobs) trigger agent execution on a recurring cadence. A daily summary agent, a weekly report, a periodic data sync. The runtime starts a new execution on schedule with the same durability guarantees.
* **Handle concurrent input.** When a user sends new input while an agent is mid-run ([double-texting](/langsmith/double-texting)), the runtime can queue it, cancel the in-progress run, or process both in parallel without data races or corrupted state.
* **Retry on failure.** Configurable [retry policies](/oss/python/langgraph/use-graph-api#add-retry-policies) control backoff, max attempts, and which exceptions trigger retries on a per-node basis. Runs survive process restarts, infrastructure failures, and code revisions mid-execution.

For details on how containers, processes, and the task queue work together, see [Agent Server: Runtime architecture](/langsmith/agent-server#runtime-architecture). For scaling and throughput tuning, see [Configure Agent Server for scale](/langsmith/agent-server-scale).

***

<div className="source-links">
  <Callout icon="terminal-2">
    [Connect these docs](/use-these-docs) to Claude, VSCode, and more via MCP for real-time answers.
  </Callout>

  <Callout icon="edit">
    [Edit this page on GitHub](https://github.com/langchain-ai/docs/edit/main/src/langsmith/core-capabilities.mdx) or [file an issue](https://github.com/langchain-ai/docs/issues/new/choose).
  </Callout>
</div>
