返回市场
麦克服-ai驱动

麦克服-ai驱动

作者:skydeckai77 星标更新:2025-08-18

项目介绍

【技术文档摘要】

MseeP.ai 安全评估徽章

SkyDeckAI Code

一个提供全面工具集的MCP服务器,用于AI驱动的开发工作流程。功能包括文件系统操作、使用tree-sitter进行多种编程语言的代码分析、代码执行、网页内容抓取(带HTML转Markdown转换)、多引擎网络搜索、代码内容搜索以及系统信息检索。设计目的是通过提供对本地和远程资源的直接访问来增强AI在软件开发任务中的辅助能力。

原名:MCP-Server-AIDD

此MCP服务器原名为mcp-server-aidd。为了表彰SkyDeck.ai团队与East Agile共同创建此应用程序,它被重新命名为skydeckai-code。更重要的是,我们意识到“AI驱动开发”(AIDD)这一术语并没有引起人们的兴趣。人们无法一眼就理解其含义,连LLMs也无法理解。“Code”则直观得多,在代理AI的世界中,语言上的直观性非常重要。

已验证于MseeP

安装

# 使用uvx
uvx skydeckai-code

Claude桌面设置

添加到你的claude_desktop_config.json

{
    "mcpServers": {
        "skydeckai-code": {
            "command": "uvx",
            "args": ["skydeckai-code"]
        }
    }
}

SkyDeck AI助手应用

如果你正在使用MseeP AI助手应用,可以搜索“SkyDeckAI Code”并安装它。

MseeP AI助手应用

主要特性

  • 文件系统操作(读取、写入、编辑、移动、复制、删除)
  • 目录管理和遍历
  • 多语言代码分析使用tree-sitter
  • 使用正则表达式模式匹配的代码内容搜索
  • 带有安全措施的多语言代码执行
  • 从API和网站获取网页内容,带HTML转Markdown转换
  • 带可靠回退机制的多引擎网络搜索
  • 批量操作,支持并行和串行工具执行
  • 可配置的工作空间边界的安全控制
  • 截图和屏幕上下文工具
  • 图像处理工具

可用工具(29)

类别工具名称描述
文件系统get_allowed_directory获取当前工作目录路径
update_allowed_directory更改工作目录
create_directory创建新目录或嵌套目录
write_file创建或覆盖带有新内容的文件
edit_file对文本文件进行基于行的编辑
read_file读取一个或多个文件的内容
list_directory获取文件和目录列表
move_file移动或重命名文件或目录
copy_file将文件或目录复制到新位置
search_files搜索匹配名称模式的文件
delete_file删除文件或空目录
get_file_info获取详细的文件元数据
directory_tree获取递归树视图的目录结构
read_image_file以base64数据形式读取图像文件
代码工具codebase_mapper跨文件分析代码结构
search_code在代码文件中查找文本模式
execute_code在各种语言中运行代码
execute_shell_script运行shell/bash脚本
网络工具web_fetch从URL获取内容
web_search执行网络搜索
屏幕工具capture_screenshot捕获屏幕或窗口的截图
get_active_apps列出正在运行的应用程序
get_available_windows列出所有打开的窗口
系统get_system_info获取详细的系统信息
实用工具batch_tools一起运行多个工具操作
think记录推理过程而不做任何更改
待办事项todo_read读取当前工作区的待办事项列表
todo_write用验证替换整个待办事项列表
todo_update根据ID更新特定的待办事项

工具详细文档

基本文件操作

工具参数返回值
read_filefiles: [{path: string, offset?: integer, limit?: integer}]文件内容(单个或多个文件)
write_filepath: string, content: string成功确认
move_filesource: string, destination: string成功确认
copy_filesource: string, destination: string, recursive?: boolean成功确认
delete_filepath: string成功确认
get_file_infopath: string文件元数据(大小、时间戳、权限)

复杂文件操作

edit_file

基于模式的文件编辑,支持预览:

{
    "path": "src/main.py",
    "edits": [
        {
            "oldText": "def old_function():",
            "newText": "def new_function():"
        }
    ],
    "dryRun": false,
    "options": {
        "partialMatch": true
    }
}

返回:更改差异或干运行模式下的预览。

目录操作

