Skip to main content
Glama
tasqrai

tasqr-mcp

Official
by tasqrai

tasqr-mcp (Python)

ci PyPI

Tasqr MCP 服务器 — 面向 AI 代理的任务状态管理。

作为本地 stdio 进程运行,从 ~/.config/tasqr/credentials 读取你的 API 密钥,并将工具调用代理到 Tasqr Lambda MCP 服务器。你的 MCP 客户端配置不包含任何机密 — API 密钥仅存在于凭据文件中(在 Mac/Linux 上以 0600 权限写入;在 Windows 上则依赖你的配置文件目录的 ACL)。

安装

需要 Python 3.11 或更高版本。

uvx tasqr-mcp        # run once without installing
# or
pip install tasqr-mcp

Related MCP server: tasqr-mcp

MCP 客户端配置

{
  "mcpServers": {
    "tasqr": {
      "command": "uvx",
      "args": ["tasqr-mcp"]
    }
  }
}

凭据

首次运行 — 无需设置。 在终端中运行一次代理:

uvx tasqr-mcp

如果磁盘上没有 API 密钥,它会启动 GitHub 设备流注册:打开浏览器访问 GitHub,将设备代码复制到剪贴板供你粘贴,并且(如果你的账户有多个工作区)询问使用哪个。然后它会为你写入凭据文件。如果你更愿意自己创建,才需要下面的手动步骤。

你的 MCP 客户端永远不会看到机密 — 它只是启动 uvx tasqr-mcp,密钥从以下位置读取:

~/.config/tasqr/credentials   (Mac/Linux)
%APPDATA%\tasqr\credentials   (Windows)
[default]
api_key = tasqr_abc123...

在 Mac/Linux 上,文件以 0600 权限写入(仅所有者可读写);在 Windows 上,它继承你的配置文件目录的 ACL。如果你更愿意从网页获取密钥,可以在 tasqr.ai 注册。

由于注册是交互式的,它仅在 stdin 是 TTY 时运行。如果 MCP 客户端以无头方式启动代理且没有密钥,它会退出并提示你先在终端中运行 uvx tasqr-mcp。

日志

默认关闭日志 — 除非你开启,否则不会向磁盘写入任何内容。启用后,代理会保留一个仅追加的 JSON 行事件日志,仅记录元数据:工具名称和字段名称,绝不记录任务内容,也绝不记录密钥材料。

在凭据文件中开启:

[default]
api_key   = tasqr_abc123...
log_level = info                        # off (default) | info | debug
log_path  = ~/.config/tasqr/tasqr-mcp.log

级别

日志

off (默认)

无 — 不创建文件

info

会话生命周期:dek_loaded、kms_decrypt — 每个会话大约一行

debug

上述内容加上每次工具调用的一行 encrypt/decrypt

没有轮转或大小限制,因此 debug 用于故障排查,不适合长期开启。

环境变量

环境变量优先于凭据文件,凭据文件优先于默认值。

变量

用途

TASQR_PROFILE

使用凭据文件的哪个 [section](默认:default)

TASQR_MCP_URL

指向不同的服务器,例如 http://localhost:8000/mcp

TASQR_LOG

覆盖 log_path

TASQR_LOG_LEVEL

覆盖 log_level

客户端加密 (BYOK)

在任务字段(标题、描述、元数据、输出、备注)到达 Tasqr 服务器之前,在本地进行加密。需要你控制的 AWS KMS 密钥。

将 kms_key_id 添加到你的凭据文件中即可开启 — 无需安装其他内容:

[default]
api_key      = tasqr_abc123...
kms_key_id   = arn:aws:kms:us-east-1:123456789012:key/your-key-id
aws_profile  = default

你的 Tasqr 组织必须已注册客户端 BYOK。 启动时,代理会询问服务器你的组织使用哪种模式。如果组织是服务器管理的,它会拒绝启动而不是加密 — 否则服务器会对你的密文进行二次加密,导致数据对仪表板、REST API 和任何其他代理不可读,并且如果你丢失了 KMS 密钥,数据将无法恢复。错误信息会告诉你需要修复哪个配置文件。

一旦注册,代理会获取或生成数据加密密钥 (DEK),用 KMS 包装它,并将包装后的密钥存储在 Tasqr API 中。后续运行会通过一次 KMS 调用解包缓存的 DEK。所有 AES-256-GCM 加密都在内存中完成 — 明文 DEK 永远不会离开进程。

每个密文还额外绑定到其上下文:GCM 关联数据将每个加密值绑定到你的组织、其任务以及写入的字段。移动到任何其他位置(不同字段、任务或组织)的 blob 会直接解密失败,而不是在错误的位置解密。为了实现这一点,代理会自行生成每个新任务的 id,并在创建调用中发送。

有关完整的设置指南,请参阅客户端加密指南。

本地开发

pip install -e ".[dev]"
pytest
tasqr-mcp --version

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables LLM agents to securely use credentials like passwords and API keys without exposing them in the context window, through encrypted storage and proxy-based injection.
    20 npm
    2
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to manage task state through MCP, including creating, updating, and tracking tasks, with support for client-side encryption and secure local credential storage.
    381 npm
    MIT
  • A
    license
    C
    quality
    C
    maintenance
    Enables AI agents to securely store and manage encrypted secrets locally while using them indirectly through environment-variable injection or file writes, so plaintext values never enter the agent's context.
    8
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to manage task state over MCP, including statuses, dependencies, leases, and versioning, with a token-efficient wire format and SQLite storage.
    MIT