返回市场
mcp-复制

mcp-复制

作者:AnEntrypoint110 星标更新:2025-10-27

项目介绍

【技术文档摘要】

MCP(模型上下文协议)服务器用于开发工具,具有优化的执行和向量嵌入功能。

当前版本的目标是生成比常规工具更全面的研究结果,从而减少与代理的实际交互次数。

基准提示:

始终使用glootie

我偏好的提示如下:

始终持续跟踪并更新使用caveat工具记录的注意事项,在glootie和playwright中先假设并测试想法,只有在确定某项内容可以工作时才进行实现,使用工具消除重复实现,DRY代码是强制性的,泛化是强制性的,架构预见性是强制性的,立即实施需要跨板更改,使用glootie中的代码洞察工具改进输出并立即修复任何违反政策的内容,及时行乐。在需要时使用ast-grep进行代码库范围内的模式替换等操作,不要添加任何注释,立即删除看到的所有注释,不要创建任何模拟、备用方案或故障转移,我们的代码必须每个关注点只有一个主要实现,将规格保存在specs/目录下并追踪其进度,直到所有规格都被记录、追踪、使用的代码库部分被注明、端到端验证,并且注意事项被记录,如果可以解决的问题就追踪它们,迭代直至修复,如果遇到任何问题、警告、错误或意外行为,立即追踪并将其视为完成前必须解决的硬障碍,只有当所有已知问题都经过完整的端到端验证并解决后才能结束,这意味着最后一步必须进行全面的错误发现运行以查找进一步的问题,并检查整个项目确保其按预期工作,端到端,立即追踪任何新发现的问题并迭代解决它们,直到所有程序功能的完整端到端测试都已通过并确认工作正常,没有例外。我们希望在整个工作流程中应用框架预见性,以便泛化、DRY原则、自动化框架、约定优于配置以及代码最小化总是得到强制执行,每一个字母都很重要。我们希望在代码中拥有全面且易于使用的全局变量用于调试,并尽可能在代码执行中经常使用它们,以获得绝对真实的状况信息来解决问题,我们绝不应该猜测代码变更,只遵循第一原则。

功能

可用工具

核心工具

  • begin - 初始化系统并设置工作目录上下文
  • execute - 多语言代码执行,自动检测运行时
    • JavaScript/TypeScript - 使用Node.js或Deno执行
    • Go - 使用go run执行(当有Go CLI时)
    • Rust - 使用rustc编译并执行(当有Rust CLI时)
    • Python - 使用python3执行(当有Python CLI时)
    • C - 使用gcc编译并执行(当有GCC时)
    • C++ - 使用g++编译并执行(当有G++时)
    • Bash - 安全地运行Bash命令

分析工具

  • searchcode - 使用AI驱动的向量嵌入进行语义代码搜索,支持所有受支持的语言
  • ast_tool - 统一的AST操作,结合代码分析、模式搜索、安全替换和代码检查

执行工具

  • execute - 多语言代码执行,内置异步作业管理和进度跟踪

实用工具

  • caveat - 记录、查看和删除开发过程中遇到的技术注意事项。对于追踪限制、约束和未来工作的考虑非常重要。
  • error_handling - 增强的错误恢复和报告
  • utilities - 常用的实用函数和助手
  • mcp_pagination - MCP分页工具,用于处理大数据集

语言运行时要求

为了实现全面的多语言支持,请安装以下CLI工具:

注意:工具会自动检测可用的语言运行时,并相应地启用功能。

客户端配置

Claude Code

Windows

在Windows上,npx命令需要cmd /c包装器:

claude mcp add glootie -- cmd /c npx -y mcp-glootie@latest

macOS/Linux

# 使用npx(推荐 - 总是获取最新版本)
claude mcp add glootie npx -s local -- -y mcp-glootie@latest

# 对于本地开发(用实际路径替换/path/to)
claude mcp add glootie -- node /path/to/mcp-glootie/src/index.js

Cursor

添加到你的Cursor mcpServers.json配置:

{
  "mcpServers": {
    "glootie": {
      "command": "npx",
      "args": ["-y","mcp-glootie@latest"],
      "env": {},
      "disabled": false,
      "autoApprove": [
        "execute",
        "searchcode",
        "ast_tool",
        "caveat"
      ]
    }
  }
}

GitHub Copilot

添加到你的GitHub Copilot mcpServers.json配置:

{
  "mcpServers": {
    "glootie": {
      "command": "npx",
      "args": ["-y","mcp-glootie@latest"],
     - "env": {},
      "type": "local",
      "tools": [
        "execute",
        "searchcode",
        "ast_tool",
        "caveat"
      ]
    }
  }
}

VSCode

添加到你的VSCode MCP配置:

{
    "servers": {
        "glootie": {
            "command": "npx",
            "args": ["-y","mcp-glootie@latest"],
            "env": {},
            "type": "stdio"
        }
    },
    "inputs": []
}

注意:对于Claude Code本地开发,用实际克隆仓库的路径替换/path/to/mcp-glootie。全局安装直接使用mcp-glootie命令。

