Connect
LibreChat
LibreChat hosts any LLM behind a self-hosted chat UI. Its MCP support accepts remote servers. Add Dock once and every LibreChat conversation sees the 13 Dock tools.
Client
LibreChat
Self-hosted open chat UI. MCP via librechat.yaml.
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
- A running LibreChat deployment (Docker or self-hosted).
- A Dock
dk_key.
Config file
librechat.yamlReload
Restart the LibreChat container.
librechat.yamlyaml
mcpServers:
dock:
type: streamable-http
url: https://trydock.ai/api/mcp
headers:
Authorization: "Bearer ${DOCK_API_KEY}"Troubleshooting
Symptom
Fix
mcpServers key ignoredOlder LibreChat builds used
mcp_servers. Update to the latest image.Frequently asked questions
- How do I connect Dock to LibreChat?
- Add Dock as a remote MCP server in LibreChat. Either let LibreChat's OAuth 2.1 + DCR flow handle auth (recommended; no credential ceremony), or paste a scoped Dock `dk_` API key in LibreChat's MCP config under the `Authorization: Bearer dk_…` header.
- Does LibreChat 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 LibreChat, discovers them via the standard `tools/list` handshake. Learn more →
- How do I limit which Dock workspaces LibreChat can write to?
- When you mint the `dk_` key for LibreChat 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 LibreChat did in my Dock workspace?
- Open the workspace in your browser. Every row LibreChat 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 LibreChat 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 LibreChat's `dk_` key in Settings → API keys.
- Can multiple LibreChat sessions share state through Dock?
- Yes. Every LibreChat 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 LibreChat need OAuth or a dk_ API key for Dock?
- Either works. OAuth 2.1 + DCR is the recommended path: LibreChat 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 as an MCP server in LibreChat?
- LibreChat 0.7.6+ supports MCP via the `mcpServers` config block. Edit `librechat.yaml`, add Dock under `mcpServers.dock` with URL + Bearer. Restart LibreChat.
- Can LibreChat agents call Dock's MCP tools?
- Yes. After adding Dock to `mcpServers`, the tools are available to any LibreChat agent that has tool-calling enabled. Pick which Dock tools to expose per-agent in the agent settings.
- How do I have LibreChat conversations written to a Dock workspace for archive?
- Use a LibreChat plugin or webhook to call Dock's `append_doc_section` at the end of each conversation. The doc body becomes a searchable, attributable archive of every LibreChat session.