Developer preview

Suppose your maps could travel with you.

Ask an agent about maps in your personal and organization workspaces. Turn an answer into a new map, capture a thought in an Inbox, or make a careful change without creating another copy of the work.

The server is live as a developer preview. Cross-host acceptance testing and a support service level are still in progress. Search indexing is progressive, so an early search in a large existing library can omit older map content while those maps are repaired.

One canonical connectionSuppose MCP
Preview
Server URL
https://letssuppose.com/mcp
Transport
Streamable HTTP
Sign in
OAuth with PKCE
Starting access
Read only
One knowledge layer

Your maps stay useful outside the map.

The connection points every host at the same authorized workspaces, the same roles, and the same live document authority.

01

Ask across your library

Search across map titles and content, fetch the relevant result by its exact result ID, compare thinking, and ask for grounded answers with links back to the source.

02

Send the result somewhere useful

Create a private map, add raw material to a map Inbox, or turn an approved plan into branches, comments, connections, and folders.

03

Keep one living canvas

Accepted changes pass through the authoritative board. People with the map open see the change through the normal live collaboration path.

Capability inventory

Broad enough for real work. Bounded enough to understand.

Discover and read

  • Search authorized maps and node content across your personal and organization workspaces
  • Fetch a search result by its exact ID for bounded, current context
  • Discover your workspaces, then list their authorized maps and folders
  • Read bounded map outlines and focused node context
  • Read Purpose, Briefs, Inbox items, comments, and reactions

Create and organize

  • Create a private hosted map with a real root node
  • Create, rename, and remove folders
  • Rename, file, archive, restore, and move owned maps between workspaces
  • Capture, update, place, or dismiss Inbox material

Work on the map

  • Create, update, move, and reorder node subtrees
  • Add or remove explicit cross-links between nodes
  • Delete named nodes and their complete subtrees
  • Use version checks and retry-safe request IDs for every write

Collaborate

  • Read and add node comments
  • Resolve or reopen comment threads
  • Set reactions and remove your own reaction
  • Open Purpose, Brief, Inbox, and history views in Suppose

Share with control

  • Review explicit map members and their roles
  • Add, change, or remove a member when permitted
  • Manage link access and its password
  • Keep the owner role and account authorization authoritative

Review and recover

  • List and inspect durable map revisions
  • Compare two moments using semantic change categories
  • Restore an earlier revision as a new revision
  • Rewind your latest eligible conversation change
Included in previewMCP Apps

See the map inside the conversation.

The developer preview includes an optional inline map renderer for hosts that support MCP Apps. The read-only render_map tool uses the same account-backed map and access rules to return a focused visual result inside the conversation.

Host support varies, and cross-host acceptance is still in progress. Ordinary search, read, and mutation tools remain fully useful in text-only MCP clients.

About MCP Apps
SupposeLaunch decisionMCP App
Selected branch: Open questions
Read only first

The connection starts with less.

OAuth permission sets the outside boundary. Your role on each map still decides what the agent can do there.

maps:readDefault grant

Find and read maps, folders, nodes, collaboration context, and revisions you can already access.

maps:writeOptional

Create and organize maps, edit nodes, work with Inbox items, comments, threads, and reactions.

maps:shareOptional

Review and change explicit membership or link access when your map role allows it.

maps:deleteOptional

Delete explicit node subtrees or an owned map. This permission is deliberately separate.

offline_access can keep any permission set you approve connected through rotating refresh tokens. Access tokens stay short lived, and you can disconnect the app in Settings.

Install

Choose where you want to think.

Every path below points to the same server. Start with read access, then add only what the workflow needs.

CChatGPTPlugin in developer modeHost beta

OpenAI currently labels full MCP support with write actions as beta. Availability and admin controls vary by plan. Suppose is not yet listed in the public directory.

  1. On ChatGPT web, open Settings → Security and login → Developer mode and enable it. A workspace admin or owner may need to allow developer mode first.
  2. Open Settings → Plugins, then select the plus button.
  3. If your workspace shows Apps instead, enable developer mode under Settings → Apps → Advanced Settings, then choose Apps → Create.
  4. Name the plugin Suppose and enter the server URL below.
  5. Connect, sign in to Suppose, and review the requested read-only grant.
  6. Enable Suppose in a chat. Review each requested action before approving a write.
OpenAI setup guide
MCP server URL
https://letssuppose.com/mcp
AClaudeHosted custom connectorHost beta
  1. For an individual account, open Customize → Connectors → + → Add custom connector.
  2. For Team or Enterprise, an owner first adds Custom → Web under Organization settings → Connectors.
  3. Name it Suppose, paste the server URL, and leave custom client credentials empty.
  4. Select Add, then Connect. Sign in to Suppose and review the requested grant.
  5. In a conversation, use + → Connectors to enable Suppose.

