Skip to content

Connecting via MCP

Connecting Denkploeg as an MCP server in Claude, Codex or another client, with what you need, which tools there are and what never happens.

DocumentationConnecting via MCP

Denkploeg is a platform where a crew of AI agents does work for a workspace, with a person who signs off before anything goes out.

You can also use it the other way around: Denkploeg is itself an MCP server. A client such as Claude Desktop, Claude Code or Codex talks to one workspace through it and can do much of what you do in the chat screen and the studios, including asking the director a question.

The chat screen, the studios and the MCP server are three entrances to the same work. Everything you can do via MCP you can also do in the portal. The reverse is not true: some things deliberately remain an action by a person on a screen.

Works with
  • Claude Code
  • Claude Desktop
  • Codex
  • Cursor

What you need

A machine token. It belongs to exactly one workspace and carries one of the usual roles (viewer, maker, admin or owner). No role can sign: a signature remains an action by a person on a screen. A key can never do more than you can. A key always expires: after 90 days by default, after 365 at most. Make a new one before then.

An admin of your workspace creates it under Connections > Denkploeg in Claude (/w/<werkruimte>/connections?tab=denkploeg-in-claude). It starts with dpl_, appears on screen once and can never be read again afterwards, not even by us. If you lose it, you make a new one. Revoking works immediately.

Connecting

You need two things and nothing else: an address and a key. Nothing gets installed.

  • Address: https://app.denkploeg.nl/api/mcp
  • Key: your machine token (dpl_...), as Authorization: Bearer <key>.

Under Connections > Denkploeg in Claude there is a setup block per client with the address already filled in. That is also where you create the key.

  1. Create a key

    An admin does that under Connections > Denkploeg in Claude. It appears on screen once.

  2. Pick your client

    In the same place there is a setup block per client with the address already filled in.

  3. Fill in the address and the key

    The address is https://app.denkploeg.nl/api/mcp, and the key goes along as Authorization: Bearer <key>.

  4. Ask something

    For example to the director, with denkploeg_vraag.

  • Claude Code

    One command in the terminal.

  • Cursor

    A setting in .cursor/mcp.json.

  • Codex

    A block in ~/.codex/config.toml.

  • Claude Desktop

    A custom connector under Customize, Connectors. Also for claude.ai.

Exactly per client:

ClientWhat you do
Claude Codeclaude mcp add --transport http denkploeg https://app.denkploeg.nl/api/mcp --header "Authorization: Bearer <key>"
CursorIn .cursor/mcp.json: {"mcpServers":{"denkploeg":{"url":"https://app.denkploeg.nl/api/mcp","headers":{"Authorization":"Bearer <key>"}}}}
CodexIn ~/.codex/config.toml: [mcp_servers.denkploeg] with url = "https://app.denkploeg.nl/api/mcp" and http_headers = { "Authorization" = "Bearer <key>" }
claude.ai and Claude DesktopCustomize, Connectors, Add custom connector. Fill in the address, choose No sign-in and under Request headers set the header authorization with the value Bearer <key>

The workspace follows from the key and is never input to a tool. That is not a detail: if it were input, you could ask a question that returns another client's data. A key belongs to one workspace.

What does not work by itself yet

What you can do with it

The full list is in the tools, and that list is computed from the server rather than written by hand. Per area:

AreaTools
Asking and looking updenkploeg_vraag (a question to the director, with the same answer as in the chat), denkploeg_werkruimte, denkploeg_te_tekenen, denkploeg_kosten, denkploeg_recent_werk
Marketingmarketing_campagnes, marketing_besteding, marketing_killregels, marketing_marge. Read only. See Marketing Studio.
Commercecommerce_winkel, commerce_product. Read only. See Commerce Studio.
Supportsupport_onbeantwoord, support_gesprekken. Read only. Setting up an assistant can only be done in the portal. See Support Studio.
CreativeLook up campaigns, ads, assets, products and models (creative_list_*, creative_get_*), have an image or video made (creative_generate_image, creative_generate_video), a cost estimate up front (creative_estimate_*), avatars and UGC projects, create a campaign (creative_create_campaign).
VideoRead, edit, check and render videos (video_list, video_get, video_edit, video_check, video_render), subtitles (video_transcribe), voices and voice-over (video_stemmen, video_voiceover). See Video Studio.
DesignCheck a design or website (design_check and design_check_rapport), read and export brand rules and tokens, have a brand read in or the brand guide made (design_merk), update a logo or image (design_logo_opzet, design_beeld). See Brand Studio.

Which brand

If you have several brands in your workspace, you can optionally pass merk, as a name or id, to the Design brand tools (design_check, design_merkregels, design_tokens_check, design_merk, design_tokens_export, design_logo_opzet). Without merk, your own brand applies. An unknown or ambiguous brand gives an error instead of quietly landing on another brand. A tool that lists your brands, or a brand choice for creative_create_campaign, creative_generate_image and video_voiceover, does not exist yet. See Own brand and client brands.

Everything that costs money, such as an image, a video, a logo or a voice-over, becomes a pending approval via MCP that a person signs in the portal. Nothing happens until someone clicks. So ask for an estimate first (creative_estimate_*) if you want to know what something will cost. Your workspace's daily and monthly ceiling still applies.

How that goes in a client
You

Make an image for the autumn campaign.

Director

I have requested it. It costs money, so it is now a pending approval. Nothing happens until someone signs in the portal.

You

What will that cost?

Director

You see that up front with an estimate (creative_estimate_*). Your workspace's daily and monthly ceiling still applies.

The throttle

Per key, per minute:

lookup requests
120
questions to the director
6

What never happens

  • Signing. No tool can issue an approval. If a client sets something in motion that has an effect on the outside world, a card with two buttons goes to a person and nothing happens until someone clicks.
  • Looking across the boundary of a workspace. Every call carries the workspace from the environment. An id from another client returns a 404 and not a 403: its very existence is something we do not confirm.
  • Handing out a key. What a workspace has in connections is stored encrypted, and goes only to the server that needs it.