io.github.stelis-dev/agent-q
NPM · @STELIS/AGENT-Q · SCANNED SEP 27
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 → Why this is hard to score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 33 of 117 dependencies flagged as unhealthy. 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 92 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability74
- 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 Management90
- Stability observed for 27 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
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 15 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 15 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the io.github.stelis-dev/agent-q MCP server?
io.github.stelis-dev/agent-q runs locally as an npm package, launched with npx -y @stelis/agent-q. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @stelis/agent-q
claude mcp add stelis-dev-agent-q -- npx -y @stelis/agent-q
{
"mcpServers": {
"stelis-dev-agent-q": {
"command": "npx",
"args": [
"-y",
"@stelis/agent-q"
]
}
}
} {
"servers": {
"stelis-dev-agent-q": {
"command": "npx",
"args": [
"-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": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"@stelis/agent-q"
]
}
}
} assistant mcp add stelis-dev-agent-q -t stdio -c npx -a -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.
- 26 Sept 26 +1
- Security disclosure: unverified → fail ▼ functional
- 25 Sept 26 +15
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 24 Sept 26 −2
- Stability: pass → 0.80 functional
- 23 Sept 26 0
- Stability: 0.97 → pass security
- 22 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 19 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 17 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.
- 16 Sept 26 −3
- Stability: pass → 0.77 functional
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 27 Sept 2026 · Analysed npm/@stelis/agent-q@0.2.2
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| 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 |
Background: How many MCP packages publish verified provenance →
Dependencies 117 packages
| Packages resolved | 117 |
|---|---|
| Stale | 33 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
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. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
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.
What is the io.github.stelis-dev/agent-q MCP server?
io.github.stelis-dev/agent-q is an MCP server listed in the public MCP registry as io.github.stelis-dev/agent-q. Local MCP server for requesting signatures from Agent-Q Firmware. This page covers its npm package (@stelis/agent-q).
Is the io.github.stelis-dev/agent-q MCP server safe to use?
io.github.stelis-dev/agent-q scores 88 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 27 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.stelis-dev/agent-q MCP server expose?
io.github.stelis-dev/agent-q exposes 15 tools: scan_devices, identify_devices, select_device, get_device_status, list_devices, and 10 more. Their descriptions and schemas cost roughly 1,297 tokens of context every time the server is loaded.
Is the io.github.stelis-dev/agent-q MCP server still maintained?
io.github.stelis-dev/agent-q is still listed as active in the MCP registry. We last reached this channel on 27 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.stelis-dev/agent-q MCP server under?
io.github.stelis-dev/agent-q declares the UNLICENSED licence, which is not on the OSI-approved list. Read the terms before using it at work, and note this covers the source only, not the cost of any service it calls.