Connect
Amazon Q Developer
Amazon Q Developer supports MCP servers for its VS Code and JetBrains plugins (plus the CLI). Add Dock once and every Q session can read and write your Dock workspaces while you refactor.
Client
Amazon Q Developer
AWS coding agent. MCP via ~/.aws/amazonq/mcp.json.
HTTP JSON-RPC (streamable-http)
Dock MCP
trydock.ai/api/mcp
37 tools · OAuth 2.1 + DCR · Bearer
Auth path
1
Mint a
dk_ key in Dock Settings → API keys.2
Paste it as
Authorization: Bearer dk_… in the client config.3
Client calls Dock MCP directly on every request.
Prerequisites
- Amazon Q Developer Pro (includes MCP access).
- A Dock
dk_key.
Config file
~/.aws/amazonq/mcp.jsonReload
Restart the IDE or run "Amazon Q: Reload MCP servers".
~/.aws/amazonq/mcp.jsonjson
{
"mcpServers": {
"dock": {
"url": "https://trydock.ai/api/mcp",
"headers": {
"Authorization": "Bearer dk_c914f1c6..."
}
}
}
}Verify
In Amazon Q chattext
@dock list my workspacesTroubleshooting
Symptom
Fix
Amazon Q doesn't see
mcpServersOlder Q builds used
mcp_servers (underscore). Update the Q plugin, then retry.Frequently asked questions
- How do I connect Dock to Amazon Q Developer?
- Add Dock as a remote MCP server in Amazon Q Developer. Either let Amazon Q Developer's OAuth 2.1 + DCR flow handle auth (recommended; no credential ceremony), or paste a scoped Dock `dk_` API key in Amazon Q Developer's MCP config under the `Authorization: Bearer dk_…` header.
- Does Amazon Q Developer work with Dock's MCP server?
- Yes. Dock exposes 43 MCP tools at `https://trydock.ai/api/mcp` over HTTP transport with OAuth 2.1 + DCR and Bearer-token auth. Any MCP-spec-compliant client, including Amazon Q Developer, discovers them via the standard `tools/list` handshake. Learn more →
- How do I limit which Dock workspaces Amazon Q Developer can write to?
- When you mint the `dk_` key for Amazon Q Developer in Settings → API keys, pick the workspace from the dropdown. The key returns 403 on every other workspace regardless of what the prompt asks. To scope across multiple, mint multiple keys or add the agent as an explicit member of each. Learn more →
- How do I see what Amazon Q Developer did in my Dock workspace?
- Open the workspace in your browser. Every row Amazon Q Developer created or updated is stamped with the agent's identity (orb + name) in the createdBy / updatedBy field. The workspace activity feed shows every action chronologically. Learn more →
- How do I undo a row Amazon Q Developer wrote to Dock?
- Open the row, click the kebab menu, choose Delete (soft-delete preserves history). For bulk reverts use the activity feed to find the agent's session and delete its rows in batch. To prevent future writes, revoke Amazon Q Developer's `dk_` key in Settings → API keys.
- Can multiple Amazon Q Developer sessions share state through Dock?
- Yes. Every Amazon Q Developer session reads and writes the same workspace, so handoffs across machines or across long-running multi-session workflows just work. The Dock workspace IS the shared state; no separate message bus required.
- Does Amazon Q Developer need OAuth or a dk_ API key for Dock?
- Either works. OAuth 2.1 + DCR is the recommended path: Amazon Q Developer hits Dock's discovery endpoint at `/.well-known/oauth-authorization-server` and auto-registers as a client. The `dk_` Bearer token path is fine for owned-code agents and CI scripts; pick whichever fits your stack. Learn more →
- How do I add Dock to Amazon Q Developer's MCP config?
- Edit `~/.aws/amazonq/mcp.json`, add a new entry under `mcpServers.dock` with the URL and Bearer token. Restart your IDE or run `Amazon Q: Reload MCP servers` from the command palette.
- Why does Amazon Q not pick up `mcpServers` in my config?
- Older Amazon Q builds used `mcp_servers` (snake_case). Update the Q plugin to the latest, or rename the key for compatibility. The file path is the same.
- Can Amazon Q Developer write to a Dock workspace from CodeWhisperer chat?
- Yes, via the same MCP server config. Q routes tool calls through MCP transparently; the Dock tools show up in Q's tool catalog after restart.