unarchive_wallets
Restores archived wallets by processing a list of wallet names, enabling access to stored data and operations within the Armor Crypto MCP blockchain ecosystem.
Instructions
Unarchive wallets.
Expects a list of wallet names, returns a list of WalletArchiveOrUnarchiveResponse.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| unarchive_wallet_requests | Yes |
Implementation Reference
- armor_crypto_mcp/armor_mcp.py:306-320 (handler)The main handler function decorated with @mcp.tool(), implementing the unarchive_wallets tool by calling the armor_client.@mcp.tool() async def unarchive_wallets(unarchive_wallet_requests: UnarchiveWalletRequestContainer) -> List[WalletArchiveOrUnarchiveResponse]: """ Unarchive wallets. Expects a list of wallet names, returns a list of WalletArchiveOrUnarchiveResponse. """ if not armor_client: return [{"error": "Not logged in"}] try: result: List[WalletArchiveOrUnarchiveResponse] = await armor_client.unarchive_wallets(unarchive_wallet_requests) return result except Exception as e: return [{"error": str(e)}]
- Input container schema for the list of unarchive wallet requests used by the handler.class UnarchiveWalletRequestContainer(BaseModel): unarchive_wallet_requests: List[UnarchiveWalletsRequest]
- Pydantic schema for a single unarchive wallet request.class UnarchiveWalletsRequest(BaseModel): wallet: str = Field(description="Name of the wallet to unarchive")
- Helper method in ArmorWalletAPIClient that makes the API POST request to unarchive wallets.async def unarchive_wallets(self, data: UnarchiveWalletsRequest) -> List[WalletArchiveOrUnarchiveResponse]: """Unarchive the wallets specified in the list.""" # payload = json.dumps([{"wallet": wallet_name} for wallet_name in data.wallet_names]) payload = data.model_dump(exclude_none=True)['unarchive_wallet_requests'] return await self._api_call("POST", "wallets/unarchive/", payload)
- Response schema for wallet archive/unarchive operations.class WalletArchiveOrUnarchiveResponse(BaseModel): wallet_name: str = Field(description="name of the wallet") message: str = Field(description="message of the operation showing if wallet was archived or unarchived")