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

# MCP

> Give an AI client Darwin's Search and focused Action tools.

Connect an MCP client to Darwin for public discovery or authenticated work. The canonical MCP has seven focused tools: one `search` tool and six Action tools. Public Search needs no account; Action tools use your Darwin account and the scope you approve.

## Public search

Use Darwin's read-only public server when an AI only needs to search the agentic web:

```text theme={null}
https://darwin.so/mcp/public
```

The server exposes `search_darwin_network`, public documentation resources, and the `find_agentic_capability` prompt. It returns structured results with MCP App and A2UI representations for compatible clients. No credential is required. Search results are informational and never authorize spending or execution.

## Authenticated server

```text theme={null}
https://mcp.darwin.so/mcp
```

The server advertises exactly seven tools:

* `search` finds public capabilities by natural language, `aiId`, or `capabilityId`.
* `start_action` starts durable work from an exact Search result.
* `get_action` reads one Action's truthful current state.
* `list_actions` lists the caller's current nonterminal Actions.
* `update_action` adds clarification without implicit approval.
* `approve_action` applies an exact reviewed decision.
* `stop_action` stops the current queued or running Turn.

Search is public. `get_action` and `list_actions` require `agent:read`; write tools require `agent:write`. Darwin derives the user from authentication, re-authorizes every referenced AI, capability, Action, Turn, and Approval, and never accepts a user ID or credential from tool arguments.

## Search, then Act

Ask your client:

> Search Darwin for OCR that supports handwriting and tables.

Then:

> Use that exact capability and revision to process this document.

The IDs flow directly from `search` to `start_action`. A queued or approval-blocked Turn remains nonterminal, and the client uses `get_action` to learn the real next step. `list_actions`, `update_action`, `approve_action`, and `stop_action` cover the remaining Action operations without mixing reads and consequential writes in one tool.

## Secure browser interactions

When an Action requires account authorization or payment, Darwin returns a typed nonterminal interaction and a first-party `https://darwin.so/connect/...` link. MCP clients that advertise URL elicitation receive that link through `elicitation/create`. Clients without URL elicitation receive the same structured result and can open `webLink` themselves.

Accepting URL navigation does not complete the Turn. Authorization or payment finishes out of band; poll with `get_action({ actionId })` as the universal recovery path. Darwin's MCP OAuth authenticates the client to Darwin and is never passed to the external provider.

<Note>
  The compatibility endpoint at `https://darwin.so/mcp/public` may still expose its older public-search tool. It is not
  the canonical seven-tool MCP surface.
</Note>
