راه‌اندازی MCP

نصب و پیکربندی سرور MCP آیرون‌والت (IronWallet) برای Cursor، Claude Code، ChatGPT و سایر کلاینت‌های MCP.

سرور MCP آیرون‌والت (@ironwallet/mcp-server) به ایجنت‌های هوش مصنوعی یک کیف پول کریپتو غیرامانی (non-custodial) روی کامپیوتر شما می‌دهد. عبارت بازیابی (Seed phrase) به صورت محلی تولید و رمزنگاری می‌شود — این عبارت هرگز از این دستگاه خارج نمی‌شود و از طریق ایجنت، مدل زبانی (LLM) یا بک‌اندهای آیرون‌والت عبور نمی‌کند. ایجنت‌ها می‌توانند موجودی را بررسی کنند، کدهای QR واریز را نمایش دهند، توکن‌ها را انتقال دهند و در ۱۲ شبکه سواپ انجام دهند: اتریوم، BSC، پالیگان، بیس، آربیتروم، آپتیمیزم، اولنچ، ترون، بیت‌کوین، سولانا، XRP و TON.

رابط کاربری تأیید برای هر تراکنش وجود ندارد — به محض اینکه از ایجنت بخواهید مبلغی را ارسال یا سواپ کند، می‌تواند بدون پرسش مجدد آن را امضا و پخش (Broadcast) کند. از یک کیف پول داغ (Hot wallet) اختصاصی با موجودی محدود استفاده کنید و هرگز از کیف پول اصلی خود استفاده نکنید.

نیازمندی‌ها: Node.js 20+ (npx). فقط دسکتاپ / stdio.

ویژگی‌ها

امضای محلی و غیرامانی

عبارات بازیابی به صورت رمزنگاری‌شده روی میزبان باقی می‌مانند (دسترسی فایل فقط برای مالک). تراکنش‌ها روی این دستگاه امضا می‌شوند؛ هیچ ابزاری عبارت بازیابی را دریافت یا بازنمی‌گرداند.

کیف پول‌ها در مرورگر محلی

کیف پول‌ها را با create_wallets ایجاد کنید (که یک backup_url برمی‌گرداند)، یا از طریق open_wallet_manager وارد و پشتیبان‌گیری کنید — یک صفحه لوپ‌بک در 127.0.0.1 که پس از ۱۵ دقیقه عدم فعالیت بسته می‌شود. اسرار فقط در آن صفحه مرورگر ظاهر می‌شوند، نه در چت.

انتقال با تخمین کارمزد

estimate_transfer کارمزد را بدون پخش تراکنش پیش‌نمایش می‌کند؛ send_transfer به صورت محلی امضا و ارسال می‌کند؛ get_operation_status نتیجه را بررسی می‌کند. سرور ممکن است مبلغ را کمی کاهش دهد تا کارمزد در موجودی جا شود — پاسخ نشان می‌دهد که چه زمانی این اتفاق افتاده است.

سواپ‌های مبتنی بر کاتالوگ

list_swap_networks و list_swap_assets کاتالوگ خرید/فروش را ارائه می‌دهند تا ایجنت هرگز آدرس توکن‌ها را از خود نسازد. estimate_swap قیمت‌گذاری می‌کند، execute_swap روی یک قیمت جدید اجرا می‌کند، get_swap_status وضعیت را بررسی می‌کند.

کدهای QR واریز

get_deposit_qr یک فایل PNG برای چت به همراه یک qr_url محلی به عنوان پشتیبان برمی‌گرداند.

محدودیت‌های اختیاری هزینه

سیاست هر کیف پول از طریق set_wallet_policy: readOnly، maxPerTxUsd و لیست سفید گیرندگان انتقال. به صورت پیش‌فرض غیرفعال است؛ هم برای ارسال و هم برای سواپ اعمال می‌شود. IW_READ_ONLY=true کل سرور را فقط‌خواندنی می‌کند.

نصب

گزینه ۱: npx (توصیه شده)

از npx برای اجرای سرور بدون نصب سراسری استفاده کنید. این کار تضمین می‌کند که همیشه از آخرین نسخه استفاده می‌کنید.

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

