活动日志管理工具

一个用于查看和管理Directus活动日志的Model Context Protocol工具,提供灵活的查询和过滤功能。

  • by JoshTheDerf
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 JoshTheDerf/directus-extension-mcp-activity

使用说明

Directus MCP活动扩展

A. 模型上下文协议(MCP) 用于查看和管理Directus活动日志的工具。

特性

  • 查看活动日志:通过灵活的筛选查询完整的活动历史记录
  • 跟踪用户操作:查看谁在何时何地做了什么
  • 按上下文筛选:按集合、项目、用户或操作类型查找活动
  • 审计跟踪:完成所有系统操作的审计跟踪
  • 管理记录:需要时删除旧的活动记录

安装

来自npm(即将推出)

npm install directus-extension-mcp-activity

地方发展

  1. 将此存储库克隆到您的Directus中 extensions 文件夹
  2. 安装依赖项:
    cd extensions/directus-extension-mcp-activity
    npm install
    
  3. 构建扩展:
    npm run build
    
  4. 重新启动Directus实例

用法

此扩展添加了 activity 工具连接到您的Directus MCP服务器。可以通过连接到Directus实例的任何MCP客户端访问它。

可用操作

阅读一项活动

获取特定活动的详细信息:

{
  "action": "readOne",
  "id": "activity-id-123",
  "fields": ["id", "action", "collection", "item", "timestamp", "user.first_name", "user.last_name"]
}

列出最近的活动

通过筛选查询活动日志:

{
  "action": "read",
  "limit": 50,
  "sort": ["-timestamp"]
}

按收藏和项目筛选

查看特定项目的所有活动:

{
  "action": "read",
  "collection": "posts",
  "item": "post-uuid-456",
  "sort": ["-timestamp"]
}

按用户筛选

跟踪特定用户的操作:

{
  "action": "read",
  "user": "user-uuid-789",
  "limit": 100
}

按操作类型筛选

查找特定类型的操作:

{
  "action": "read",
  "activityAction": "create",
  "limit": 50
}

删除活动记录

删除活动记录(仅限管理员):

{
  "action": "delete",
  "id": "activity-id-123"
}

活动字段

  • id:活动的唯一标识符
  • action:操作类型(创建、更新、删除、登录、评论、上传、运行)
  • user:执行该操作的用户
  • timestamp:动作发生时
  • ip:用户的IP地址
  • user_agent:浏览器/客户端信息
  • collection:收集执行操作的对象(如适用)
  • item:受影响项目的主键(如适用)
  • comment:与操作关联的可选注释
  • origin:动作来源(API、应用程序等)
  • revisions:相关修订记录

常见用例

审计跟踪

跟踪重要项目的所有更改:

{
  "action": "read",
  "collection": "products",
  "item": "important-product-id"
}

用户监控

查看用户一直在做什么:

{
  "action": "read",
  "user": "user-id",
  "limit": 100
}

安全调查

检查登录活动:

{
  "action": "read",
  "activityAction": "login",
  "limit": 50
}

变更历史

跟踪内容更改:

{
  "action": "read",
  "collection": "articles",
  "activityAction": "update"
}

需求

  • Directus 10.10.0或更高版本
  • 删除操作的管理员权限

发展

# Build the extension
npm run build

# Watch mode for development
npm run dev

# Validate the extension
npm run validate

许可证

麻省理工学院

作者

约书亚·贝蒙德费尔

  • 网站:https://thederf.com
  • 电子邮件:josh@thederf.com

directus扩展mcp活动