Repository navigation
Releases: Aicent-Stack/iqa-mcp
Release list
iqa-mcp 1.0.2 - MCP tool annotations
All four tools now carry MCP tool annotations (readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=false) - the contract stated in machine-readable form: pure local computation, no side effects, deterministic, no external entities. Directory compatibility per the M8ven Trust Index finding. Listed and Verified on M8ven: https://m8ven.ai/mcp/aicent-stack/iqa-mcp
iqa-mcp 1.0.1 — self-test transport fix
1.0.0 shipped with a layout-dependent self-test (hardcoded python server.py). 1.0.1 fixes it: test_mcp now resolves the server in order IQA_MCP_CMD override -> ./server.py (source checkout) -> installed iqa-mcp console script, and ships inside the wheel — run python -m test_mcp from anywhere. No server code changes.
iqa-mcp 0.1.0 — first public release
First public release of iqa-mcp — the IQA attestation primitives (derived intent addressing + AE-128 envelope verification) as Model Context Protocol tools. Offline, fail-closed, stateless.
Tools
derive_route_shard—SHA-256(authority)[0:16]hex; the derived, action-independent intent address. No lookup, no registry, no network call.parse_envelope— structural decode of one AE-128 frame (128 bytes); fails closed on every layout rule of the companion draft.verify_envelope— constant-time HMAC-SHA256 over the whole 128-byte frame with the attestation field zeroed, plus the lease check. REJECT is a result, not an error.published_vector— the published AE128-VECTOR-1 (authority, test key, frame hex) for byte-for-byte self-test.
Install
pip install iqa-mcp==0.1.0
# or from source:
pip install "iqa-org>=1.3.1" "mcp>=2.0"
python server.py # stdio transportSelf-test
python test_mcp.py
# [PASS] 1-4 · tools, derivation, vector, parse
# [PASS] 5 · verify_envelope -> [PASS] radiant · nonce 1
# [PASS] 6 · tampered frame -> REJECT (HMAC mismatch)
# [PASS] 7 · malformed hex -> REJECT
# ALL 7/7 PASSTest 6 is the point: flip one byte of the standing field and the frame dies — fail-closed, over the wire.
Provenance
- Wraps the published iqa-org 1.3.1 reference implementation — four registries, byte-exact vectors, offline self-test.
- AE128-VECTOR-1 per the companion draft, sec. 6.
- Schemes: draft-li-rttp-iqa-addressing (Independent Submission, in review).
- Public record: iqa.org/brief · Tool page: iqa.org/MCP · Live demos: Stack Compare · Delegation Stress Test
Notes
- MCP 2.x SDK, stdio transport, Python ≥ 3.11.
- Stateless: no key storage, no network, no accounts. The organ key is passed per call by the client and never persisted.
- Assets attached below are the exact artifacts published to PyPI (
iqa_mcp-0.1.0-py3-none-any.whl,iqa_mcp-0.1.0.tar.gz).