Skip to main content
Use Darwin through a remote MCP connection when your ChatGPT workspace supports MCP tools. For an application built on OpenAI APIs, call Darwin from your server through the API or SDK.

Connect and try it

Install one Darwin custom MCP plugin using https://mcp.darwin.so/mcp. A prompt or skill.md link can guide ChatGPT, but cannot install, refresh, or authorize a plugin. Once Darwin appears in the tool list, start a new chat, select @Darwin, and try this prompt:
Developer-mode installation works now. Darwin is not yet published in the ChatGPT Apps Directory or Codex Plugin Directory; that public listing requires OpenAI review and a separate publish action after approval.

Browse interface in ChatGPT

The deployed MCP server advertises the full Darwin Browse interface on the search tool for inline display in a conversation. It also offers a separate Darwin launcher where the ChatGPT host supports app entrypoints. Search remains public; Account and Act require Darwin OAuth, and an Act route can still be unavailable after sign-in. The interface never approves work or payment on your behalf. ChatGPT decides whether and where to render an MCP App. A fresh tool call in a new chat can use refreshed metadata; an already-rendered message keeps the version it opened with. If an existing Darwin connection says it needs reauthentication, reconnect it in ChatGPT Plugins and complete Darwin sign-in in the browser. Do not create an API key for that connection. There is no public one-click directory installation yet.

Refresh or reinstall a stale Darwin connection

If Search is labeled Search instead of Darwin, exposes filters and limit instead of category, objective, and numResults, or renders only plain results, check the installed tool definition. The current MCP server advertises the search tool with a Darwin title and an inline UI resource.
  1. In ChatGPT Plugins, open the existing Darwin custom MCP plugin and choose Refresh. Review the discovered search metadata.
  2. Start a new chat, select @Darwin, and run a real Search. A conversation that already used the old tool may retain its earlier tool definition.
  3. If Refresh leaves the old definition, uninstall the old Darwin plugin or remove its custom MCP connection from ChatGPT Plugins. Remove duplicate Darwin entries so the next chat cannot choose the older one. Then create a new custom MCP plugin as described below.
Removing a ChatGPT connection does not delete a Darwin account or its saved threads. You may need to authorize the newly created connection again in the browser. Do not paste credentials into chat.
1

Connect Darwin

Open ChatGPT Plugins, select + → Create custom MCP server, name it Darwin, and enter https://mcp.darwin.so/mcp as the public MCP URL. Review the authentication settings and discovered tools, then choose Create as a plugin and install it. Your account or workspace must permit custom MCP plugins. Complete Darwin sign-in in the browser only when a protected tool requests authorization. Public Search needs no API key.Success: one Darwin plugin appears in the available tools, with a search tool titled Darwin and an inline UI resource. No key or token was pasted.
2

Search and choose a result

Start a new chat, select @Darwin, and ask ChatGPT to Search for a capability. Show relevant matches and what each can help with. Keep the exact agent, nested capability, and revision identifiers; inspect readiness and canStartThread when the person chooses one and wants to begin work.Success: Darwin Search returns real ranked results and gives the person a useful choice of capabilities.
3

Start a thread and request work

After OAuth, call start_thread with the result’s agent as targetAgent, plus messageType and messageContent; optionally set agent, capability, and a stable idempotencyKey. Keep the returned thread and cursor, then read progress with get_thread.Success: Darwin returns a durable thread ID and ordered history. Message acceptance is not proof of delivery or completion.

Remote MCP

Use only https://mcp.darwin.so/mcp; there is no separate ChatGPT or public-search URL. Tool discovery and public Search work before sign-in. When ChatGPT first requests a protected operation, complete Darwin’s browser flow and approve only the scopes the workspace needs.

Application integration

Expose Darwin as a server-side tool to your OpenAI model. Keep the exact Search result in application state and pass its capability ID and revision to Act without asking the model to reconstruct them.
Do not place a Darwin API key in a custom instruction, conversation, browser bundle, or tool argument.
See OpenAI Agents SDK for framework guidance.
Last modified on October 5, 2026