工具参数返回值
get_allowed_directory当前允许的目录路径
update_allowed_directorydirectory: string (绝对路径)成功确认
list_directorypath: string目录内容列表
create_directorypath: string成功确认
search_filespattern: string, path?: string, include_hidden?: boolean匹配的文件列表

search_files工具按名称模式搜索文件,而search_code工具使用正则表达式在文件内容中搜索。当寻找具有特定名称或扩展名的文件时,请使用search_files;当在文件内搜索特定文本模式时,请使用search_code

directory_tree

生成完整的目录结构:

{
    "path": "src",
    "include_hidden": false
}

返回:目录内容的JSON树结构。

代码分析

codebase_mapper

分析源代码结构:

{
    "path": "src"
}

返回:

  • 类及其方法
  • 函数及其参数
  • 模块结构
  • 代码组织统计
  • 继承关系

支持的语言:

  • Python (.py)
  • JavaScript (.js/.jsx, .mjs, .cjs)
  • TypeScript (.ts/.tsx)
  • Java (.java)
  • C++ (.cpp, .hpp, .cc)
  • Ruby (.rb, .rake)
  • Go (.go)
  • Rust (.rs)
  • PHP (.php)
  • C# (.cs)
  • Kotlin (.kt, .kts)

search_code

使用正则表达式的快速内容搜索工具:

{
    "patterns": ["function\\s+\\w+", "class\\s+\\w+"],
    "include": "*.js",
    "exclude": "node_modules/**",
    "max_results": 50,
    "case_sensitive": false,
    "path": "src"
}

参数:

参数类型必需描述
patterns字符串数组在文件内容中搜索的正则表达式模式列表
include字符串要包含的文件模式(默认:"*")
exclude字符串要排除的文件模式(默认:"")
max_results整数每个模式的最大返回结果数(默认:100)
case_sensitive布尔值是否区分大小写搜索(默认:false)
path字符串搜索的基础目录(默认:".")

返回值: 按文件分组的匹配行,附带行号,按文件修改时间排序,最新文件优先。

该工具在可用时使用ripgrep以获得最佳性能,并有一个Python备用实现。它非常适合查找特定的代码模式,如函数声明、导入、变量使用或错误处理。

系统信息

工具参数返回值
get_system_info全面的系统详情

返回:

{
  "working_directory": "/path/to/project",
  "system": {
    "os", "os_version", "architecture", "python_version"
  },
  "wifi_network": "MyWiFi",
  "cpu": {
    "physical_cores", "logical_cores", "total_cpu_usage"
  },
  "memory": { "total", "available", "used_percentage" },
  "disk": { "total", "free", "used_percentage" },
  "mac_details": {  // 仅在macOS上存在
    "model": "Mac mini",
    "chip": "Apple M2",
    "serial_number": "XXX"
  }
}

提供简洁易读的系统信息。

屏幕上下文和图像工具

get_active_apps

返回用户系统上当前活跃的应用程序列表。

{
    "with_details": true
}

参数:

参数类型必需描述
with_details布尔值是否包含每个应用程序的附加详细信息(默认:false)

返回值:

{
    "success": true,
    "platform": "macos",
    "app_count": 12,
    "apps": [
        {
            "name": "Firefox",
            "has_windows": true,
            "window_count": 3,
            "visible_windows": [
                { "name": "GitHub - Mozilla Firefox", "width": 1200, "height": 800 }
            ]
        },
        {
            "name": "VSCode",
            "has_windows": true
        }
    ]
}

此工具提供了关于用户系统上当前运行的应用程序的有价值上下文,有助于提供更相关的帮助。

get_available_windows

返回用户屏幕上当前显示的所有可用窗口的详细信息。

{}

返回值:

{
    "success": true,
    "platform": "macos",
    "count": 8,
    "windows": [
        {
            "id": 42,
            "title": "Document.txt - Notepad",
            "app": "Notepad",
            "visible": true
        },
        {
            "title": "Terminal",
            "app": "Terminal",
            "visible": true,
            "active": true
        }
    ]
}

此工具有助于了解用户屏幕上可见的内容,并可用于上下文感知的帮助。

capture_screenshot

捕获用户的屏幕或特定窗口的截图。