工具

核心AST工具

ast_tool

统一的AST操作,结合代码分析、模式搜索、安全替换和代码检查于一体。这将之前的4个独立的AST工具整合在一起,减少了选择困难,并提供了一致的接口。

操作:

  • analyze - 解析代码结构,计数函数/类/导入,验证语法
  • search - 使用带有通配符的AST匹配查找结构性代码模式
  • replace - 在保留语法的情况下安全地转换代码模式
  • lint - 使用AST模式应用自定义代码检查规则

关键特性:

  • 所有AST操作的单一统一接口
  • 智能文件读取(接受代码或filePath)
  • 多语言支持(JavaScript, TypeScript, Go, Rust, Python, C, C++)
  • 高级ast-grep模式匹配,支持YAML配置
  • 关系约束和复合规则类型
  • 自动忽略模式过滤
  • 带有通配符的高级模式语法($VARIABLE)
  • 基于AST的安全转换,自动备份

示例:

// 分析代码结构
ast_tool(operation="analyze", path="./src", analysisType="detailed")

// 查找React组件
ast_tool(operation="search", pattern="const $NAME = ($PROPS) => { $BODY }")

// 将console.log替换为logger
ast_tool(operation="replace", pattern="console.log($MSG)", replacement="logger.info($MSG)")

// 检查代码质量问题
ast_tool(operation="lint", path="./src", rules=[custom_rules])

常见模式:

function $NAME($ARGS) { $BODY }           # 查找函数声明
const $NAME = ($PROPS) => { $BODY }        # 查找React组件
interface $NAME { $MEMBERS }              # 查找TypeScript接口
console.log($ARGS)                       # 查找console.log调用
var $NAME = $VALUE → let $NAME = $VALUE      # 将var转换为let/const

执行工具

execute

在多种语言中执行代码,自动检测运行时并集成CLI工具。

batch_execute

协调多个工具在同一操作中提高效率,现在支持智能文件读取以供AST操作使用。

关键改进:

  • 当提供filePath而无代码时自动文件读取
  • 改进的错误处理和验证
  • 更好地与AST工具集成

分析工具

searchcode

在多语言代码库中搜索代码模式,使用语义向量嵌入。

execute

多语言代码执行,具有3秒阈值优化和跨工具状态共享。

关键特性:

  • 3秒阈值:快速操作(<3秒)直接返回响应,节省周期和延迟
  • 跨工具状态共享:执行结果自动与后续工具调用共享
  • 智能优化:基于时间的执行跟踪以实现最佳性能
  • 多语言支持:JavaScript, TypeScript, Go, Rust, Python, C, C++, Bash
  • 状态指示器:清晰标记帮助代理跨工具追踪执行

用法:

// 执行代码(根据执行时间自动优化)
execute(code="console.log('Hello world')", runtime="nodejs")

// 快速执行(<3秒)直接返回响应
// 状态自动与后续工具调用共享

sequentialthinking

系统地构建复杂思想以进行更好的分析。

caveat

记录、查看和删除开发过程中遇到的技术注意事项。此工具有助于追踪系统限制、约束和对未来工作重要的考虑事项。

特性:

  • 记录注意事项:记录技术限制、API约束、性能考虑
  • 查看注意事项:显示所有记录的注意事项及其时间戳,便于参考
  • 删除注意事项:移除不再相关或已解决的注意事项
  • 持久存储:注意事项本地存储并在MCP初始化时显示
  • 信息上下文:注意事项帮助代理理解项目的约束和限制

用法:

// 记录新的注意事项
caveat(action="record", text="此API端点每分钟限速100次请求")

// 查看所有注意事项
caveat(action="view")

// 通过ID或文本删除注意事项
caveat(action="delete", id="cav_1234567890123_abcde")

重要:caveat工具在MCP服务器初始化时显示记录的注意事项,以告知未来的工作。使用它来记录可能影响开发决策的技术限制。

测试

项目包括一个全面的性能测试套件(test-runner.cjs),该套件:

  • 并行测试:同时运行基线与MCP优化测试
  • 实时监控:增量文件写入防止进程卡住
  • 全面分析:跟踪工具使用情况、性能指标和MCP服务器状态
  • 自动报告:生成详细的分析报告和建议

测试运行器特性

  • 优化的增量文件写入:每25次操作写入一次步骤数据以提高性能
  • 进程监控:测试执行期间的实时更新
  • 工作目录修复:关键修复以分析正确的代码库而不是父目录
  • 错误恢复:优雅处理失败测试并详细报告错误
  • 性能指标:衡量速度提升和工具有效性
  • 状态跟踪:正确跟踪MCP服务器状态,对比基线与MCP测试

运行测试:

node test-runner.cjs

架构

  • 清晰简单的实现,遵循KISS原则
  • 最小依赖和简洁的代码结构
  • 面向未来的设计,明确分离关注点
  • 注重核心功能,避免不必要的复杂性
  • 强大的测试基础设施,逐步进展跟踪

许可证

MIT