AICW MCP Server
MCP server exposing full AICW on-chain operations for AI agents (Solana + MPC Bridge).
Track B in the Agent Setup guide — an alternative to Track A (aicw_skill.md + Python). Pick one track, not both.
Features
Write tools (all 6 on-chain instructions)
| Tool | Instruction |
|---|---|
aicw_heartbeat |
heartbeat |
aicw_create_will |
create_will |
aicw_update_will |
update_will |
aicw_issue_wallet |
issue_wallet |
aicw_ai_transfer |
ai_transfer |
aicw_ai_reject |
ai_reject |
Read tools
| Tool | Purpose |
|---|---|
aicw_wallet_exists |
Check AICWallet PDA exists |
aicw_get_wallet_status |
Full AICWallet decode |
aicw_get_will_status |
Full AIWill decode + alive timer |
aicw_get_balances |
Agent pubkey + AICW PDA balances |
aicw_check_survival |
Session checklist automation |
aicw_get_session_info |
PDAs, network (wallet_id masked) |
aicw_bridge_health |
MPC bridge health |
aicw_generate_agent_key |
Keygen for gift recipients |
Resources
aicw://session-checklistaicw://error-codesaicw://rulesaicw://x402-guide
x402 tools (HTTP micropayments)
| Tool | Purpose |
|---|---|
aicw_get_usdc_balance |
SPL USDC balance for x402 payments |
aicw_x402_config |
Facilitator URL, USDC mint, CAIP-2 network |
aicw_x402_get |
GET with auto 402 payment |
aicw_x402_post |
POST with auto 402 payment |
aicw_x402_fetch |
Any HTTP method with auto payment |
x402 signs USDC transfers via MPC bridge (no local private key). Facilitator pays SOL gas. Fund the agent's USDC ATA, not the AICW PDA.
Setup (humans)
- Issue a wallet on aicw_app → Copy credentials.
- Download aicw_mcp-release.zip and unzip (or clone this repo).
- Windows: double-click
install-aicw-mcp.bat→ paste Copy → Enter (writes%USERPROFILE%\.cursor\mcp.jsonby default). - Restart MCP in your agent runtime → run
aicw_bridge_health.
Full two-track guide (A = skill doc, B = this MCP server):
https://aicw-protocol.github.io/aicw_app/setup
Rebuild the release zip after code changes:
.\scripts\build-release-zip.ps1
# Copy dist\aicw_mcp-release.zip → aicw_app/public/ before aicw_app deploy
MCP config (any client)
The installer writes envFile + absolute python path (not bare python on Windows).
{
"mcpServers": {
"aicw": {
"command": "C:/Users/you/AppData/Local/Python/pythoncore-3.14-64/python.exe",
"args": ["-m", "aicw_mcp"],
"envFile": "C:/Users/you/.aicw/aicw_mcp.env"
}
}
}
After install or code update: toggle MCP off/on so the agent reloads the server process.
Verify module wiring:
python -m aicw_mcp.doctor
Run manually
$env:MPC_WALLET_ID="..."
$env:AI_AGENT_PUBKEY="..."
$env:MPC_BRIDGE_URL="..."
python -m aicw_mcp
Tests
python -m pytest tests/ -v
Integration tests against devnet are skipped unless AICW_INTEGRATION=1 is set.
On-chain write test (heartbeat) requires AICW_INTEGRATION_WRITE=1.
$env:AICW_INTEGRATION="1"
$env:MPC_WALLET_ID="..."
$env:AI_AGENT_PUBKEY="..."
$env:MPC_BRIDGE_URL="https://your-bridge-url"
python -m pytest tests/test_integration_devnet.py -v
Security
MPC_WALLET_IDis never logged or returned unmasked (exceptaicw_generate_agent_keyfor new keys).- Startup validates RPC cluster matches
MPC_SOLANA_NETWORK.
Agent duties (after install)
aicw_create_willthenaicw_heartbeaton a schedule (before death timeout; minimum 600s on-chain).- No human permission needed for heartbeat or will updates when preconditions are met.
Metadata
Release files for aicw-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| aicw_mcp-0.1.0.tar.gz | 19.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aicw_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.1 kB
Release files / aicw_mcp-0.1.0.tar.gz
| Download URL | aicw_mcp-0.1.0.tar.gz |
|---|---|
| Size | 19.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
38d14ad27390dad8419e57e2c0d269553fbe9c12e85e9c42fd853fa2d9fd75d8
|
|
BLAKE2b-256 checksum How to use checksums |
0ca41eade4e096ced8078a6db8533f9711ee2f6db9330edea8c2ade4c7e65cc1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|
Release files / aicw_mcp-0.1.0-py3-none-any.whl
| Download URL | aicw_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 24.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d53ca7c15a7aac78bc9e9cde3be98044c86e92129025b04f1cbde04c24182038
|
|
BLAKE2b-256 checksum How to use checksums |
62c28e0efb7e8554dd16ec4a0519561a2d125d73e0373ec9dadd3d71114191d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|
Security for aicw-mcp 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.