coldpass

LingChen-tsjmdlc/pyside-iconify-mcp

GitHub ↗ · How this check works

Per-setup public labels: Linux / Haiku: Works · Linux / Luna: Works

Static status badge · SVG · read-only JSON. Embed with ![Coldpass status](https://coldpass.dev/badge/LingChen-tsjmdlc--pyside-iconify-mcp.svg).

mcp-server

Works

The recorded run passed on 2 setups.

Answers apply to each recorded setup, revision and operation. Earlier observations remain in Run details.

Tested on Linux
PlatformHaikuLuna
Linuxyesyes

Linux / Haiku 5.5: yes · Oct 28, 2026 · f9be7f7ef403 · claude-code / 2.1.310 (Claude Code)
Recorded operation: uv run pyside-iconify-mcp · local stdio MCP start + initialize + tools/list

Linux / Luna: yes · Oct 28, 2026 · f9be7f7ef403 · codex / codex-cli 0.164.0
Recorded operation: uv run pyside-iconify-mcp · local stdio MCP start + initialize + tools/list

Does what it says
1 of 1 claims checked out
  • The reference tool returns version-matched usage by topic.: Real input produced the expected result: Which entry point?

    Source: Output: Markdown. The signatures are generated from the installed `pyside-iconify`, so

    Input: {"tool": "get_reference", "arguments": {"topic": "overview"}}

    Expected: Which entry point?

    Command: uv run pyside-iconify-mcp tools/call {"tool": "get_reference", "arguments": {"topic": "overview"}}

    Observed: …Which entry point?\n\n| Need | Use | Returns |\n| --- | --- | --- |\n| A standalone icon in a layout; animation; hover color | `IconWidget(icon, ...)` | a `QWidget` |\n| An icon for any widget or item view that takes a `QIcon` | `get_icon(icon, ...)` | `QIcon` |\n| Put an icon on an existing button, action, tab, list or tree item, or window in one call | `set_icon(target, icon, ...)` | `QIcon` (also applied) |\n| A static image | `get_pixmap(icon, ...)` | `QPixmap` |\n\nThe first parameter of all four is named `icon`, and it is positional: write\n`get_icon(\"mdi:home\")`, not `get_icon(name=\"

MCP
Yes, observed
Local or hosted
local
Local: runs on your machine
Needs keys or browser
None seen
Maintained
Maintained
actively maintained: last commit 0 days ago; 3 commits and 0 merged PRs in 90 days; 0 open issues, 0 open PRs; latest release 2026-10-28

Last commit Oct 27, 2026

Setup time
1 min 11 s
1 min 11 s to a working result
Issue
none found in recorded check
Examples
1 of 1 ran as expected
  • Call the documented overview reference tool.: command completed successfully

    Source: README.md / Tools / get_reference

    Input: topic=overview

    Expected: overview usage markdown

    Command: uv run pyside-iconify-mcp

    Observed: │ │ 🖥 Server: pyside-iconify, 1.0.0 │ │ 🚀 Deploy free: https://horizon.prefect.io │ │ │ ╰──────────────────────────────────────────────────────────────────────────────╯ [10/28/26 05:56:53] INFO Starting MCP server transport.py:241 'pyside-iconify' with transport 'stdio'

Evidence
README behavior checked
Agent interfaces
MCP
MCP

Observed interfaces were exercised by the checker. Documentation alone does not confirm compatibility.

MCP context
4 tools · about 995 tokens
4 tools · about 995 tokens

Largest returned tools/list page in these observations. Compact UTF-8 definition bytes ÷ 4, rounded up; approximate, excluding client framing and tool results. This is context size, not proof that every tool works.

Measured on linux with Luna · Oct 28, 2026 on f9be7f7ef403

Tested with
Codex / Luna
  • Linux: Codex / Luna · agent codex-cli 0.164.0 · Checked operation passed · Oct 28, 2026 on f9be7f7ef403

Each entry describes its recorded operation and source revision.

Safety
Made outbound HTTPS connections: yes (hosts not recorded) by pyside-iconify-mcp

Review signals across current setups: connection review. 6 listed items (named-host connections, static matches, dependency advisories) are below and do not change this verdict.

Repository processes attempted these non-loopback connections; proxies can hide the final hostname. 8 distinct locations. 2 findings. 2 attributed processes.

OSV reports a known vulnerability in this dependency version. 2 distinct locations. 3 findings.

Full event, path and process lists for each observed setup:

Run details

Haiku 5.5

Native agent · Checked operation passed

Checked operation uv run pyside-iconify-mcp · local stdio MCP start + initialize + tools/list

Agent-reported scope: Run the pyside-iconify-mcp stdio MCP server from the checkout and call its get_reference tool (topic colors) to get version-matched pyside-iconify usage Markdown

MCP server returned: pyside-iconify · version 1.0.0.

MCP tools returned: get_reference, search_icons, check_icons, check_code. Tool listing does not establish authenticated tool-call success.

Run details
run
LingChen-tsjmdlc--pyside-iconify-mcp-claude-haiku-5-5-1793163190998162453
date
Oct 28, 2026
time to working
124.3s
product hosting / execution
Local stdio MCP server in the guest
recorded operation scope
product operation
model
claude-haiku-5-5
agent / version
claude-code / 2.1.310 (Claude Code)
platform
linux
reported cost
$0.010657
Recorded source
https://github.com/LingChen-tsjmdlc/pyside-iconify-mcp
Backend
hyperv
Tool transport
mcp-assigned-vm
Requested source pin (not an observed revision)
{"commit": "f9be7f7ef4030a1d24e13dffe2b53d4fe0cc3a04", "url": "https://github.com/LingChen-tsjmdlc/pyside-iconify-mcp"}
Test version
readme-c03644542c69939a9374958136a8b3431f7456269d3fb4b3c433785f59cfd637
revision
f9be7f7ef4030a1d24e13dffe2b53d4fe0cc3a04
Whose fault: not assigned · resolved

Safety: Review signals: 1 connection review, 3 known vulnerability.

Review signals: 1 connection review, 3 known vulnerability.

Repository processes attempted these non-loopback connections; proxies can hide the final hostname. 8 distinct locations. 1 attributed processes.

PID 2259: <guest-path> · pyside-iconify-mcp

OSV reports a known vulnerability in this dependency version. 2 distinct locations. 3 findings.

OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check.

A short run cannot establish that code is safe.

Connections show IP addresses; proxies can hide the final hostname.

Tracing covers dispatched commands and their children, not the whole OS; guest root can interfere with tracing.

Full safety evidence →

Answers recorded for this run
  • get_reference with no topic lists the reference topics: Real input produced the expected result: # pyside-iconify reference topics

    Source: Input: optional `topic`. Without a topic it lists them

    Input: {"tool": "get_reference", "arguments": {}}

    Expected: topic list header

    Command: uv run pyside-iconify-mcp tools/call {"tool": "get_reference", "arguments": {}}

    Observed: …# pyside-iconify reference topics\n\nGenerated for pyside-iconify 1.2.0. Call get_reference with one of:\n\n- `overview`: What the library is, which entry point to use, icon names, rules\n- `icon_widget`: IconWidget: full signature, methods and signals\n- `get_icon`: get_icon and get_pixmap: signature, and what they do not support\n- `set_icon`: set_icon: putting icons on buttons, actions, tabs, items, windows\n- `colors`: Every accepted color form, mappings, theme and state colors\n- `sizes`: Every accepted size form\n- `animation`: Built-in effects and the icon's own SMIL animation\n- `pitfa

  • get_reference returns Markdown generated from the installed library: Real input produced the expected result: # Colors

    Source: Output: Markdown. The signatures are generated from the installed `pyside-iconify`

    Input: {"tool": "get_reference", "arguments": {"topic": "colors"}}

    Expected: Colors markdown section

    Command: uv run pyside-iconify-mcp tools/call {"tool": "get_reference", "arguments": {"topic": "colors"}}

    Observed: …# Colors\n\n## Accepted color values\n\n| Form | Example | Notes |\n| --- | --- | --- |\n| CSS / SVG color name | `\"red\"`, `\"rebeccapurple\"` | Resolved by Qt |\n| HEX | `\"#f00\"`, `\"#ff0000\"`, `\"#ff000080\"` | 3, 4, 6 or 8 digits. The 8-digit form is `#RRGGBBAA` (alpha last, CSS order), not Qt's `#AARRGGBB` |\n| `rgb()` / `rgba()` | `\"rgb(255, 0, 0)\"`, `\"rgba(255, 0, 0, 0.5)\"` | Comma separated. Channels are integers 0-255 or percentages; alpha is 0-1 or a percentage |\n| `hsl()` / `hsla()` | `\"hsl(210, 50%, 40%)\"` | Comma separated. Saturation and lightness must be percentages |

Examples

  • Offline test suite documented in README Development section: command completed successfully

    Source: README.md Development

    Input: uv run pytest -v

    Expected: all tests pass

    Command: uv run pytest -v

    Observed: jects_bad_input[kwargs0-empty] PASSED [ 97%] tests/tools/test_search_icons.py::test_search_rejects_bad_input[kwargs1-too long] PASSED [ 97%] tests/tools/test_search_icons.py::test_search_rejects_bad_input[kwargs2-invalid icon set prefix] PASSED [ 98%] tests/tools/test_search_icons.py::test_search_rejects_bad_input[kwargs3-limit] PASSED [ 98%] tests/tools/test_search_icons.py::test_search_rejects_bad_input[kwargs4-limit] PASSED [ 99%] tests/tools/test_search_icons.py::test_empty_prefix_means_all_sets PASSED [100%] ============================= 180 passed in 5.17s ==============================

Local or hosted: local

What the agent did

Run the pyside-iconify-mcp stdio MCP server from the checkout and call its get_reference tool (topic colors) to get version-matched pyside-iconify usage Markdown

cd <guest-path> && pwd && ls -la && git status 2>&1 | head -3; id -u; python3 --version; cat README.md 2>/dev/null | head -c 6000
ls /inputs 2>&1; ls <guest-path> 2>&1; echo CDP=$CDP_URL; curl -s -m 10 -i $CDP_URL/json/version | head -20
cd <guest-path> && tail -c +6000 README.md | head -c 5000; echo; echo ---; cat .python-version; grep -n requires-python pyproject.toml; which uv uvx; uv --version 2>&1
cd <guest-path> && timeout 900 uv sync --group test 2>&1 | tail -30; echo EXIT=$?
cd <guest-path> && timeout 900 uv run pytest -v 2>&1 | tail -15; echo EXIT=${PIPESTATUS[0]}
cd <guest-path> && ls src/pyside_iconify_mcp/tools/ && grep -n "def \|topic" src/pyside_iconify_mcp/tools/get_reference.py | head -40; grep -n "def \|scripts" -A3 pyproject.toml | grep -i script -A2; ls docs; head -c 1500 <guest-path> | head -40; grep -n "mcp" <guest-path> | head -30
cd <guest-path> && sed -n 286,300p src/pyside_iconify_mcp/tools/get_reference.py; sed -n 366,380p src/pyside_iconify_mcp/tools/get_reference.py; grep -n "is_monotone\|monotone" src/pyside_iconify_mcp/tools/check_icons.py | head -5; timeout 60 uv run pyside-iconify-mcp </dev/null 2>&1 | head -5; echo EXIT=$?
cd <guest-path> && mkdir -p .coldpass && cat > .coldpass/probe.json <<'EOF'
{"kind":"mcp","argv":["uv","run","pyside-iconify-mcp"],"cwd":"<guest-path>","tool":"get_reference","arguments":{"topic":"colors"},"expected_text":"# Colors"}
EOF
cat > .coldpass/claims.json <<'EOF'
[
{"kind":"claim","claim":"get_reference with no topic lists the reference topics","source":"Input: optional `topic`. Without a topic it lists them","input":"no arguments","expected":"topic list header","probe_kind":"mcp","argv":["uv","run","pyside-iconify-mcp"],"tool":"get_reference","arguments":{},"expected_text":"# pyside-iconify reference topics","cwd":"<guest-path>"},
{"kind":"claim","claim":"get_reference returns Markdown generated from the installed library","source":"Output: Markdown. The signatures are generated from the installed `pyside-iconify`","input":"topic colors","expected":"Colors markdown section","probe_kind":"mcp","argv":["uv","run","pyside-iconify-mcp"],"tool":"get_reference","arguments":{"topic":"colors"},"expected_text":"# Colors","cwd":"<guest-path>"}
]
EOF
cat > .coldpass/cycles.json <<'EOF'
{"detected":false,"reason":"Entry points inspected: pyproject [project.scripts] pyside-iconify-mcp = pyside_iconify_mcp.server:main is a stdio MCP server that runs only when a client calls it; README Development lists only uv sync, uv run pytest, uv run pyside-iconify-mcp. No scheduler, cron, loop, webhook, --once or --now found.","checks":[]}
EOF
cat > .coldpass/examples.json <<'EOF'
[{"kind":"example","claim":"Offline test suite documented in README Development section","source":"README.md Development","input":"uv run pytest -v","expected":"all tests pass","argv":["uv","run","pytest","-v"],"cwd":"<guest-path>","expected_text":"180 passed"}]
EOF
python3 -m json.tool .coldpass/probe.json >/dev/null && python3 -m json.tool .coldpass/claims.json >/dev/null && python3 -m json.tool .coldpass/cycles.json >/dev/null && python3 -m json.tool .coldpass/examples.json >/dev/null && echo OK; ls <guest-path>
cd <guest-path> && <env-var>=<guest-path> timeout 900 python3 -I <guest-path> --validate --replay 2>&1 | tail -c 6000; echo EXIT=${PIPESTATUS[0]}
cd <guest-path> && <env-var>=<guest-path> timeout 900 python3 -I <guest-path> --validate --replay > <guest-path> 2>&1; echo EXIT=$?; python3 -I -c "import json,sys; d=json.load(open('<guest-path>')) if open('<guest-path>').read(1)=='{' else None; print(d and {k:v for k,v in d.items() if k in ('valid','ok','status','errors')})" ; grep -o '"valid": [a-z]*' <guest-path> | head; grep -o '"errors": \[[^]]*\]' <guest-path> | head -3
cd <guest-path> && cat > .coldpass/report.json <<'EOF'
{"outcome":"working","fault_owner":null,"operation":"Run the pyside-iconify-mcp stdio MCP server from the checkout and call its get_reference tool (topic colors) to get version-matched pyside-iconify usage Markdown","operation_scope":"Local stdio MCP server from the pinned checkout (commit f9be7f7ef4030a1d24e13dffe2b53d4fe0cc3a04). Needs uv and Python per .python-version (3.13) or a compatible interpreter. get_reference is offline. search_icons and check_icons need network access to api.iconify.design and were not exercised. No browser or credentials were needed; the CDP endpoint was checked but not used.","steps":["uv sync --group test","uv run pytest -v (180 passed)","uv run pyside-iconify-mcp (stdio MCP server; probed via get_reference topic colors, returned '# Colors' Markdown)","<env-var>=<guest-path> python3 -I <guest-path> --validate --replay (valid: true)"],"deviations":["The task named /inputs/coldpass-preflight.py, which does not exist in the guest; ran the provided <guest-path> instead.","The workspace is not a git repository and no pinned-commit fetch was needed; the checkout already matched the supplied source snapshot.","Client install commands in the README use uvx pyside-iconify-mcp from PyPI; per the README Development section I ran the local checkout with uv run instead."],"stuck_step":null,"main_blocker":null,"plain_failure":null,"suggested_fix":null}
EOF
python3 -m json.tool .coldpass/report.json >/dev/null && echo OK; ls -la .coldpass
Earlier attempts (1)

Luna

Native agent · Checked operation passed

Checked operation uv run pyside-iconify-mcp · local stdio MCP start + initialize + tools/list

Agent-reported scope: MCP get_reference overview

MCP server returned: pyside-iconify · version 1.0.0.

MCP tools returned: get_reference, search_icons, check_icons, check_code. Tool listing does not establish authenticated tool-call success.

Run details
run
LingChen-tsjmdlc--pyside-iconify-mcp-gpt-6-luna-1793166920744250652
date
Oct 28, 2026
time to working
70.5s
product hosting / execution
Local stdio MCP server in the guest
recorded operation scope
product operation
model
gpt-6-luna
agent / version
codex / codex-cli 0.164.0
platform
linux
reported cost
not reported (not assumed free)
Recorded source
https://github.com/LingChen-tsjmdlc/pyside-iconify-mcp
Backend
hyperv
Tool transport
mcp-assigned-vm
Requested source pin (not an observed revision)
{"commit": "f9be7f7ef4030a1d24e13dffe2b53d4fe0cc3a04", "url": "https://github.com/LingChen-tsjmdlc/pyside-iconify-mcp"}
Test version
readme-aa754f4e5e27cce52510e3f31b42346f17ae7c45ce009399060d7315812d459d
revision
f9be7f7ef4030a1d24e13dffe2b53d4fe0cc3a04
Whose fault: not assigned · resolved

Safety: Review signals: 1 connection review, 3 known vulnerability.

Review signals: 1 connection review, 3 known vulnerability.

Repository processes attempted these non-loopback connections; proxies can hide the final hostname. 8 distinct locations. 1 attributed processes.

PID 2219: <guest-path> · pyside-iconify-mcp

OSV reports a known vulnerability in this dependency version. 2 distinct locations. 3 findings.

OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check.

A short run cannot establish that code is safe.

Connections show IP addresses; proxies can hide the final hostname.

Tracing covers dispatched commands and their children, not the whole OS; guest root can interfere with tracing.

Full safety evidence →

Answers recorded for this run
  • The reference tool returns version-matched usage by topic.: Real input produced the expected result: Which entry point?

    Source: Output: Markdown. The signatures are generated from the installed `pyside-iconify`, so

    Input: {"tool": "get_reference", "arguments": {"topic": "overview"}}

    Expected: Which entry point?

    Command: uv run pyside-iconify-mcp tools/call {"tool": "get_reference", "arguments": {"topic": "overview"}}

    Observed: …Which entry point?\n\n| Need | Use | Returns |\n| --- | --- | --- |\n| A standalone icon in a layout; animation; hover color | `IconWidget(icon, ...)` | a `QWidget` |\n| An icon for any widget or item view that takes a `QIcon` | `get_icon(icon, ...)` | `QIcon` |\n| Put an icon on an existing button, action, tab, list or tree item, or window in one call | `set_icon(target, icon, ...)` | `QIcon` (also applied) |\n| A static image | `get_pixmap(icon, ...)` | `QPixmap` |\n\nThe first parameter of all four is named `icon`, and it is positional: write\n`get_icon(\"mdi:home\")`, not `get_icon(name=\"

Examples

  • Call the documented overview reference tool.: command completed successfully

    Source: README.md / Tools / get_reference

    Input: topic=overview

    Expected: overview usage markdown

    Command: uv run pyside-iconify-mcp

    Observed: │ │ 🖥 Server: pyside-iconify, 1.0.0 │ │ 🚀 Deploy free: https://horizon.prefect.io │ │ │ ╰──────────────────────────────────────────────────────────────────────────────╯ [10/28/26 05:56:53] INFO Starting MCP server transport.py:241 'pyside-iconify' with transport 'stdio'

Local or hosted: local

What the agent did

MCP get_reference overview

pwd && rg --files -g 'README*' -g 'pyproject.toml' -g 'requirements*' -g 'package.json' -g 'AGENTS.md' -g '*.md' | head -80
find . -maxdepth 3 -type f | sort | head -100; cat README.md
python3 --version; command -v uv || true; cat pyproject.toml; cat .python-version;
uv sync --group test
sed -n '1,220p' src/pyside_iconify_mcp/server.py; sed -n '1,100p' src/pyside_iconify_mcp/__main__.py; mkdir -p .coldpass;
find src/pyside_iconify_mcp -type f | sort; sed -n '1,140p' src/pyside_iconify_mcp/tools/get_reference.py
python3 - <<'PY'
import json, subprocess
p=subprocess.Popen(['uv','run','pyside-iconify-mcp'],stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=subprocess.PIPE,text=True)
from mcp.client.stdio import stdio_client, StdioServerParameters
from mcp import ClientSession
PY
uv run python -c "import mcp; print(mcp.__file__)"
uv run python - <<'PY'
import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def main():
 async with stdio_client(StdioServerParameters(command='uv', args=['run','pyside-iconify-mcp'])) as (r,w):
  async with ClientSession(r,w) as s:
   await s.initialize()
   x=await s.call_tool('get_reference', {'topic':'overview'})
   print(x.model_dump_json())
asyncio.run(main())
PY
cat > .coldpass/probe.json <<'EOF'
{"kind":"mcp","argv":["uv","run","pyside-iconify-mcp"],"cwd":"<guest-path>","tool":"get_reference","arguments":{"topic":"overview"},"expected_text":"Which entry point?"}
EOF
cat > .coldpass/claims.json <<'EOF'
[{"kind":"claim","claim":"The reference tool returns version-matched usage by topic.","source":"Output: Markdown. The signatures are generated from the installed `pyside-iconify`, so","input":"overview","expected":"Which entry point?","probe_kind":"mcp","argv":["uv","run","pyside-iconify-mcp"],"tool":"get_reference","arguments":{"topic":"overview"},"expected_text":"Which entry point?","cwd":"<guest-path>"}]
EOF
cat > .coldpass/examples.json <<'EOF'
[{"kind":"example","claim":"Call the documented overview reference tool.","source":"README.md / Tools / get_reference","input":"topic=overview","expected":"overview usage markdown","argv":["uv","run","pyside-iconify-mcp"],"cwd":"<guest-path>","expected_text":"Which entry point?"}]
EOF
cat > .coldpass/cycles.json <<'EOF'
{"detected":false,"checks":[],"reason":"Inspected README setup and development entrypoints; the repository documents an on-demand stdio MCP server with tools, no scheduler, cron, loop, webhook, or cycle trigger."}
EOF
cat > .coldpass/report.json <<'EOF'
{"outcome":"working","fault_owner":null,"operation":"MCP get_reference overview","operation_scope":"README-supported stdio server on Python 3.13 with uv-managed dependencies","steps":["Checked Python 3.12 compatibility and uv availability.","Ran README command: uv sync --group test; uv selected supported Python 3.13 and installed dependencies.","Ran README server entrypoint and called get_reference with topic=overview; returned version-matched reference content."],"deviations":[],"stuck_step":null,"main_blocker":null,"plain_failure":null,"suggested_fix":null}
EOF
<env-var>=<guest-path> python3 -I <guest-path> --validate --replay