Skip to main content
Glama
SobieskiCodes

MCP-Claude Code Bridge

MCP-Claude Code Bridge Setup

1. Prerequisites

  • Docker and Docker Compose installed

  • Claude Code CLI installed (npm install -g @anthropic-ai/claude-code)

  • Anthropic API key

Related MCP server: Back-Agent MCP Server

2. Setup Steps

Create project directory:

mkdir mcp-claude-bridge
cd mcp-claude-bridge

Create the files:

Save all the provided artifacts as files in your project directory:

  • Dockerfile

  • package.json

  • server.js

  • docker-compose.yml

Set environment variable:

export ANTHROPIC_API_KEY=your_api_key_here

Build and run:

docker-compose up --build

3. Configure Claude Desktop

Add to your Claude Desktop MCP settings (~/Library/Application Support/Claude/claude_desktop_config.json on Mac):

{
  "mcpServers": {
    "claude-code-bridge": {
      "command": "node",
      "args": ["/path/to/your/mcp-claude-bridge/server.js"],
      "env": {
        "ANTHROPIC_API_KEY": "your_api_key_here"
      }
    }
  }
}

4. Test with Cat Facts App

Once connected, tell Claude Desktop:

"Create a simple cat facts app using the claude_code_task tool. The app should fetch facts from catfacts.ninja and display them in a simple web interface."

5. Available Tools

The bridge provides these tools:

  • claude_code_task: Execute coding tasks via Claude Code

  • create_project: Create new project directories

  • list_files: List files in projects

  • read_file: Read file contents

  • run_command: Execute shell commands

Example Usage

In Claude Desktop, you can now say:

  • "Create a new React app that fetches cat facts"

  • "Build a simple API server in Express"

  • "Debug this Python script for me"

The MCP server will delegate complex tasks to Claude Code while keeping everything in the Desktop interface!

Available Tools

5 tools
claude_code_taskC

