Connect
tabnine logo

Tabnine

Tabnine Chat's agent mode supports MCP servers on Pro and Enterprise tiers. Add Dock once in Settings and every chat can read, write, and seal rows without leaving the IDE.

Client
Tabnine
Enterprise coding AI. MCP support on the Pro/Enterprise tiers.
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

  • Tabnine Pro or Enterprise seat with agent features enabled.
  • A Dock dk_ key.
UI path
Tabnine · Settings · MCP · Add server
MCP server entryjson
{
  "name": "dock",
  "url": "https://trydock.ai/api/mcp",
  "headers": {
    "Authorization": "Bearer dk_c914f1c6..."
  }
}

Verify

@dock list my workspaces

Troubleshooting

Symptom
Fix
"MCP is an enterprise feature" banner
Upgrade your Tabnine seat, or use Claude Code instead.

Frequently asked questions

How do I connect Dock to Tabnine?
Add Dock as a remote MCP server in Tabnine. Either let Tabnine's OAuth 2.1 + DCR flow handle auth (recommended; no credential ceremony), or paste a scoped Dock `dk_` API key in Tabnine's MCP config under the `Authorization: Bearer dk_…` header.
Does Tabnine 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 Tabnine, discovers them via the standard `tools/list` handshake. Learn more →
How do I limit which Dock workspaces Tabnine can write to?
When you mint the `dk_` key for Tabnine 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 Tabnine did in my Dock workspace?
Open the workspace in your browser. Every row Tabnine 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 Tabnine 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 Tabnine's `dk_` key in Settings → API keys.
Can multiple Tabnine sessions share state through Dock?
Yes. Every Tabnine 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 Tabnine need OAuth or a dk_ API key for Dock?
Either works. OAuth 2.1 + DCR is the recommended path: Tabnine 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 →
Does Tabnine support Dock as an MCP server?
Tabnine's chat-mode (Pro+) supports MCP servers. Add Dock under Tabnine Settings → MCP Servers, URL `https://trydock.ai/api/mcp`, Bearer header. Restart your IDE.
Can Tabnine write code-context notes to a Dock workspace?
Yes, via Tabnine's chat panel calling Dock's `create_row` or `append_doc_section`. Useful for letting Tabnine maintain a per-project Dock-backed engineering journal as it completes work.
How does Dock fit Tabnine's enterprise air-gapped deployment?
Tabnine's air-gapped mode runs models locally; Dock is hosted SaaS. For air-gapped customers, route Tabnine through an on-prem MCP proxy that bridges to Dock. Or skip Dock for those flows and use Tabnine's local chat-history.

Related

Updated