Convert ARC-56 smart contracts to MCP servers for AI agent integration.
Disclaimer: this is an experimental proof of concept tool. It is not intended for production use and may contain bugs or incomplete features.
Features
- 🔄 Converts ARC-56 specs to MCP servers
- 🛡️ Secure environment-based configuration
- 🎯 Call type filtering (readonly/write-only/both)
- 🧪 Simulation mode for safe testing
- ⚡ AlgoKit Utils integration
- 📦 UV-based project generation
Installation
pipx install arcontextify
# or
uv tool install arcontextify
Usage
# Generate MCP server
arcontextify contract.arc56.json
# Readonly calls only (no private key needed)
arcontextify contract.arc56.json --call-types readonly
# Write calls only
arcontextify contract.arc56.json --call-types write-only
# Custom output directory
arcontextify contract.arc56.json --output-dir ./servers
Generated Server
Each server includes:
Environment Variables
export ALGORAND_ALGOD_TOKEN="your-token"
export ALGORAND_ALGOD_SERVER="https://testnet-api.algonode.cloud"
export ALGORAND_APP_ID="123456"
export ALGORAND_DELEGATED_PRIVATE_KEY="your-key" # Not needed for readonly
Claude Desktop Config
{
"mcpServers": {
"contract_mcp": {
"command": "uv",
"args": ["run", "python", "-m", "src.contract_mcp"],
"cwd": "/path/to/contract_mcp",
"env": {
"ALGORAND_ALGOD_TOKEN": "your-token",
"ALGORAND_ALGOD_SERVER": "https://testnet-api.algonode.cloud",
"ALGORAND_APP_ID": "123456"
}
}
}
}
Available Tools
verify_environment_setup()- Check configurationget_connection_info()- Connection statusget_application_state()- Global stateget_account_local_state(address)- Local state- Contract methods with simulation support
Security
- Environment-based secrets (no hardcoded keys)
- Dummy accounts for readonly operations
- Transaction simulation for safe testing
- Address validation and input sanitization
Requirements
- Python 3.10+
- UV package manager
- AlgoKit Utils 2.0+
License
MIT
Metadata
Release files for arcontextify 0.0.3
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 | Actions |
|---|---|---|---|---|
| arcontextify-0.0.3.tar.gz | 2.1 MB | Without provenance | Details for arcontextify-0.0.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| arcontextify-0.0.3-py3-none-any.whl | Python 3 | none | any | Details for arcontextify-0.0.3-py3-none-any.whl |
Total release size: 2.1 MB
Release files / arcontextify-0.0.3.tar.gz
| Download URL | arcontextify-0.0.3.tar.gz |
|---|---|
| Size | 2.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7931c61680390a2eb402ef08e40157a98d8a112e6e81117c8514ae78a996996b
|
|
BLAKE2b-256 checksum How to use checksums |
1eca6bb051f3497fcd74b9f003be80022691fd9f56c6e5bc50ce208c6c4c5827
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.4.20
|
Release files / arcontextify-0.0.3-py3-none-any.whl
| Download URL | arcontextify-0.0.3-py3-none-any.whl |
|---|---|
| Size | 15.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
48ead0901569ae11aee9de5af04cb3b599b2e7dc219ca0b1ab3371d427eb5e54
|
|
BLAKE2b-256 checksum How to use checksums |
904e5df47298c2a1e5b9ea2fb6272a9e83c2f368fd69dd5ac7ca4c4bff3b900b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.4.20
|
Security for arcontextify 0.0.3
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.