MCPStudio_ToolSDK
适用于macOS的EoF MCP Studio应用程序的官方SDK
概述
MCPStudio_ToolSDK为MCP Studio应用程序构建自定义工具、插件和脚本提供了一个全面的框架。此SDK使开发人员能够通过以下方式扩展MCP Studio功能:
- JavaScript脚本 -通过内置实用程序完全访问API
- C/C++插件 -构建动态库(dylib)和捆绑包
- 构建集成 -CMake、Xcode、QMake支持
- 文件操作 -使用macOS沙盒保护文件访问
- HTTP工具 -用于网络操作的REST API客户端
- 构建自动化 -项目建设管理实用程序
SDK结构
MCPStudio_ToolSDK/
├── Scripts/ # JavaScript utility scripts
│ ├── clangTools.js # Clang compiler tools
│ ├── cmakeBuild.js # CMake build automation
│ ├── checkWithXcode.js # Xcode project validation
│ ├── fileRead.js # File reading utilities
│ ├── fileSave.js # File writing utilities
│ ├── shellCall.js # Shell command execution
│ ├── httpTools.js # HTTP request utilities
│ ├── directoryList.js # Directory listing operations
│ ├── directoryCreate.js # Directory creation utilities
│ └── tool_entry.js # Tool entry point registry
├── SamplePlugin/ # Sample plugin template
│ ├── dylib/ # Dynamic library implementation
│ ├── bundle/ # Bundle implementation
│ ├── CMakeLists.txt # Master build configuration
│ └── ToolCapabilities.json # Plugin capabilities definition
├── test-scripts/ # Test suite for utilities
│ ├── testFileOps.js # File operation tests
│ ├── testHttpAll.js # HTTP method tests
│ ├── testJSON.js # JSON handling tests
│ └── ... # Additional test scripts
└── README*.md # Documentation files
## Quick Start Guide
### 1. Build a Sample Plugin
cd SamplePlugin mkdir build cd build cmake .. make
这产生了两者 `SampleTool` dylib和 `SampleTool.bundle`.
### 2.创建自定义工具脚本
将脚本添加到 `Scripts/` 目录:
// Example: customTools.js function toolEntry(sid, toolName, params, resultJson, resultSize) { // Your tool implementation here return null; }
module.exports = { toolEntry };
### 3.通过MCP Studio执行
使用MCP Studio UI可以:
- 在tools/目录中配置自定义工具
- 从scripts/目录加载脚本
- 使用参数执行并查看结果
## API 参考
### 文件操作
- [`fileRead.js`](Scripts/fileRead.js) -读取文件内容
- [`fileSave.js`](Scripts/fileSave.js) -写入文件内容
- [`fileExists.js`](Scripts/fileExists.js) -检查文件是否存在
- [`fileDelete.js`](Scripts/fileDelete.js) -删除文件
### 构建工具
- [`cmakeBuild.js`](Scripts/cmakeBuild.js) -CMake项目构建
- [`checkWithXcode.js`](Scripts/checkWithXcode.js) -Xcode项目验证
- [`qmakeBuild.js`](Scripts/qmakeBuild.js) -QMake项目构建
### 壳牌公用事业公司
- [`shellCall.js`](Scripts/shellCall.js) -执行shell命令
- [`getGccInfo.js`](Scripts/getGccInfo.js) -GCC编译器信息
- [`gccSettings.js`](Scripts/gccSettings.js) -GCC配置实用程序
### 目录操作
- [`directoryList.js`](Scripts/directoryList.js) -列出目录内容
- [`directoryCreate.js`](Scripts/directoryCreate.js) -创建目录
- [`mkdir.js`](Scripts/mkdir.js) -创建单个目录
### HTTP工具
- [`httpTools.js`](Scripts/httpTools.js) -HTTP请求实用程序
- [`fetchResource.js`](Scripts/fetchResource.js) -MCP资源获取
- [`previewFile.js`](Scripts/previewFile.js) -文件预览功能
### 核心公用设施
- [`tool_entry.js`](Scripts/tool_entry.js) -工具入口点注册表
- [`bootstrap.js`](Scripts/bootstrap.js) -Bootstrap实用程序
- [`sharedFunctions.js`](Scripts/sharedFunctions.js) -共享助手函数
## 文档链接
### 处理器组件
- **[README-Handler.md](README-Handler.md)** -详细的处理程序组件文档,包括MyResourceHandler和FileAccessHandler
### 脚本系统
- **[README-Scripting.md](README-Scripting.md)** -与API完整参考和示例的JavaScript脚本集成
### 示例插件
- **[README-SamplePlugin.md](README-SamplePlugin.md)** -构建SamplePlugin包和dylib文档
### 服务器实现
- **[README-MCPServer.md](README-MCPServer.md)** -MCP HTTP服务器的架构和协议方法实现
## 项目结构概述
### MCPStudio_ToolSDK/
- **脚本/** -用于文件操作、构建工具、shell命令、HTTP请求的JavaScript实用程序
- **示例插件/** -基于CMake的插件模板与dylib和bundle实现
- **测试脚本/** -用于验证实用程序功能的测试套件
## 主要特点
### JavaScript脚本集成
- API完全访问文件系统、构建工具、HTTP客户端
- 参数化工具执行与日志记录
- 安全的macOS沙盒支持
### 插件系统
- 支持动态库(.dylib)和捆绑包(.bundle)
- 基于CMake的构建配置
- 通过以下方式注册工具描述符 `toolDescribe()`
- 符合ABI标准的入口点(`toolEntry`, `toolExecute`)
### 构建自动化
- CMake项目使用自定义标志构建
- Xcode项目验证和构建
- QMake支持Qt项目
- GCC/Clang编译器集成
### 安全操作
- macOS安全范围的文件访问
- 加载带有安全书签的插件
- 沙盒执行环境
## 配置
MCP Studio应用程序使用以下配置目录:
Tools/ - Custom tool configurations Resources/ - Resource definitions Prompts/ - Prompt templates and configurations
## 入门指南
1. **克隆或导航到SDK目录**
1. **查看README文件** 链接到上面查看详细文档
1. **构建SamplePlugin** 了解插件结构
1. **创建自定义脚本** 在Scripts/目录中
1. **配置工具** 通过 [MCP工作室应用程序](https://mcpstudio.eofsl.com/download.html) 或配置文件
## 许可证
版权所有(C)2026 EoF软件实验室。保留所有权利。
______________________________________________________________________
*最后更新时间:2026 |SDK版本:1.0*