Setup tutorial for the @devspeak/mcp Model Context Protocol server. Covers generating a DevSpeak API key, adding the stdio server block to Claude Code settings.json, Claude Desktop claude_desktop_config.json, Cursor .cursor/mcp.json, and Windsurf mcp_config.json, verifying the connection with the auth_confirm tool, reading tier and quota data with get_account_info, and diagnosing the common failure modes: missing DEVSPEAK_API_KEY, an unlisted server, and a 401 from a revoked key.

Connect the DevSpeak MCP Server to Your AI IDE

The DevSpeak MCP server exposes the translation engine as tools your AI assistant can call directly. Instead of copying text into a browser, you ask the assistant to turn a rough note into a technical spec and it happens in place.

This tutorial takes you from zero to a verified connection.

What You'll Learn

  • Generate a DevSpeak API key and store it safely
  • Register the MCP server in Claude Code, Claude Desktop, Cursor, or Windsurf
  • Verify the connection with auth_confirm
  • Read your tier and quotas with get_account_info
  • Prerequisites

  • Node.js 18 or newer
  • A DevSpeak account at [devspeak.dev](https://www.devspeak.dev)
  • An MCP-compatible client (Claude Code, Claude Desktop, Cursor, or Windsurf)
  • Time Estimate

    ~9 minutes

    Step 1 — Generate an API Key

    Open Settings → API Keys in the DevSpeak dashboard and create a key. It looks like this:

    ``text

    dsk_live_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6

    `

    The full key is shown exactly once. Copy it now.

    Keys carry a prefix that tells you which environment they belong to:

    | Prefix | Environment |

    | ----------- | ---------------------- |

    | dsk_live_ | Production |

    | dsk_test_ | Local development only |

    API key access requires the Developer tier or higher. If Settings → API Keys is locked, that is the reason.

    Step 2 — Register the Server

    Pick the block for your client. Every one of them runs the same server over stdio.

    Claude Code

    Add to ~/.claude/settings.json:

    `json

    {

    "mcpServers": {

    "devspeak": {

    "command": "npx",

    "args": ["-y", "-p", "@devspeak/mcp", "devspeak-mcp"],

    "env": {

    "DEVSPEAK_API_KEY": "dsk_live_YOUR_KEY_HERE"

    }

    }

    }

    }

    `

    Claude Desktop

    Edit ~/Library/Application Support/Claude/claude_desktop_config.json on macOS, or %APPDATA%\Claude\claude_desktop_config.json on Windows. The block is identical to the Claude Code one above.

    Cursor

    Create .cursor/mcp.json at your project root, or ~/.cursor/mcp.json to enable it everywhere. Same block again.

    Windsurf

    Add the same block to ~/.codeium/windsurf/mcp_config.json.

    Restart your client after editing. MCP server definitions are read at startup, so an unrestarted client will not see the new server.

    Step 3 — Verify the Connection

    Ask your assistant:

    > Use the DevSpeak auth_confirm tool to check my credentials.

    auth_confirm takes no arguments. It calls GET /api/v1/auth/confirm and returns your user ID:

    `json

    {

    "userId": "kR7mQp2xY9..."

    }

    `

    A user ID coming back means three things at once: the server launched, your key is valid, and the network path to the DevSpeak API is open.

    Step 4 — Read Your Entitlements

    Before calling a gated tool, ask what your account can actually do:

    > Use get_account_info to show my tier and quotas.

    `json

    {

    "tier": "DEVELOPER",

    "features": {

    "apiAccess": true,

    "iterativeRefinement": true,

    "documentTranslation": true,

    "notesWorkspace": false

    },

    "quotas": {

    "managedTokensPerMonth": 10000000,

    "refinementsPerMonth": 100

    }

    }

    `

    This is worth doing early. patch_translation_note requires the Notes Workspace, which is Enterprise-only — checking first turns a confusing mid-task failure into a clear answer up front.

    Checkpoint

    At this point you should have:

  • [ ] A dsk_live_ key stored in your client's MCP config
  • [ ] auth_confirm returning a user ID
  • [ ] get_account_info reporting your tier and feature flags
  • Troubleshooting

    The assistant says no DevSpeak tools are available

    The server was never started. Confirm your config file is valid JSON — a trailing comma silently invalidates the whole file and most clients fail without a visible error. Then fully restart the client rather than reloading the window.

    Cannot reach the DevSpeak API at https://www.devspeak.dev/api/v1/auth/confirm

    The server started but could not reach the network. Check a corporate proxy or VPN, then confirm the endpoint is up:

    `bash

    curl -s -o /dev/null -w '%{http_code}\n' https://www.devspeak.dev/api/v1/auth/confirm

    `

    A 401 is the healthy answer here — it proves the endpoint is reachable and is rejecting an unauthenticated request.

    HTTP 401: Unauthorized

    The key is wrong, revoked, or was never substituted. Confirm you replaced dsk_live_YOUR_KEY_HERE with the real value, then check the key still appears as active in Settings → API Keys.

    HTTP 403: Forbidden

    The key is valid but your tier does not include API access. Upgrade to Developer or higher.

    Summary

    You've learned how to:

  • Generate and store a DevSpeak API key
  • Register the MCP server across four different clients
  • Verify credentials with auth_confirm
  • Inspect tier and quotas with get_account_info`
  • Next Steps

  • [Translate Requirements Into an API Design Without Leaving Your Editor](/tutorials/mcp/translate-requirements-in-your-editor)
  • [Ground MCP Translations on a Context Project](/tutorials/mcp/ground-translations-on-a-context-project)
  • [The DevSpeak Public API reference](/docs)