اولین اجرا ممکن است حدود ۳۰ ثانیه طول بکشد تا وابستگی‌ها نصب شوند. اگر کلاینت MCP شما با وقفه مواجه شد، دستور را یک بار در ترمینال اجرا کنید تا کش گرم شود، سپس دوباره متصل شوید.

گزینه ۲: نصب سراسری

پکیج را به صورت سراسری برای شروع سریع‌تر نصب کنید، سپس ironwallet-mcp را اجرا کنید.

npm install -g @ironwallet/mcp-server@latest

راهنماهای راه‌اندازی

فقط برای دسکتاپ

هر کلاینت دارای یک URL ثابت اختصاصی است (برای مثال /ai/introduction/vscode/). تمام دستورات نصب زیر نیز در این صفحه قرار دارند — بدون تب، و بدون هیچ چیز پنهان پشت کلیک‌ها.

Cursor

توصیه‌شده‌ترین

توصیه‌شده‌ترین

با نسخه رایگان به خوبی کار می‌کند، نصب آسان، بهترین تجربه

باز کردن در Cursor

یک بار نصب کنید. پس از آن، ابزارهای کیف پول در هر چت در دسترس خواهند بود. همچنین می‌توانید این را در ~/.cursor/mcp.json کپی کرده و Cursor را ری‌استارت کنید.

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

پس از نصب، Cursor را دوباره بارگذاری کنید تا PATH شامل npx باشد.

صفحه مستقل برای Cursor — یک درخواست HTTP فقط این راهنما را برمی‌گرداند.

Claude Code

نیاز به سطح تخصصی بالاتر

با حالت Code به خوبی کار می‌کند، حالت Chat بسیار محدود است

باز کردن در Claude Code

این دستورات را به ترتیب اجرا کنید:

1claude plugin marketplace add ironwallet/ironwallet-agent-kit
2claude plugin install ironwallet-mcp@ironwallet

پس از نصب پلاگین، حدود ۴۵ ثانیه صبر کنید و یک چت جدید شروع کنید تا ابزارها بارگذاری شوند.

یا Claude Code را مستقیماً به سرور stdio هدایت کنید:

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

صفحه مستقل برای Claude Code — یک درخواست HTTP فقط این راهنما را برمی‌گرداند.

VS Code

بالاترین سطح تخصصی

نیاز به پلاگین‌های اضافی با نسخه پولی مدل‌های هوش مصنوعی دارد

باز کردن در VS Code

VS Code را باز کرده و سرور MCP محلی را ثبت می‌کند. همچنین می‌توانید این را به تنظیمات MCP در VS Code (کاربر یا فضای کاری) اضافه کنید.

1{
2 "mcp": {
3 "servers": {
4 "ironwallet": {
5 "type": "stdio",
6 "command": "npx",
7 "args": ["-y", "@ironwallet/mcp-server"]
8 }
9 }
10 }
11}

صفحه مستقل برای VS Code — یک درخواست HTTP فقط این راهنما را برمی‌گرداند.

ChatGPT

راه‌اندازی آسان - نیاز به ChatGPT

نسخه رایگان بسیار محدود است، نسخه پولی بهتر کار می‌کند

باز کردن در ChatGPT

این دستورات را به ترتیب اجرا کنید، سپس دوباره بارگذاری کنید تا ابزارهای MCP در دسترس باشند.

1codex plugin marketplace add ironwallet/ironwallet-agent-kit
2codex plugin add ironwallet-mcp@ironwallet

یا ChatGPT را مستقیماً به سرور stdio هدایت کنید:

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

صفحه مستقل برای ChatGPT — یک درخواست HTTP فقط این راهنما را برمی‌گرداند.

سایر کلاینت‌ها

از انتقال stdio استفاده کنید. کلاینت MCP خود را به این آدرس هدایت کنید:

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

صفحه مستقل برای سایر کلاینت‌ها — یک درخواست HTTP فقط این راهنما را برمی‌گرداند.

اولین اجرا و راه‌اندازی کیف پول

