io.github.stelis-dev/agent-q
NPM · @STELIS/AGENT-Q · SCANNED AUG 3
Local MCP server for requesting signatures from Agent-Q Firmware.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security34
- Malware scan not yet available for this package.Unverified
- CVE check failed: a known medium-severity CVE affects @hono/node-server 1.19.17, reached via @modelcontextprotocol/sdk > @hono/node-server. A fixed version is available. View diagnostics → Fail
- No install/post-install scripts declared.Pass
- Only part of the dependency tree could be resolved (115 of 119), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency84
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to stelis-dev/agent-q). View diagnostics → Pass
- License check failed: the license (UNLICENSED) isn't a recognized OSI-approved license. See how to fix → Fail
- Actively maintained (last published 37 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability71
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 1297 tokens (~86/item across 15 items; 15 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
- Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage73
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 6% of tool parameters carry a description.Partial
- Structured output schemas are declared (47% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · @stelis/agent-q
claude mcp add stelis-dev-agent-q -- npx -y @stelis/agent-q
codex mcp add stelis-dev-agent-q -- npx -y @stelis/agent-q
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"stelis-dev-agent-q": {
"type": "local",
"command": [
"npx",
"-y",
"@stelis/agent-q"
],
"enabled": true
}
}
} openclaw mcp add stelis-dev-agent-q --command npx --arg -y --arg @stelis/agent-q
mcp_servers:
stelis-dev-agent-q:
command: "npx"
args: ["-y", "@stelis/agent-q"] {
"mcpServers": {
"stelis-dev-agent-q": {
"command": "npx",
"args": [
"-y",
"@stelis/agent-q"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +3
- Stability: unverified → 0.23 ▲ functional
- 2 Aug 26 +36
- GHSA-frvp-7c67-39w9 affects this package: medium ▼ security
- Known CVEs: unverified → fail ▼ security
- Install scripts: unverified → pass ▲ security
- Provenance: unverified → pass ▲ security
- Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
- The attested source repository moved: stelis-dev/agent-q security
- License: unverified → fail ▼ functional
- Security disclosure: fail → unverified ▼ functional
- Maintenance: unverified → pass ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Schema quality: unverified → good ▲ functional
- Dependency health: unverified → partial ▲ functional
- Licence: UNLICENSED functional
- 1 Aug 26 +13
- Tool coverage: unverified → 100 ▲ functional
- 31 Jul 26 −19
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 27 Jul 26 24
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Analysed npm/@stelis/[email protected]
Provenance verified
Ecosystem: npm · Outcome: verified
Reason: verified
- Source repo:
- stelis-dev/agent-q
- Certificate issuer:
- https://token.actions.githubusercontent.com
- Certificate SAN:
- https://github.com/stelis-dev/agent-q/.github/workflows/npm-publish.yml@refs/tags/v0.2.2
- Rekor log index:
- 1970954334
- Predicate type:
- https://slsa.dev/provenance/v1
- Subject digest:
- sha512:e99d6ccdd3c4a3c589b87ed149847d9c6af1a38d5ae4755f6fbd170b062caf74635993c169fba6c10eabe0cce9efa44524eb6fbb29e4e6a7a31f65106
- Discovery method:
- attestation_endpoint
Vulnerabilities 1 finding
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-frvp-7c67-39w9 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N | yes |
Dependencies 115 packages
115 packages in the resolved dependency tree · 99 deprecated · 31 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
connect_device Connect device ~109
Open a communication session with a known Agent-Q Firmware device. Resolves the target device by deviceId, by purpose, or by the default active device. Sends a connect request that requires Firmware-owned device-local approval. Writes a status handshake to candidate USB serial ports while locating the device. Connect is not signing approval and does not authorize signing. Session is held in Agent-Q process memory only.
| Name | Type | Req | Description |
|---|---|---|---|
| clientName | string | — | — |
| deviceId | string | — | — |
| purpose | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| connectedAt | string | yes | — |
| device | object | yes | — |
| deviceId | string | yes | — |
| sessionTtlMs | integer | yes | — |
| source | string | yes | — |
No examples provided.
disconnect_device Disconnect device ~89
End a previously approved Agent-Q Firmware session. Resolves the target device by deviceId, by purpose, or by the default active device. Returns 'not_connected' without contacting Firmware when there is no Agent-Q runtime session. Writes a status handshake to candidate USB serial ports when locating the device. Disconnect does not require physical approval.
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | — | — |
| purpose | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | yes | — |
| reason | string | yes | — |
| source | string | yes | — |
No examples provided.
get_accounts Get accounts ~110
List the public accounts (chain, address, public key) held by a provisioned Agent-Q Firmware device over an approved session. Resolves the target device by deviceId, by purpose, or by the default active device. Requires a prior connect_device approval; returns 'not_connected' without contacting Firmware when there is no Agent-Q runtime session. Read-only: no signing, no private material, and no session id is ever returned.
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | — | — |
| purpose | string | — | — |
No output schema declared.
No examples provided.
get_approval_history Get approval history ~88
Read a bounded page of Firmware-owned approval history over an approved session. This is not on-chain history and is read-only: no raw requests, session ids, private material, PINs, client names, or full policy documents are returned.
| Name | Type | Req | Description |
|---|---|---|---|
| beforeSeq | string | — | — |
| deviceId | string | — | — |
| limit | integer | — | — |
| purpose | string | — | — |
No output schema declared.
No examples provided.
get_capabilities Get capabilities ~103
Read Firmware-authored supported chains, public account schemes, and supported signing methods over an approved session. Resolves the target device by deviceId, by purpose, or by the default active device. Requires a prior connect_device approval; returns 'not_connected' without contacting Firmware when there is no Agent-Q runtime session. signing.authorization is Firmware-authored read-only state and is not a request option.
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | — | — |
| purpose | string | — | — |
No output schema declared.
No examples provided.
get_device_status Get device status ~65
Read live or cached status for a known Agent-Q Firmware device by writing a status handshake to candidate USB serial ports. Resolves the device by deviceId, by purpose, or by the default active device.
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | — | — |
| purpose | string | — | — |
No output schema declared.
No examples provided.
identify_devices Identify devices ~35
Ask discovered Agent-Q Firmware devices to display short identification codes. Writes a status handshake to candidate USB serial ports before sending the identify request.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| activeDeviceId | — | yes | — |
| devices | array | yes | — |
| source | string | yes | — |
No examples provided.
list_devices List devices ~48
List Agent-Q Firmware devices known to Agent-Q, including local label, purpose routing assignments, and any in-memory connection session metadata. Reads from local Agent-Q process state only; does not contact Firmware.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| activeDeviceId | — | yes | — |
| activeDeviceIdsByPurpose | object | yes | — |
| devices | array | yes | — |
| source | string | yes | — |
No examples provided.
policy_get Get policy ~100
Read the Firmware-owned active policy document over an approved session. Resolves the target device by deviceId, by purpose, or by the default active device. Requires a prior connect_device approval; returns 'not_connected' without contacting Firmware when there is no Agent-Q runtime session. Read-only: no policy update, no signing, no private material, and no session id is ever returned.
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | — | — |
| purpose | string | — | — |
No output schema declared.
No examples provided.
policy_propose Propose policy update ~96
Submit a bounded current-schema active-policy proposal to Agent-Q Firmware. Firmware validates the proposal, shows a device-local policy summary review, starts local PIN approval only after device-local Continue, and returns the terminal policy proposal outcome. This is a request path only: Agent-Q and MCP do not store, apply, or decide policy.
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | — | — |
| policy | object | yes | — |
| purpose | string | — | — |
No output schema declared.
No examples provided.
scan_devices Scan devices ~33
Find USB-connected Agent-Q Firmware devices by writing a status handshake to candidate USB serial ports, and report sanitized candidate failure reasons.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| activeDeviceId | — | yes | — |
| devices | array | yes | — |
| failures | array | yes | — |
| source | string | yes | — |
No examples provided.
select_device Select device ~76
Set a previously discovered Agent-Q Firmware device as the default active device, or as the active device for a named routing purpose. 'purpose' is local Agent-Q process routing metadata, not security policy. Updates local Agent-Q process state only; does not contact Firmware.
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | yes | — |
| purpose | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| activeDeviceId | string | yes | — |
| device | object | yes | — |
| purpose | — | yes | — |
| source | string | yes | — |
No examples provided.
set_device_metadata Set device metadata ~71
Set local metadata for a known Agent-Q Firmware device. 'label' is human-readable local metadata, not a security boundary and not device authority. Pass null to clear the label. Updates local Agent-Q process state only; does not contact Firmware.
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | yes | — |
| label | — | yes | — |
| Name | Type | Req | Description |
|---|---|---|---|
| deviceId | string | yes | — |
| label | — | yes | — |
| source | string | yes | — |
No examples provided.
sign_personal_message Sign personal message ~140
Request a Firmware-owned Sui personal-message signature over an approved session. Agent-Q and MCP do not store keys, choose authorization, or make signing decisions. The current Firmware implementation signs this method only in user-confirmed authorization mode; policy authorization mode fails closed.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | — |
| deviceId | string | — | — |
| message | string | yes | — |
| method | string | yes | — |
| network | string | yes | Network identifier for the selected chain and method. Current executable Sui signing accepts mainnet, testnet, devnet, or localnet; Client Core and Firmware validate the value. |
| purpose | string | — | — |
No output schema declared.
No examples provided.
sign_transaction Sign transaction ~134
Request a Firmware-owned transaction signature over an approved session. Agent-Q and MCP do not store keys, choose authorization, or make signing decisions; Firmware uses its local signing authorization mode to select policy authorization or user confirmation and returns signing outcome.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | — |
| deviceId | string | — | — |
| method | string | yes | — |
| network | string | yes | Network identifier for the selected chain and method. Current executable Sui signing accepts mainnet, testnet, devnet, or localnet; Client Core and Firmware validate the value. |
| purpose | string | — | — |
| txBytes | string | yes | — |
No output schema declared.
No examples provided.