> For the complete documentation index, see [llms.txt](https://timechain.gitbook.io/neucron-mcp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://timechain.gitbook.io/neucron-mcp/tools/asset-issuance.md).

# asset issuance

Tools for registering and deploying Asset21 security tokens (STAS), onboarding token customers, and performing token lifecycle operations.

These tools cover the **Asset Issuance** section of the Neucron Console — security token management on the BSV blockchain.

## `neucron_create_security_token`

**Register and deploy an Asset21 security token (STAS) on-chain.**

Creates a new security token on the Neucron Asset21 platform and optionally deploys it to the blockchain. Handles both the registration step (defining token properties) and the on-chain deployment.

| Parameter    | Type    | Description                                             |
| ------------ | ------- | ------------------------------------------------------- |
| `businessId` | string  | Business ID                                             |
| `teamId`     | string  | Team ID (optional)                                      |
| `walletID`   | string  | Issuing wallet (defaults to first business wallet)      |
| `assetID`    | string  | Deploy an already-registered asset (skips registration) |
| `deploy`     | boolean | Deploy on-chain after registration (default: `true`)    |
| `register`   | object  | Token registration payload (name, symbol, supply, etc.) |

Either `assetID` (for deployment only) or `register` (for new token registration) is required.

**Returns:** Asset ID, deployment transaction ID, and token metadata.

## `neucron_create_asset21_customer`

**Onboard an Asset21 customer — create a customer request and auto-approve.**

Registers a new customer for a specific security token. Creates a CUSTOMER request on the Asset21 platform and optionally auto-approves it so the customer can receive and hold tokens.

| Parameter        | Type    | Description                                         |
| ---------------- | ------- | --------------------------------------------------- |
| `businessId`     | string  | Business ID                                         |
| `teamId`         | string  | Team ID (optional)                                  |
| `assetId`        | string  | Security token asset ID                             |
| `requestDetails` | object  | Customer details (name, address, etc.)              |
| `autoApprove`    | boolean | Auto-approve after creation (default: `true`)       |
| `requestId`      | string  | Approve an existing request instead of creating one |
| `loadCustomers`  | boolean | Return refreshed customer list after onboarding     |

**Returns:** Customer request ID, approval status, and optional customer list.

## `neucron_security_token_operations`

**Perform Asset21 core token operations: mint, burn, blacklist, freeze, pause, resume, and undo actions.**

A comprehensive token management tool for all post-deployment operations on a security token.

| Action        | Description                                          |
| ------------- | ---------------------------------------------------- |
| `MINT`        | Issue new tokens to a customer address               |
| `BURN`        | Redeem (destroy) tokens                              |
| `BLACKLIST`   | Block an address from holding or transferring tokens |
| `UNBLACKLIST` | Remove an address from the blacklist                 |
| `FREEZE`      | Freeze tokens at a specific address                  |
| `UNFREEZE`    | Unfreeze tokens at a specific address                |
| `PAUSE`       | Pause all token transfers globally                   |
| `RESUME`      | Resume token transfers after a pause                 |

| Parameter         | Type    | Description                                         |
| ----------------- | ------- | --------------------------------------------------- |
| `businessId`      | string  | Business ID                                         |
| `teamId`          | string  | Team ID (optional)                                  |
| `assetId`         | string  | Security token asset ID                             |
| `action`          | string  | One of the actions above                            |
| `requestDetails`  | object  | Operation-specific details (amount, address, etc.)  |
| `autoApprove`     | boolean | Auto-approve the request (default: `true`)          |
| `requestId`       | string  | Approve an existing request instead of creating one |
| `syncTransaction` | object  | Sync a transaction by txid                          |
| `getAddressState` | object  | Check the state of a specific address               |

**Example — mint tokens**

```json
{
  "businessId": "<business-id>",
  "assetId": "<asset-id>",
  "action": "MINT",
  "requestDetails": {
    "amount": 1000,
    "address": "<customer-address>"
  },
  "autoApprove": true
}
```

**Returns:** Request ID, approval status, and operation result.

## Typical token lifecycle

{% stepper %}
{% step %}

## neucron\_create\_security\_token

register and deploy token
{% endstep %}

{% step %}

## neucron\_create\_asset21\_customer

onboard token holders
{% endstep %}

{% step %}

## neucron\_security\_token\_operations

mint tokens to customers
{% endstep %}

{% step %}

## neucron\_security\_token\_operations

freeze / blacklist / burn as needed
{% endstep %}
{% endstepper %}