{
    "output_path": "screenshots/capture.png",
    "capture_mode": {
        "type": "named_window",
        "window_name": "Visual Studio Code"
    }
}

参数:

参数类型必需描述
output_path字符串截图应保存的路径(默认:生成的路径)
capture_mode对象指定要捕获的内容
capture_mode.type字符串截图类型:'full','active_window' 或 'named_window'(默认:'full')
capture_mode.window_name字符串要捕获的窗口名称(当类型为 'named_window' 时需要)

返回值:

{
    "success": true,
    "path": "/path/to/screenshots/capture.png"
}

此工具用于可视化、调试或上下文感知的帮助。

read_image_file

从文件系统中读取图像文件,并将其内容作为base64编码字符串返回。

{
    "path": "images/logo.png"
}

参数:

参数类型必需描述
path字符串要读取的图像文件路径
max_size整数最大文件大小(默认:100MB)

返回值: 可显示或处理的base64编码图像数据。

此工具支持常见的图像格式,如PNG、JPEG、GIF和WebP,并自动调整图像大小以优化查看效果。

网络工具

web_fetch

从URL获取内容,并可选择将其保存到文件。

{
    "url": "https://api.github.com/users/octocat",
    "headers": {
        "Accept": "application/json"
    },
    "timeout": 15,
    "save_to_file": "downloads/octocat.json",
    "convert_html_to_markdown": true
}

参数:

参数类型必需描述
url字符串要从中获取内容的URL(仅限http/https)
headers对象请求中包含的可选HTTP头
timeout整数等待响应的最大时间(默认:10秒)
save_to_file字符串保存响应内容的路径(在允许的目录内)
convert_html_to_markdown布尔值当为true时,将HTML内容转换为markdown以提高可读性(默认:true)

返回值: 带有HTTP状态码和大小信息的文本响应内容。对于二进制内容,返回元数据并根据请求保存到文件。当启用convert_html_to_markdown时,HTML内容会自动转换为markdown格式以提高可读性。

此工具可用于访问Web API、获取文档或下载网络内容,同时遵守大小限制(最大10MB)和安全约束。

web_search

使用多个搜索引擎执行强大的网络搜索,并返回简洁的相关结果。

{
    "query": "latest python release features",
    "num_results": 8,
    "convert_html_to_markdown": true,
    "search_engine": "bing"
}

参数:

参数类型必需描述
query字符串要处理的搜索查询。具体描述可以获得更好的结果。
num_results整数要返回的最大搜索结果数量(默认:10,最大:20)
convert_html_to_markdown布尔值当为true时,内容将从HTML转换为markdown以提高可读性(默认:true)
search_engine字符串指定要使用的搜索引擎:“auto”(默认),“bing”或“duckduckgo”

返回值: 格式化的markdown搜索结果列表,包括每个结果的标题、URL和摘要。结果去重并分层组织,便于阅读。

此工具采用多引擎方法,尝试不同的搜索引擎和解析策略以确保可靠的结果。你可以指定首选引擎,但如果某些引擎阻止自动化访问,“auto”选项将切换到其他引擎。

实用工具

batch_tools

在一个请求中执行多个工具调用,并尽可能并行执行。

{
    "description": "Setup new project",
    "sequential": true,
    "invocations": [
        {
            "tool": "create_directory",
            "arguments": {
                "path": "src"
            }
        },
        {
            "tool": "write_file",
            "arguments": {
                "path": "README.md",
                "content": "# 新项目\n\n这是一个新项目。"
            }
        },
        {
            "tool": "execute_shell_script",
            "arguments": {
                "script": "git init"
            }
        }
    ]
}

参数:

参数类型必需描述
description字符串批处理操作的简短描述
sequential布尔值是否顺序执行工具(默认:否)
invocations数组要执行的工具调用列表
invocations[].tool字符串要调用的工具名称
invocations[].arguments对象指定工具的参数

返回值: 来自所有工具调用的组合结果,按工具分组,并带有每个工具的成功/错误状态。结果按照原始调用顺序呈现,并带有清晰的部分标题。

此工具提供了一个在单个请求中高效执行多个操作的方法。当sequential为false(默认)时,工具并行执行以获得更好的性能。当sequential为true时,工具按顺序执行,