هیچ ورود به سیستم یا حسابی وجود ندارد. در اولین اجرا، سرور اسرار محلی خود را تولید می‌کند — یک کلید API رله، یک رمز عبور برای محافظت از کلیدها (keystore) و یک شناسه دستگاه — در مسیر ~/.ironwallet-mcp/ با دسترسی فقط برای مالک. نیازی به پیکربندی نیست.

برای شروع استفاده از کیف پول:

1
رضایت. قبل از ایجاد یا وارد کردن کیف پول، ایجنت سلب مسئولیت MCP را در چت نمایش می‌دهد و پذیرش شما را ثبت می‌کند (accept_mcp_consent)، یا شما در مدیریت کیف پول روی ادامه کلیک می‌کنید.
2
ایجاد یا وارد کردن. create_wallets نام و آدرس‌های کیف پول به همراه یک backup_url را برمی‌گرداند — آن را در مرورگر خود باز کنید تا عبارت بازیابی را مشاهده و پشتیبان‌گیری کنید. برای وارد کردن کیف پول موجود یا پشتیبان‌گیری بعدی، از open_wallet_manager استفاده کنید. عبارت بازیابی فقط در صفحه مرورگر محلی تایپ یا نمایش داده می‌شود، نه در چت.
3
شارژ کیف پول. از ایجنت یک کد QR واریز (get_deposit_qr) یا یک آدرس (list_wallets) بخواهید و مقدار کمی ارسال کنید. موجودی را محدود نگه دارید — این یک کیف پول داغ است.

داده‌ها روی دیسک

سرور وضعیت خود را در ~/.ironwallet-mcp/ نگه می‌دارد (قابل تغییر با IW_KEYSTORE_DIR):

keystore رمزنگاری‌شده با عبارت‌های بازیابی کیف پول شما،

رمز عبور محافظت از کلیدها، کلید API رله و شناسه دستگاه،

لاگ‌های تشخیصی در logs/ (مواد بازیابی هرگز لاگ نمی‌شوند).

هشدار: این دایرکتوری را برای «بازنشانی» سرور حذف نکنید.

این دایرکتوری حاوی کلیدهای رمزنگاری‌شده وجوه شماست. اگر آن را بدون پشتیبان‌گیری از عبارت بازیابی در مدیریت کیف پول حذف کنید، وجوه از دست می‌رود. پشتیبان شما عبارت بازیابی است، نه این فایل‌ها.

هر کسی که به فایل‌های keystore و رمز عبور محافظت از آن دسترسی داشته باشد، کنترل وجوه را در دست دارد، بنابراین با این دایرکتوری به عنوان داده‌های حساس رفتار کنید.

متغیرهای محیطی

اکثر کاربران نیازی به تنظیم متغیرهای محیطی ندارند. سرور در اولین اجرا هر آنچه نیاز دارد را تولید و ذخیره می‌کند. موارد زیر برای استفاده‌های پیشرفته در دسترس هستند:

متغیر
توضیحات
پیش‌فرض
IW_READ_ONLY
رد کردن send_transfer و execute_swap در سطح کل فرآیند. متمایز از policy.readOnly در سطح هر کیف پول
false
IW_KEYSTORE_DIR
دایرکتوری keystore
~/.ironwallet-mcp
IW_PASSPHRASE
بازنویسی رمز عبور محافظت از keystore
generated locally
IW_RELAY_API_KEY
بازنویسی کلید API رله
generated UUID
IW_HTTP_TIMEOUT_MS
تایم‌اوت کلی HTTP
15000
IW_HTTP_FORWARD_TIMEOUT_MS
تایم‌اوت برای فراخوانی‌های نوع پخش (broadcast). تایم‌اوت کلاینت همیشه به معنای شکست عملیات نیست — وضعیت را بررسی کنید
60000
IW_LOG_ENABLED
تشخیص‌های JSONL به یک فایل لاگ (0 برای غیرفعال کردن)
1
IW_LOG_LEVEL
debug / info / warn / error
info

امنیت

عبارات بازیابی هرگز این دستگاه را ترک نمی‌کنند. آن‌ها در حالت استراحت رمزنگاری شده‌اند و هرگز در نتایج ابزار، چت ایجنت، لاگ‌ها یا درخواست‌های بک‌اند ظاهر نمی‌شوند. هیچ ابزاری عبارت بازیابی را دریافت یا بازنمی‌گرداند — وارد کردن و پشتیبان‌گیری فقط در مرورگر محلی انجام می‌شود.

