Skip to main content
Glama
haoan33

OmniQQ-MCP

by haoan33

deploy_or_update_napcat

Automate NapCat runtime deployment or updates via GitHub releases or local offline packages, and configure OneBot 11 ports. Preview changes first; execute only after user approval.

Instructions

一键自动部署或更新 NapCat 运行时环境 (支持从 GitHub 官方 Release 下载或使用本地离线包解压并自动配置 OneBot 端口)。 ⚠️ 安全规范:首次调用必须保持 confirmed=False 以获取部署预览计划;向用户展示计划并获得明确授权后,再传入 confirmed=True 执行。 :param action: 执行动作类型,'deploy' (部署安装) 或 'update' (更新升级) :param confirmed: 是否已获得用户明确许可 (False 时仅返回预览,True 时真正执行解压/下载) :param use_local_zip_if_available: 部署时若本地存在离线包是否优先使用 :param target_uin: 要自动配置 OneBot 11 端口的 QQ 号 (留空则使用当前默认账号)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionNo执行动作类型,'deploy' (部署安装) 或 'update' (更新升级)deploy
confirmedNo是否已获得用户明确许可 (False 时仅返回预览,True 时真正执行解压/下载)
target_uinNo要自动配置 OneBot 11 端口的 QQ 号 (留空则使用当前默认账号)
use_local_zip_if_availableNo部署时若本地存在离线包是否优先使用

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral burden and does well: it discloses the confirmation workflow, that confirmed=False returns only a preview while True performs real download/extraction, and that local offline packages are preferred when available. It does not cover rollback behavior or exactly how an update mutates an existing installation, so it is not fully exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose, followed by a safety warning and parameter notes. It is efficient but the trailing :param list duplicates the input schema nearly verbatim, which slightly reduces conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a deployment/update tool with no annotations and no output schema, the description supplies the essential behavioral context: the preview/execute confirmation flow, local zip priority, and target_uin purpose. It is largely complete, though it could say more about what happens to an existing NapCat installation during an update.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters in detail. The description repeats the same parameter meanings without adding format, constraints, or examples beyond the schema, which is the baseline 3 case when structured fields do the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: '一键自动部署或更新 NapCat 运行时环境', with explicit modes (deploy/update), download vs local zip, and OneBot port configuration. This clearly distinguishes it from sibling service-control tools like start/stop/restart_napcat_service and check_napcat_environment.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a strong usage protocol: first call must use confirmed=False to get a preview, then after explicit user authorization call with confirmed=True. It does not name alternative sibling tools or state when deployment should be preferred over, for example, checking the environment first, so it stops short of explicit alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.