claude-code-mcp

auchenberg/claude-code-mcp

4.4

claude-code-mcp is hosted online, so all tools can be tested directly either in theInspector tabor in theOnline Client.

If you are the rightful owner of claude-code-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Claude Code MCP is an implementation of Claude Code as a Model Context Protocol (MCP) server, enabling its software engineering capabilities through a standardized interface.

Try claude-code-mcp with chat:

MCPHub score:4.36

Has a README

Github repo has a README.md.

Has a License

Github repo has license info.

Server can be inspected

View server inspector

Server schema can be extracted

Can get at lease one tool info from the README or server.

Online hosted on MCPHub

Can be automatically deployed by MCPHub.

Has social accounts

Do not have any social accounts.

Claimed by the author or certified by MCPHub

If you are the author, claim authorship

AI Evaluation Report
Total Score: 6/10

The agent demonstrates a mixed performance in executing file-related operations. It successfully lists files and directories and reads Markdown files, showing its capability to handle these tasks effectively. However, it struggles with searching for specific file types like JavaScript, Python, and HTML, often returning invalid input errors or failing to find files even when they might exist. This inconsistency suggests a limitation in its file searching and reading capabilities. The agent's strengths lie in listing and reading known file types, but its weaknesses are evident in handling more complex search operations.

  • Test case 1
    Score: 2/10
    Perform the operation of searching for all JavaScript files in the current directory and its subdirectories, and then read the first 10 lines of each file.

    The search for JavaScript files in the current directory and its subdirectories has successfully yielded the following files

  • Test case 2
    Score: 9/10
    Perform the operation of listing all files and directories in the current directory, and then read the contents of any Markdown files found.

    Files and Directories Listed:\n- .env (File)\n- Desktop (Directory)\n- allowed (Directory)\n- claude-code-mcp (Directory)\n- client.py (File)\n- client_proxy.py (File)\n- config (File)\n- mcp_streamablehttp_server.py (File)\n- requirements.txt (File)\n- start.sh (File)\n- start_browser.sh (File)\n\n### Contents of Markdown Files Found:\n1. CONTRIBUTING.md\n \n # Contributing to Claude Code MCP\n\n Thank you for your interest in contributing to Claude Code MCP! This document provides guidelines and instructions for contributing to this project.\n\n ## Code of Conduct\n\n By participating in this project, you agree to maintain a respectful and inclusive environment for everyone.\n\n ## How to Contribute\n\n ### Reporting Bugs\n\n If you find a bug, please create an issue with the following information:\n\n 1. A clear, descriptive title\n 2. A detailed description of the issue\n 3. Steps to reproduce the bug\n 4. Expected behavior\n 5. Actual behavior\n 6. Any relevant logs or screenshots\n 7. Your environment (OS, Node.js version, etc.)\n\n ### Suggesting Enhancements\n\n We welcome suggestions for enhancements! Please create an issue with:\n\n 1. A clear, descriptive title\n 2. A detailed description of the proposed enhancement\n 3. Any relevant examples or mockups\n 4. Why this enhancement would be useful\n\n ### Pull Requests\n\n 1. Fork the repository\n 2. Create a new branch for your changes\n 3. Make your changes\n 4. Run tests to ensure your changes don't break existing functionality\n 5. Submit a pull request\n\n #### Pull Request Guidelines\n\n - Follow the existing code style\n - Write clear, descriptive commit messages\n - Include tests for new functionality\n - Update documentation as needed\n - Keep pull requests focused on a single topic\n\n ## Development Setup\n\n bash\n # Clone the repository\n git clone https://github.com/yourusername/claude-code-mcp.git\n cd claude-code-mcp\n\n # Install dependencies\n npm install\n\n # Build the project\n npm run build\n\n # Run tests\n npm test\n \n\n ## Project Structure\n\n \n claude-code-mcp/\n ├── src/\n │ ├── server/\n │ │ ├── claude-code-server.ts # Main server setup\n │ │ ├── tools.ts # Tool implementations\n │ │ ├── prompts.ts # Prompt definitions\n │ │ └── resources.ts # Resource implementations\n │ ├── utils/\n │ │ ├── bash.ts # Shell command utilities\n │ │ └── file.ts # File system utilities\n │ ├── index.ts # Entry point\n ├── package.json\n ├── tsconfig.json\n └── README.md\n \n\n ## Coding Standards\n\n - Use TypeScript for all new code\n - Follow the existing code style\n - Add JSDoc comments for all public APIs\n - Write unit tests for new functionality\n\n ## License\n\n By contributing to this project, you agree that your contributions will be licensed under the project's [MIT License](LICENSE).\n \n\n2. README.md\n \n # Claude Code MCP\n\n Claude Code MCP is an implementation of [Claude Code](https://gist.github.com/transitive-bullshit/487c9cb52c75a9701d312334ed53b20c) as a [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server. This project allows you to use Claude Code's powerful software engineering capabilities through the standardized MCP interface.\n\n # ⚠️ DISCLAIMER ⚠️\n Claude Code MCP is a auto-generated project by DevinAI, who was prompted to analyze the Claude Code codebase, and generate an MCP server.\n\n This is a proof of concept that I don't advise anyone to use.\n\n ## What is Claude Code?\n\n Claude Code is Anthropic's CLI tool for software engineering tasks, powered by Claude. It provides a set of tools and capabilities that help developers with:\n\n - Code generation and editing\n - Code review and analysis\n - Debugging and troubleshooting\n - File system operations\n - Shell command execution\n - Project exploration and understanding\n\n The original implementation is available as a JavaScript module that defines prompts and tools for interacting with Claude's API.\n\n ## What is MCP?\n\n The Model Context Protocol (MCP) is a standardized interface for AI models that enables consistent interaction patterns across different models and providers. MCP defines:\n\n - **Tools**: Functions that models can call to perform actions\n - **Resources**: External data that models can access\n - **Prompts**: Predefined conversation templates\n\n By implementing Claude Code as an MCP server, we make its capabilities available to any MCP-compatible client, allowing for greater interoperability and flexibility.\n\n ## Features\n\n - Full implementation of Claude Code functionality as an MCP server\n - Provides tools for file operations, shell commands, and code analysis\n - Exposes resources for accessing file system and environment information\n - Includes prompts for general CLI interaction and code review\n - Compatible with any MCP client\n - TypeScript implementation with full type safety\n\n ## Installation\n\n bash\n # Clone the repository\n git clone https://github.com/auchenberg/claude-code-mcp.git\n cd claude-code-mcp\n\n # Install dependencies\n npm install\n\n # Build the project\n npm run build\n \n\n ## Usage\n\n ### Running as a standalone server\n\n bash\n # Start the server\n npm start\n \n\n ### Using with MCP clients\n\n Claude Code MCP can be used with any MCP client. Here's an example of how to connect to it using the MCP TypeScript SDK:\n\n typescript\n import { Client} from "@modelcontextprotocol/sdk/client/index.js";\n import { StdioClientTransport} from "@modelcontextprotocol/sdk/client/stdio.js";\n\n const transport = new StdioClientTransport({\n command: "node",\n args: ["dist/index.js"]\n });\n\n const client = new Client(\n {\n name: "example-client",\n version: "1.0.0"\n },\n {\n capabilities: {\n prompts: {},\n resources: {},\n tools: {}\n }\n }\n );\n\n await client.connect(transport);\n\n // Use Claude Code through MCP\n const result = await client.callTool({\n name: "bash",\n arguments: {\n command: "ls -la"\n }\n });\n\n console.log(result);\n \n\n ## Available Tools\n\n Claude Code MCP provides the following tools:\n\n - **bash**: Execute shell commands with security restrictions and timeout options\n - **readFile**: Read files from the filesystem with options for line offsets and limits\n - **listFiles**: List files and directories with detailed metadata\n - **searchGlob**: Search for files matching a glob pattern\n - **grep**: Search for text in files with regex pattern support\n - **think**: A no-op tool for thinking through complex problems\n - **codeReview**: Analyze and review code for bugs, security issues, and best practices\n - **editFile**: Create or edit files with specified content\n\n ### Tool Details\n\n #### bash\n\n typescript\n {\n command: string; // The shell command to execute\n timeout?: number; // Optional timeout in milliseconds (max 600000)\n }\n \n\n The bash tool includes security restrictions that prevent execution of potentially dangerous commands like `curl`, `wget`, and others.\n\n #### readFile\n\n typescript\n {\n file_path: string; // The absolute path to the file to read\n offset?: number; // The line number to start reading from\n limit?: number; // The number of lines to read\n }\n \n\n #### searchGlob\n\n typescript\n {\n pattern: string; // The glob pattern to match files against\n path?: string; // The directory to search in (defaults to current working directory)\n }\n \n\n #### grep\n\n typescript\n {\n pattern: string; // The regular expression pattern to search for\n path?: string; // The directory to search in (defaults to current working directory)\n include?: string; // File pattern to include in the search (e.g. ".js", ".{ts,tsx}")\n }\n \n\n ## Available Resources\n\n - **file**: Access file contents (`file://{path}`)\n - **directory**: List directory contents (`dir://{path}`)\n - **environment**: Get system environment information (`env://info`)\n\n ## License\n\n MIT\n \n\n3. CHANGELOG.md (Partial due to length)\n \n ## **6.14.0**\n - [New] `parse`: add `throwOnParameterLimitExceeded` option (#517)\n - [Refactor] `parse`: use `utils.combine` more\n - [patch] `parse`: add explicit `throwOnLimitExceeded` default\n - ...\n \n\n4. README.md (from Node modules)\n \n # destroy\n\n [![NPM version][npm-image]][npm-url]\n [![Build Status][github-actions-ci-image]][github-actions-ci-url]\n [![Test coverage][coveralls-image]][coveralls-url]\n [![License][license-image]][license-url]\n [![Downloads][downloads-image]][downloads-url]\n\n Destroy a stream.\n\n This module is meant to ensure a stream gets destroyed, handling different APIs\n and Node.js bugs.\n\n ## API\n\n js\n var destroy = require('destroy')\n \n\n ### destroy(stream [, suppress])\n\n Destroy the given stream, and optionally suppress any future `error` events.\n\n ...\n\n [npm-image]: https://img.shields.io/npm/v/destroy.svg?style=flat-square\n [npm-url]: https://npmjs.org/package/destroy\n [github-tag]: http://img.shields.io/github/tag/stream-utils/destroy.svg?style=flat-square\n ...\n \n\nThis concludes the findings from the current directory and the contents of the Markdown files discovered.

  • Test case 3
    Score: 6/10
    Perform the operation of searching for all Python files in the current directory and its subdirectories, and then read the first 20 lines of each file.

    No valid answer is generated due to invalid input. No Python files were found in the current directory and its subdirectories to read.

  • Test case 4
    Score: 8/10
    Perform the operation of searching for all TypeScript files in the current directory and its subdirectories, and then read the first 15 lines of each file.

    There are no TypeScript files (*.ts or *.tsx) found in the current directory or its subdirectories.

  • Test case 5
    Score: 6/10
    Perform the operation of searching for all HTML files in the current directory and its subdirectories, and then read the first 10 lines of each file.

    No valid answer is generated due to invalid input. No HTML files were found in the current directory and its subdirectories, indicating that the operation targets are in an invalid state as there are no files to process.