ایجنت می‌تواند وجوه را بدون پرسش مجدد جابجا کند. هیچ رابط کاربری تأیید برای هر تراکنش وجود ندارد؛ پیام چت شما همان مجوز است. انتقالات و سواپ‌ها پس از پخش غیرقابل بازگشت هستند.

محدودیت‌های اختیاری. سیاست هر کیف پول (readOnly، maxPerTxUsd، لیست سفید گیرندگان) از طریق set_wallet_policy و IW_READ_ONLY=true در سطح سرور. هر دو به صورت پیش‌فرض غیرفعال هستند.

فقط کیف پول داغ. کیف پول اصلی یا پس‌انداز خود را وارد نکنید. هر کسی که به keystore و رمز عبور آن دسترسی داشته باشد، کنترل وجوه را در دست دارد؛ عبارت بازیابی لو رفته قابل ابطال نیست.

تایم‌اوت به معنای شکست نیست. قبل از تلاش مجدد برای ارسال یا سواپ، get_operation_status / get_swap_status را بررسی کنید.

تمام درخواست‌های بک‌اند از HTTPS استفاده می‌کنند؛ فایل‌های اسرار محلی از دسترسی فقط برای مالک استفاده می‌کنند (Unix 0600، NTFS ACL در ویندوز).

افشای آسیب‌پذیری: SECURITY.md.

تست

سرور را مستقیماً با استفاده از بازرس MCP تست کنید. این کار یک رابط کاربری وب تعاملی باز می‌کند که در آن می‌توانید فراخوانی ابزارها را بدون دستیار هوش مصنوعی تست کنید.

npx @modelcontextprotocol/inspector npx -y @ironwallet/mcp-server

عیب‌یابی

کلاینت MCP در اولین اجرا با وقفه مواجه می‌شود

npx پکیج را در اولین اجرا دانلود می‌کند که ممکن است حدود ۳۰ ثانیه طول بکشد.

  • دستور npx -y @ironwallet/mcp-server را یک بار در ترمینال اجرا کنید تا کش گرم شود، سپس دوباره متصل شوید.
  • یا به صورت سراسری نصب کنید: npm install -g @ironwallet/mcp-server@latest.

ابزارها در کلاینت نمایش داده نمی‌شوند

  • مطمئن شوید Node.js 20+ نصب شده است: node --version.
  • پس از نصب، کلاینت را دوباره بارگذاری کنید تا PATH شامل npx باشد.
  • پس از نصب پلاگین (Claude Code / ChatGPT)، چت جدیدی شروع کنید تا ابزارها بارگذاری شوند.
  • بررسی کنید فایل پیکربندی حاوی JSON معتبر باشد و کلاینت را ری‌استارت کنید.
  • سرور را به صورت دستی با بازرس MCP تست کنید (بخش تست را ببینید).

create_wallets مقدار needs_consent را برمی‌گرداند

سلب مسئولیت MCP هنوز پذیرفته نشده است. از ایجنت بخواهید سلب مسئولیت کامل را نمایش دهد و آن را تأیید کنید (accept_mcp_consent)، یا مدیریت کیف پول را باز کرده و روی ادامه کلیک کنید.

یک انتقال یا سواپ با وقفه مواجه شد

تایم‌اوت به معنای شکست نیست — تراکنش ممکن است قبلاً پخش شده باشد. قبل از تلاش مجدد، get_operation_status (انتقالات) یا get_swap_status (سواپ‌ها) را بررسی کنید. هرگز کورکورانه دوباره ارسال نکنید.

یک ارسال یا سواپ رد می‌شود

  • list_wallets → policy را بررسی کنید: readOnly یا لیست سفید گیرندگان ممکن است عملیات را مسدود کرده باشد. { enabled: false } به معنای عدم وجود محدودیت است.
  • maxPerTxUsd در صورت عدم دسترسی به نرخ دلار برای دارایی، عملیات را رد می‌کند.
  • بررسی کنید که آیا سرور با IW_READ_ONLY=true اجرا شده است یا خیر.