MCP 工具总览
TaskFlow AI 提供 13 个 MCP 工具,覆盖开发工作流的各个场景
📋 工具列表
| 工具名 | 描述 | 文档 |
|---|---|---|
taskflow_filesystem | 文件读写、目录操作 | 文件系统工具 |
taskflow_shell | 执行 shell 命令 | Shell 工具 |
taskflow_git | Git 版本控制操作 | Git 工具 |
taskflow_code | 代码执行 | 代码工具 |
taskflow_http | HTTP 请求 | HTTP 工具 |
taskflow_database | 数据库操作 | 数据库工具 |
taskflow_vector | 向量数据库 | 向量工具 |
taskflow_memory | 内存管理 | 内存工具 |
taskflow_notification | 通知推送 | 通知工具 |
taskflow_builtin | 内置工具 | 内置工具 |
🔒 安全机制
所有工具都遵循以下安全原则
1. 输入验证
所有参数经过严格验证:
typescript
// 路径验证
validateFilePath(path) // 防止路径遍历
// 命令验证
validateCommand(command) // 白名单检查
// URL 验证
validateUrl(url) // 防止 SSRF2. 路径隔离
文件系统操作限制在指定目录:
yaml
# 默认工作目录
workDir: /path/to/project
# 禁止访问
blockedPaths:
- /etc
- /root
- ~/.ssh
- /var/log3. 命令白名单
Shell 命令使用白名单机制:
yaml
allowedCommands:
# 文件操作
- ls
- cat
- head
- tail
- grep
- find
# 版本控制
- git
# 包管理
- npm
- yarn
- pnpm
# 运行环境
- node
- python
- python3
# 系统工具
- cp
- mv
- rm
- mkdir
- touch4. 超时控制
所有操作都有超时限制:
| 操作类型 | 默认超时 |
|---|---|
| 文件操作 | 10 秒 |
| Shell 命令 | 30 秒 |
| HTTP 请求 | 30 秒 |
| 数据库查询 | 60 秒 |
| 代码执行 | 60 秒 |
5. 资源清理
自动管理资源生命周期:
typescript
// 自动清理
await executor.execute(command, {
timeout: 30000,
cleanup: true // 自动清理临时文件
});📊 工具分类
📁 文件操作类
| 工具 | 功能 | 安全性 |
|---|---|---|
filesystem | 核心文件操作 | ✅ 路径验证 |
git | 版本控制 | ✅ 命令链检测 |
典型场景:
- 读取/写入文件
- 列出目录内容
- 搜索文件
- Git 提交/推送
💻 代码执行类
| 工具 | 功能 | 安全性 |
|---|---|---|
shell | Shell 命令 | ✅ 白名单 + 超时 |
code | 代码片段执行 | ✅ 沙箱隔离 |
典型场景:
- 运行构建命令
- 执行测试
- 运行脚本
- 代码验证
💾 数据操作类
| 工具 | 功能 | 安全性 |
|---|---|---|
database | 关系型数据库 | ✅ 连接池管理 |
vector | 向量数据库 | ✅ 权限控制 |
memory | 内存缓存 | ✅ 资源清理 |
典型场景:
- 数据库查询
- 语义搜索
- 缓存管理
🌐 网络通信类
| 工具 | 功能 | 安全性 |
|---|---|---|
http | HTTP 请求 | ✅ URL 验证 |
notification | 通知推送 | ✅ 模板验证 |
典型场景:
- API 调用
- 网页抓取
- 发送通知
🎯 使用示例
示例一:读取文件
Claude: 帮我读取 package.json 文件Claude 调用:
json
{
"name": "taskflow_filesystem_readFile",
"arguments": {
"path": "package.json"
}
}示例二:执行命令
Claude: 帮我运行 npm testClaude 调用:
json
{
"name": "taskflow_shell_exec",
"arguments": {
"command": "npm test"
}
}示例三:Git 操作
Claude: 帮我查看 Git 状态Claude 调用:
json
{
"name": "taskflow_git_status",
"arguments": {}
}📈 性能指标
| 指标 | 数值 |
|---|---|
| 工具数量 | 13 |
| 平均响应时间 | < 100ms |
| 测试覆盖率 | 95%+ |
| 安全审计 | 通过 |
🔗 相关链接
想了解某个工具的详细信息吗?随时问我