ManicTime MCP

A.网 主控程序 基于服务器和Repl的命令应用程序,为AI代理和本地操作员提供对本地的只读访问权限 ManicTime 活动数据:应用程序、文档、网站、屏幕截图和使用模式。
兼容性通知 --该项目是一个独立的整合项目,不隶属于ManicTime或Finkit,也不受其认可。
三种对齐模式
同一应用程序显示三个对齐的表面:
| 模式 | 目的 | 典型命令 |
|---|---|---|
MCP | 向代理客户端提供stdio工具/资源/提示 | dnx -y ManicTimeMcp mcp serve |
CLI | 直接运行一个命令并发出结构化输出 | dotnet run --project src/ManicTimeMcp/ManicTimeMcp.csproj -- timeline list --output:json |
REPL | 通过帮助和发现以交互方式浏览命令图 | dotnet run --project src/ManicTimeMcp/ManicTimeMcp.csproj |
何时使用哪种模式
- 使用
MCP当Claude、Copilot、Codex或其他兼容MCP的客户端应通过stdio调用服务器时。 - 使用
CLI当您需要在本地使用一个直接命令时,特别是用于测试有效负载或排除输出故障。 - 使用
REPL当你想要交互式发现时,--help,或在连接MCP客户端之前探索路线。
启动应用程序
已发布的包
需要 .NET 10+SDK.直接用 dnx:
dnx -y ManicTimeMcp mcp serve这将下载最新发布的包并启动MCP服务器 标准.
本地开发
从源启动MCP服务器:
dotnet run --project src/ManicTimeMcp/ManicTimeMcp.csproj -- mcp serve直接运行一个CLI命令:
dotnet run --project src/ManicTimeMcp/ManicTimeMcp.csproj -- timeline list --output:json启动交互式REPL:
dotnet run --project src/ManicTimeMcp/ManicTimeMcp.csprojdotnet run 要求 -- 分离器,因为它会分裂 dotnet 应用程序自己的命令路径中的启动器参数。MCP客户端JSON配置 不 使用此分隔符是因为它们已经将参数作为显式数组传递。
代理配置
Visual Studio/VS代码(副本)
该包嵌入了 .mcp/server.json 显示。浏览 NuGet.org上的ManicTimeMcp,打开 MCP 服务器 选项卡,并将生成的配置复制到IDE中。
或手动添加到 .vscode/mcp.json:
{
"servers": {
"manictime-mcp": {
"type": "stdio",
"command": "dnx",
"args": ["-y", "ManicTimeMcp", "mcp", "serve"]
}
}
}克劳德代码
claude mcp add manictime-mcp -- dnx -y ManicTimeMcp mcp serve克劳德桌面版
添加 claude_desktop_config.json (%APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"manictime-mcp": {
"command": "dnx",
"args": ["-y", "ManicTimeMcp", "mcp", "serve"]
}
}
}OpenAI Codex命令行界面
codex mcp add manictime-mcp -- dnx -y ManicTimeMcp mcp serve通用MCP JSON配置
{
"mcpServers": {
"manictime-mcp": {
"command": "dnx",
"args": ["-y", "ManicTimeMcp", "mcp", "serve"],
"transportType": "stdio"
}
}
}Repl第一表面
命令和MCP工具
| Repl/CLI命令 | MCP工具 | 说明 |
|---|---|---|
timeline list | timeline_list | 列出可用的ManicTime时间线 |
activity list | activity_list | 特定时间线上的原始活动 |
activity computer-usage | activity_computer-usage | 计算机开/关/空闲/锁定活动 |
activity tags | activity_tags | 用户定义的标签和标记 |
usage applications | usage_applications | 日期范围的应用程序使用情况 |
usage documents | usage_documents | 日期范围的文档使用情况 |
usage websites | usage_websites | 网站使用情况,按小时或每日细分 |
summary daily | summary_daily | 单日结构化摘要 |
summary narrative | summary_narrative | 结构化的“我做了什么?”叙事 |
summary period | summary_period | 多日概览,包括模式和细分 |
screenshot list | screenshot_list | 发现仅包含元数据的屏幕截图 |
screenshot get | screenshot_get | 检索屏幕截图有效载荷 |
screenshot crop | screenshot_crop | 从屏幕截图中裁剪感兴趣的区域 |
screenshot save | screenshot_save | 在MCP客户端根目录中保存屏幕截图 |
workspace init | workspace_init | 为没有本机根的客户端初始化软根 |
资源
| 资源URI | Repl/CLI命令 | 说明 |
|---|---|---|
manictime://resource/config | resource config | 主动ManicTime配置和解析数据目录 |
manictime://resource/timelines | resource timelines | 可用时间线作为资源有效载荷 |
manictime://resource/health | resource health | 服务器运行状况和数据库状态 |
manictime://resource/guide | resource guide | AI模型和操作员的首次使用指南 |
manictime://resource/environment | resource environment | 设备和操作系统信息 |
manictime://resource/data-range | resource data-range | 可用数据日期边界 |
提示
| Repl/CLI提示 | MCP提示 | 说明 |
|---|---|---|
prompt daily-review | prompt_daily-review | 总结我约会的活动 |
prompt weekly-review | prompt_weekly-review | 总结一个多日的时段 |
prompt screenshot-investigation | prompt_screenshot-investigation | 调查日期时间窗口内发生的事情 |
工作区和屏幕截图保存工作流
screenshot save 仅在MCP客户端根目录内写入。
- 如果MCP客户端支持本地根,
screenshot save直接使用它们。 - 如果客户端不支持本机根,请调用
workspace init {path}首先建立 软根 对于会话,请致电screenshot save. workspace init是会话范围的MCP帮助程序。它主要用于代理工作流,而不是作为CLI模式下本地文件系统路径的替代品。
看 docs/modes-and-workspaces.md 以端到端为例。
支持范围
- 支持: 带本地存储的ManicTime Windows桌面(
ManicTimeReports.db). - 不支持(v1): ManicTime服务器部署、非Windows客户端、以服务器为中心的收集器。
- 运输: 仅限stdio。
从源头构建
dotnet restore src/ManicTimeMcp.slnx
dotnet build src/ManicTimeMcp.slnx -warnaserror
dotnet test --solution src/ManicTimeMcp.slnx
dotnet pack src/ManicTimeMcp.slnx -c Release看 开始.md 先决条件和本地使用,以及 代理商.md 工程规则。
贡献
- 阅读
spec/README.md了解工作流规范。 - 选择一个工作流并仅实施该范围。
- 看
AGENTS.md用于构建命令、质量规则和约束。
许可证
麻省理工学院
