This help page explains how to use the write features of the cryptact MCP server.
Table of Contents:
1. Introduction
The cryptact MCP server now supports write operations. You can complete tasks such as editing transaction data, uploading files, and setting prices directly through chat with AI agents like Claude.
For instructions on connecting to the MCP server (integration setup with Claude and ChatGPT), please refer to the following help page.
When using the MCP write features, please always verify that the operations and results are correct. cryptact is not responsible for any issues caused by incorrect inputs or unintended operations, so please be aware of this in advance.
Please also note that the output may not match the example prompts depending on your AI model and the assistant's behavior.
2. Use Cases
Uploading Transaction History Files
Via Claude, you can upload transaction history CSV files downloaded from exchanges to cryptact. Simply ask the AI to handle the files needed for profit/loss calculation, and it will manage everything from upload to completion in one go.
Recommended for:
- Users who want to upload transaction history from exchanges
- Users unsure which files to upload and where
- Users who want to complete profit/loss calculations using Claude
| Example Prompt | Please upload the Coinbase trades file to cryptact. |
Method ① Add files directly
Method ② Browse folders to add
Note: Please specify which exchange's transaction history you are uploading. If the exchange name is unclear, processing may fail or a timeout may occur.
【Related Help Page】
How to Upload Transaction History
Identifying and Resolving Insufficient Positions
When multiple insufficient positions occur, Claude analyzes the shortage via MCP starting from the oldest transactions to identify the missing transaction data. The entire workflow -- generating a custom file, uploading it, and recalculating -- is completed in a single conversation.
*Transaction history with insufficient positions is excluded from profit/loss calculations. Be sure to resolve these shortage.
*Please check the missing quantity. If you notice that transaction history from exchanges or wallets was not imported, please import the actual transaction history to resolve the insufficient positions rather than using a custom file. If you truly cannot recall which history is missing and need to use a custom file, please refer to the guidance on "What Claude can do."
Recommended for: Users with many position shortages before tax filing who don't know where to start. Users who don't have all the old transaction history CSVs on hand.
What Claude can do: Investigate insufficient positions from oldest transactions → Identify missing transactions → Generate a custom CSV file → Upload the file → Recalculate (all automated)
| Example Prompt | There are insufficient positions in cryptact. Review transactions oldest-first and estimate the cause. For each insufficient positions, create a custom file recording the acquisition at market value at that time, and upload it as a User.Custom file to resolve it. Use the designated sample file as a template. Ask me if anything is unclear. |
Notes:
- Currently, the MCP write feature cannot add new transaction history, so custom files must be used to supplement.
- When uploading, specify "User.Custom" as the file ID.
- Please attach the custom file sample when sending the prompt.
- Regarding tax decisions such as how to supplement the missing quantity and what acquisition cost to use, we are unable to provide specific guidance. Please make these decisions yourself or consult a tax accountant as needed.
Example) 2 BTC position shortages occurred.
Step ① Send the prompt and sample file.
Step ② Review the estimated cause and resolution, then proceed if acceptable.
Step ③ Confirm that the insufficient positions have been resolved. You can also confirm the resolution directly in cryptact.
Bulk Resolution of Missing Price Coins (Custom Price Setting)
For minor tokens and wrapped tokens that cryptact cannot automatically retrieve prices for, Claude searches the web for historical market prices and sets them accordingly. This resolves unpriced tokens and completes the profit/loss calculation.
*Transaction history with missing price coins is excluded from profit/loss calculations. Be sure to resolve these.
Recommended for: Users holding minor DeFi tokens, wrapped tokens, or other assets not supported by cryptact's automatic price retrieval, resulting in incomplete profit/loss calculations.
What Claude can do: List all unpriced coins → Research historical market prices via web search → Edit relevant history and input prices → Recalculate (all automated)
| Example Prompt | Please list all coins with missing prices in cryptact, research their market prices, edit the relevant history, and enter the coin prices. Ask me if you have any questions. |
Example) 2 GULD price entries missing.
Step ① Send the prompt → Review the list of coins with missing prices.
Step ② You can confirm that the missing prices have been resolved in cryptact.
Note: Please verify on your own that the retrieved prices are not significantly different from actual values, and confirm the source before applying them.
3. What MCP Can Do
Below is a list of write operations that can be performed via the MCP server.
| Operation | Function | Notes |
|---|---|---|
| Edit existing transaction | transaction_edit |
Update action type, base/quote/fee currency, quantity, price, fee, and date/time. Fields not specified remain unchanged. |
| Exclude transaction from calculation | transaction_exclude |
Exclude a specified transaction from profit/loss calculation. |
| Re-include excluded transaction | transaction_unexclude |
Re-include a previously excluded transaction in calculations. |
| Add exchange API key | exchange_api_key_add |
Register a new API key for automatic synchronization. |
| Upload exchange file | exchange_file_upload |
Upload CSV/statement files via base64 encoding (up to 2MB raw data). |
| Start exchange sync | exchange_sync |
Initiate a sync job for a connected exchange. |
| Cancel sync job | exchange_sync_cancel |
Stop a running sync job by exchange, sub-account, or endpoint. |
| Add DeFi wallet | defi_wallet_add |
Register a wallet address for on-chain transaction tracking. |
| Update DeFi wallet memo | defi_wallet_update |
Update the memo for a registered wallet. |
| Change DeFi transaction classification | defi_edit |
Override the action classification for an individual DeFi transaction. |
| Bulk approve DeFi unidentified transactions | defi_accept_all |
Bulk approve auto-classification proposals by chainFamily. |
| Bulk assign action to risky transactions | defi_mark_risky |
Bulk assign FEEONLY/BONUS etc. to unclassified risky transactions. |
| Bulk mark self-transfers | defi_mark_transfers_self |
Bulk mark unclassified transfers as internal fund movements. |
| Update ledger settings | ledger_update |
Change base currency, cost basis method, timezone, fiscal year, etc. |
| Recalculate ledger | ledger_reprocess |
Trigger a recalculation for the ledger entity. |
| Generate tax report | ledger_download |
Trigger generation of a tax report file. |
| Update language settings | user_settings_update |
Change the display language (en/ja). |
4. What MCP Cannot Do
The following operations are currently not supported via the MCP server. Please log in to your cryptact account and perform these operations directly.
| Unsupported Operation | Reason / Notes |
|---|---|
| Manual addition of transaction history | transaction_edit only supports editing existing transactions. Manual entry is not available. |
| Deleting transaction history | Deletion is not provided. To exclude a transaction from calculations, use the "Exclude" function. |
| Uploading files over 2MB | Due to base64 encoding limitations, large files cannot be uploaded. |
| Deleting wallet connections | defi_wallet_add only supports adding wallets. |
| Deleting API keys | exchange_api_key_add only supports adding. Deleting or updating API connections is not available. |
| Changing plans or billing operations | billing_plan is read-only. |
| Resolving DeFi unidentified transactions | defi_accept_all can only approve transactions proposed by the system. |