Execute a coding task using Claude Code CLI

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYesThe coding task to execute
project_pathNoPath to the project directory

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It states the tool executes a coding task but doesn't reveal critical traits like whether it's read-only or destructive, permission requirements, execution environment, or output format. This is inadequate for a tool that likely performs operations with side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's front-loaded with the core purpose, making it easy to parse quickly without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of executing coding tasks (potentially involving side effects), no annotations, and no output schema, the description is incomplete. It fails to address behavioral risks, output expectations, or how it differs from sibling tools, leaving significant gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters ('task' and 'project_path') adequately. The description adds no additional meaning beyond what the schema provides, such as examples or constraints, meeting the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Execute') and resource ('coding task using Claude Code CLI'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'run_command' which might also execute commands, so it doesn't fully distinguish its specific scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'run_command' or 'create_project'. The description lacks context about appropriate scenarios, prerequisites, or exclusions, leaving the agent without usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_projectC

Create a new project directory

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesProject name
descriptionNoProject description

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. 'Create a new project directory' implies a write/mutation operation, but the description doesn't disclose what 'create' entails (e.g., where it's created, permissions needed, whether it overwrites existing directories, or what happens on failure). This leaves significant behavioral gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose with zero wasted words. It's appropriately sized and front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what 'create' entails operationally, what the expected outcome is, or any error conditions. Given the complexity of creating resources and the lack of structured behavioral data, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with both parameters ('name' and 'description') clearly documented in the schema. The description adds no additional parameter information beyond what the schema already provides, so it meets the baseline for high schema coverage without adding value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create') and the resource ('new project directory'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'claude_code_task' or 'run_command' which might also involve project-related operations, so it doesn't achieve full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There's no mention of prerequisites, when this tool is appropriate versus other sibling tools, or any contextual limitations. The agent must infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_filesC

List files in a project directory

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathYesPath to the project directory

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While 'List files' implies a read-only operation, it doesn't specify whether this returns metadata only, includes hidden files, supports pagination, or has permission requirements. The description lacks critical behavioral context for a file system tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's appropriately sized for a simple tool and front-loads the essential information without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a file listing tool with no annotations and no output schema, the description is insufficient. It doesn't explain what information is returned (file names, metadata, structure), doesn't mention recursion options or filtering capabilities, and provides no context about error conditions or limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the single 'project_path' parameter. The description doesn't add any additional semantic context about the parameter beyond what's in the schema, such as path format expectations or directory existence requirements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List files') and the target ('in a project directory'), providing a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'read_file' or 'create_project', which would require more specificity about scope or output format.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'read_file' (for file contents) or 'claude_code_task' (which might involve file operations). There's no mention of prerequisites, limitations, or appropriate contexts for choosing this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_fileC

Read contents of a file

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesPath to the file to read

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. 'Read contents of a file' implies a read operation but doesn't specify whether it requires specific permissions, what happens if the file doesn't exist (error behavior), whether it reads entire files or has size limits, or what format the contents are returned in. For a file operation tool with zero annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that communicates the core functionality without any wasted words. It's appropriately sized for a simple tool and gets straight to the point with no unnecessary elaboration or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a file reading tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what format the file contents are returned in (text, binary, encoding), whether there are size limitations, error conditions, or permission requirements. Given the complexity of file operations and the lack of structured metadata, the description should provide more operational context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the single parameter 'file_path' clearly documented in the schema. The description doesn't add any parameter-specific information beyond what's already in the schema (e.g., no examples of valid paths, no mention of relative vs absolute paths). With complete schema coverage, the baseline score of 3 is appropriate as the description doesn't enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Read contents') and resource ('a file'), making the purpose immediately understandable. It distinguishes from sibling tools like 'list_files' (which enumerates files) and 'create_project' (which creates resources). However, it doesn't specify what format the contents are returned in or any scope limitations, keeping it from a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when reading a file is appropriate versus using 'list_files' to see what's available, or whether there are prerequisites like file existence or permissions. The agent must infer usage context entirely from the tool name and schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_commandC

Run a shell command in the project directory

ParametersJSON Schema
NameRequiredDescriptionDefault
commandYesCommand to execute
project_pathNoDirectory to run command in

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but fails to describe critical traits like security implications, permission requirements, error handling, or output format. For a shell command execution tool, this omission is significant and leaves the agent with insufficient information about operational risks and behaviors.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's function without any redundant or unnecessary information. It is appropriately sized and front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of executing shell commands (which involves security, permissions, and output handling) and the absence of both annotations and an output schema, the description is incomplete. It fails to address critical aspects like what the tool returns, error conditions, or safety considerations, making it inadequate for informed tool invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters ('command' and 'project_path') adequately. The description adds no additional semantic context beyond what the schema provides, such as examples of valid commands or path formats, resulting in a baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('run a shell command') and the context ('in the project directory'), which provides a specific verb+resource combination. However, it doesn't explicitly distinguish this tool from potential sibling tools like 'claude_code_task' which might also execute commands, leaving room for ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'claude_code_task' or other file-related siblings. It lacks any mention of prerequisites, constraints, or typical use cases, offering minimal contextual direction for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.1/5.0
Disambiguation4/5

Most tools have distinct purposes: claude_code_task for coding execution, create_project for project setup, list_files and read_file for file inspection, and run_command for shell operations. However, claude_code_task and run_command could potentially overlap if coding tasks involve shell commands, but their descriptions help differentiate them.

Naming Consistency3/5

The naming is mixed: claude_code_task uses a descriptive compound name, while the others follow a verb_noun pattern (create_project, list_files, read_file, run_command). This inconsistency is noticeable but still readable, as most tools use clear verbs and nouns.

Tool Count4/5

With 5 tools, the count is reasonable for a code bridge server, covering project creation, file operations, and command execution. It feels slightly thin for broader coding workflows, but each tool serves a clear purpose without obvious bloat.

Completeness3/5

The toolset covers basic project and file operations, but there are notable gaps for a code-focused domain: no tools for writing/modifying files, deleting files, or managing dependencies. This could limit agent workflows, though core inspection and execution are present.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    Not graded
    maintenance
    Bridges Claude Desktop, Claude Code CLI, and Claude Code for VS Code, enabling developers to plan in Desktop, save specs to project directories, and invoke Claude Code CLI with seamless state sharing across interfaces.
    4
  • A
    license
    Not graded
    quality
    D
    maintenance
    Connects Claude Desktop and Claude Code, enabling autonomous exchange of messages, files, and code while keeping their context windows separate.
    4
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SobieskiCodes/claude-desktop-mcp-to-claude-agent'

If you have feedback or need assistance with the MCP directory API, please join our Discord server