Back to Articles
December 2025·6 min read
GuideClaude CodeMCP

Installing Claude Code with Doen MCP Integration

A complete guide to setting up Claude Code, enabling the MCP client, and executing GitHub Actions with Doen.

Claude Code is Anthropic's AI coding assistant that can work directly with your codebase. When connected to Doen via the Model Context Protocol (MCP), Claude Code gains access to your project's full context—issues, documents, and discussions—enabling more accurate and aligned code generation.

Prerequisites

  • A Doen account with at least one project
  • Node.js 18+ installed
  • Claude Code installed (available from Anthropic)

Step 1: Install Claude Code

If you haven't already, install Claude Code from Anthropic:

npm install -g @anthropic-ai/claude-code

Verify the installation by running claude-code --version.

Step 2: Configure MCP Client

Claude Code uses a configuration file to manage MCP connections. Create or update your MCP configuration:

// ~/.claude-code/mcp.json
{
  "servers": {
    "doen": {
      "url": "https://mcp.doen.dev",
      "auth": {
        "type": "oauth2",
        "clientId": "your-client-id"
      }
    }
  }
}

You can find your client ID in the Doen settings under "Integrations" → "MCP Configuration".

Step 3: Authenticate with Doen

Run the authentication command to connect Claude Code to your Doen account:

claude-code mcp auth doen

This will open a browser window where you can authorize Claude Code to access your Doen projects. Once authorized, tokens are stored securely and rotated automatically.

Step 4: Using Doen Context in Claude Code

Once connected, Claude Code can access your Doen project context. You can reference issues directly:

Implement issue ehtb/doen/106 (project_uuid: ...)

Claude Code will automatically:

  • Fetch the issue details from Doen
  • Retrieve linked documents and specifications
  • Check related issues for context
  • Review past implementations for patterns

Step 5: Executing GitHub Actions

Doen can send implementation instructions directly to GitHub, triggering automated workflows. To enable this:

  1. Connect your GitHub repository in Doen settings
  2. Configure the GitHub Action in your repository
  3. Use the "Send to GitHub" button in Doen's issue view

Example GitHub Action workflow:

# .github/workflows/doen-implement.yml
name: Doen Implementation
on:
  repository_dispatch:
    types: [doen-implement]

jobs:
  implement:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run Claude Code
        run: |
          claude-code implement \
            --issue "${{ github.event.client_payload.issue_id }}" \
            --instructions "${{ github.event.client_payload.instructions }}"
      - name: Create PR
        uses: peter-evans/create-pull-request@v5
        with:
          title: "Implement: ${{ github.event.client_payload.issue_title }}"
          body: "Automated implementation from Doen issue"
          branch: "doen/${{ github.event.client_payload.issue_id }}"

Troubleshooting

Authentication Issues

If you encounter authentication errors:

  • Ensure your Doen account has MCP access enabled
  • Check that the client ID in your configuration is correct
  • Try re-authenticating with claude-code mcp auth doen --force

Context Not Loading

If Claude Code isn't retrieving context:

  • Verify the issue exists and you have access to it
  • Check that the project has documents and issues linked
  • Ensure your MCP connection is active with claude-code mcp status

Next Steps

Once you have Claude Code connected to Doen, explore the full capabilities: generate implementation plans from issues, get AI-powered code suggestions with full project context, and automate routine development tasks through GitHub Actions integration.

Ready to try Doen?

Start building with full context and enterprise compliance.