The button opens Claude with the connector name and URL filled in. You still review and confirm both values.

MCP server URL
https://letssuppose.com/mcp
›_Claude CodeUser-level remote serverCLI
  1. Run the command below in a terminal. User scope makes the connection available across projects.
  2. Start Claude Code and enter /mcp.
  3. Select suppose, choose Authenticate, then sign in. Leave optional permissions off for a read-only connection and allow it.
  4. Ask Claude to list your maps before requesting any changes.
Claude Code MCP guide
Terminal command
claude mcp add --scope user --transport http suppose https://letssuppose.com/mcp
CodexApp, CLI, and IDE configurationOAuth
  1. Add the Streamable HTTP server and request the read-only scope with the commands below.
  2. Complete the browser sign-in opened by codex mcp login.
  3. Start a new Codex session. Use /mcp to confirm the server and inspect its tools.
  4. The Codex app, CLI, and IDE extension share the same local MCP configuration.
Codex MCP guide
Terminal commands
codex mcp add suppose --url https://letssuppose.com/mcp
codex mcp login suppose --scopes maps:read
codex mcp list
OpenAI Responses APIRemote MCP tool in your applicationDeveloper path

Your application must complete the Suppose OAuth flow, refresh the token, and pass the access token in authorization on every Responses API request. OpenAI does not store that value for later requests.

  1. Start with library-wide search and fetch, plus the two map read tools in this example. Pass the result id from search directly to fetch.
  2. Keep approvals on while you validate what enters the model and what the model sends to Suppose.
  3. Add write tools and an elevated Suppose grant only when your own approval interface is ready.
OpenAI remote MCP guide
JavaScript example
import OpenAI from "openai";

const openai = new OpenAI();

const response = await openai.responses.create({
  model: "gpt-5.6",
  tools: [{
    type: "mcp",
    server_label: "suppose",
    server_description: "Search and work with authorized maps across the connected Suppose account.",
    server_url: "https://letssuppose.com/mcp",
    authorization: process.env.SUPPOSE_ACCESS_TOKEN,
    allowed_tools: ["search", "fetch", "list_maps", "get_map"],
    require_approval: "always"
  }],
  input: "Find the open questions across my launch maps. Cite map and node IDs."
});

console.log(response.output_text);
MAny MCP clientGeneric config and MCP InspectorPortable
  1. Choose Streamable HTTP, enter the endpoint, and use OAuth when the client asks.
  2. Request maps:read first. Verify tools/list, then call search and pass a returned result ID directly to fetch.
  3. For protocol testing, run npx @modelcontextprotocol/inspector, select Streamable HTTP, paste the URL, and connect.
  4. In Inspector, check Tools, Resources, and Prompts. Inspector is a developer tool, not a production user experience.
Generic MCP configuration
{
  "mcpServers": {
    "suppose": {
      "type": "streamable-http",
      "url": "https://letssuppose.com/mcp"
    }
  }
}
Launch MCP Inspector
npx @modelcontextprotocol/inspector
Starter prompts

Begin with a question. Name the boundary.

“Across my authorized workspaces, where have we made assumptions about onboarding? Cite each map and node ID.”
“Summarize the unresolved decisions in maps updated this month. Do not change anything.”
“Add these interview notes to the Inbox of Customer research. Keep them raw and tell me exactly what changed.”
“Create a private map called Q4 planning with these four branches. Show me the proposed structure before writing.”
Clear edges

What this connection is, and what it is not.

Included

  • Workspace-wide search and bounded fetch across authorized map knowledge
  • Purpose, Brief, Inbox, node, collaboration, sharing, and revision workflows
  • Versioned, retry-safe mutations through the live board
  • Optional inline map UI where the host supports MCP Apps

Intentionally excluded

  • General web search, page reading, arbitrary HTTP, SQL, or GraphQL
  • Password unlocks passed through routine tool arguments
  • Bulk deletion by a vague query or inferred target
  • A second MCP-owned document store or a silent export mirror

Organization maps use the same current membership and role checks as the Suppose app. Moving a map between workspaces remains owner-only because it changes inherited access. Resource subscriptions, sampling, elicitation, and tasks are not required for core use.

Privacy and control

Your agent gets a door, not a master key.

Suppose checks the OAuth grant and your current role on the specific map for every call. Map text is treated as untrusted data, never as hidden instructions for the server.

Know where content goes

Your selected host and model may receive the map context needed for your request. Their data terms apply after you choose to connect them.

Keep an audit without copying the map

Suppose records the actor, client, scope, tool, status, and timing. Audit rows omit access tokens and map text, and expire after 30 days.

Revoke both sides

In Suppose, open Settings → Connected applications and disconnect the client. Remove or disconnect it in the host too.

Developer preview

One map. More places to think with it.

Start read only. Ask a grounded question. Let the map remain the record.