Token导航 LogoToken导航TokenDH.com
Code Explainer MCP logo
开发工具HTTP官方级别未说明来源级核验

Code Explainer MCP

MCP Server

一个基于Cloudflare Worker的代码解释服务,提供代码结构分析、功能解释和多语言支持。

工具数

0

提示词数

0

GitHub Stars

6

资源数

0
代码分析TypeScript开发工具API集成

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

BillDuke13

提供方

BillDuke13

最后核验

2026/5/17 20:23

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npm install -g wrangler

详细介绍

代码解释器MCP

Cloudflare Worker,用作MCP(模型上下文协议)服务器,用于代码解释。它通过全面分解结构和功能来分析和解释代码。

License

特性

  • 架构图:生成一个ASCII图,显示整体结构、组件之间的关系和数据流。
  • 核心功能分析:基于模式识别确定并解释代码的主要目的。
  • 部件分解:列出所有主要类和函数,并简要说明其作用。
  • 多语言支持:分析各种编程语言的代码,包括JavaScript、TypeScript、Python、Java、C#等。
  • JSDoc/Docstring识别:提取并利用代码中的现有文档。
  • 安全API:承载令牌身份验证,以保护您的端点。

运作原理

代码解释器使用以下技术组合分析源代码:

  1. 模式识别:识别代码结构和常见模式
  2. 关系分析:映射组件之间的依赖关系
  3. 文档提取:优先考虑现有的文件评论
  4. 架构可视化:创建代码结构的ASCII图
  5. 组件描述:提供函数和类的语义描述

所有处理都在Cloudflare Worker内进行,没有外部依赖关系。

安装

先决条件

  • (版本12或更高)
  • 牧马人 (Cloudflare Workers CLI)
  • Cloudflare 帐户

设置

  1. 克隆此存储库:
   git clone https://github.com/BillDuke13/code-explainer-mcp.git
   cd code-explainer-mcp
  1. 安装依赖项:
   npm install
  1. 配置您的密钥:

- 编辑 wrangler.jsonc 并替换 YOUR_SECRET_KEY_HERE 使用您选择的密钥,或 - 使用Cloudflare机密(建议用于生产):

     wrangler secret put SHARED_SECRET
  1. 部署到Cloudflare Workers:
   npm run deploy

用法

API端点

使用以下JSON正文向您的worker URL发送POST请求:

{
  "method": "explainCode",
  "params": ["your code here", "programming language"]
}

在密钥中包含Authorization标头:

Authorization: Bearer YOUR_SECRET_KEY_HERE

响应格式

响应将是一个JSON对象,其中包含 result 包含代码分析的字段:

{
  "result": "# Code Analysis for JavaScript Code\n\n## Architecture Diagram\n...\n\n## Core Functionality\n..."
}

示例用法

JavaScript(浏览器)

async function explainCode(code, language) {
  const response = await fetch('https://your-worker-url.workers.dev', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer YOUR_SECRET_KEY_HERE',
    },
    body: JSON.stringify({
      method: "explainCode",
      params: [code, language]
    }),
  });
  
  if (!response.ok) {
    throw new Error(`HTTP error! status: ${response.status}`);
  }
  
  const data = await response.json();
  return data.result;
}

// Example usage
const jsCode = `function add(a, b) { return a + b; }`;
explainCode(jsCode, "javascript")
  .then(explanation => console.log(explanation))
  .catch(error => console.error('Error:', error));

Python(请求)

import requests
import json

def explain_code(code, language, api_url, secret_key):
    headers = {
        'Content-Type': 'application/json',
        'Authorization': f'Bearer {secret_key}'
    }
    
    payload = {
        'method': 'explainCode',
        'params': [code, language]
    }
    
    response = requests.post(api_url, headers=headers, json=payload)
    response.raise_for_status()
    
    return response.json()['result']

# Example usage
code = "def hello(): print('Hello, world!')"
explanation = explain_code(code, "python", "https://your-worker-url.workers.dev", "YOUR_SECRET_KEY_HERE")
print(explanation)

Node.js(Axios)

const axios = require('axios');

async function explainCode(code, language) {
  try {
    const response = await axios.post('https://your-worker-url.workers.dev', {
      method: 'explainCode',
      params: [code, language]
    }, {
      headers: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer YOUR_SECRET_KEY_HERE'
      }
    });
    
    return response.data.result;
  } catch (error) {
    console.error('Error:', error.response ? error.response.data : error.message);
    throw error;
  }
}

// Example usage
const codeToAnalyze = `
class Person {
  constructor(name) {
    this.name = name;
  }
  
  sayHello() {
    return \`Hello, my name is \${this.name}\`;
  }
}
`;

explainCode(codeToAnalyze, 'javascript')
  .then(explanation => console.log(explanation))
  .catch(err => console.error('Failed to explain code:', err));

地方发展

  1. 克隆存储库并安装依赖项:
   git clone https://github.com/BillDuke13/code-explainer-mcp.git
   cd code-explainer-mcp
   npm install
  1. 运行开发服务器:
   wrangler dev
  1. 在本地测试端点:
   curl -X POST http://localhost:8787 \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer YOUR_SECRET_KEY_HERE" \
     -d '{"method":"explainCode","params":["function hello() { return \"Hello World\"; }","javascript"]}'

开发指南

  • 遵循TypeScript的最佳实践
  • 为复杂逻辑添加注释
  • 为公共API更改更新文档
  • 为新功能添加测试

安全

  • API通过承载令牌身份验证进行安全保护
  • 使用环境机密在生产中存储共享机密
  • 不要将实际的密钥提交给版本控制
  • 建议对生产部署进行速率限制

许可证

此项目根据Apache许可证2.0获得许可-请参阅 许可证 文件以获取详细信息。

目录标签

目录标签

代码分析TypeScript开发工具API集成本地部署多语言支持架构可视化API服务

接入字段

传输方式(transport,传输协议)

HTTP

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

HTTPtokenremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP