Skip to content

Server MCP

Gunakan IPFS Ninja langsung dari asisten koding AI seperti Claude Code, Cursor, dan Windsurf. Unggah file, pin CID, kelola folder, dan periksa penggunaan — semuanya dari percakapan AI Anda.

IPFS Ninja MCP server working in Claude Code — uploading a file, checking profile, and listing recent uploads

Apa itu MCP?

Model Context Protocol (MCP) adalah standar terbuka untuk menghubungkan asisten AI ke alat dan sumber data eksternal. Server MCP IPFS Ninja menyediakan 11 alat yang dapat dipanggil oleh model AI selama percakapan untuk berinteraksi dengan akun IPFS Ninja Anda.

Instalasi

Paket npm

@ipfs-ninja/mcp-server

Tersedia di npm. Tidak perlu instalasi global — berjalan melalui npx.

Prasyarat

Pengaturan untuk Claude Code

Langkah 1: Dapatkan kunci API Anda

  1. Daftar di ipfs.ninja (gratis)
  2. Buka Dashboard > API Keys
  3. Klik Create API key dan salin kunci lengkap (hanya ditampilkan sekali)

Langkah 2: Tambahkan server MCP

Jalankan perintah ini di terminal Anda:

bash
claude mcp add ipfs-ninja \
  --transport stdio \
  -e IPFS_NINJA_API_KEY=bws_your_full_api_key_here \
  -- npx -y @ipfs-ninja/mcp-server

Atau tambahkan secara manual ke .claude/settings.json Anda:

json
{
  "mcpServers": {
    "ipfs-ninja": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@ipfs-ninja/mcp-server"],
      "env": {
        "IPFS_NINJA_API_KEY": "bws_your_full_api_key_here"
      }
    }
  }
}

Langkah 3: Mulai ulang Claude Code

Keluar dan buka kembali Claude Code. Ketik /mcp untuk memverifikasi bahwa server IPFS Ninja terhubung.

Langkah 4: Mulai menggunakan

Cukup bicara dengan Claude secara alami:

You: Upload my README.md to IPFS
You: List my recent files
You: How much storage am I using?
You: Pin bafyabc123... from the IPFS network
You: Create a folder called "project-assets"

Pengaturan untuk Cursor / Windsurf

Tambahkan ke pengaturan MCP Anda (Settings > MCP Servers):

PengaturanNilai
Nameipfs-ninja
Transportstdio
Commandnpx
Args-y @ipfs-ninja/mcp-server
EnvironmentIPFS_NINJA_API_KEY=bws_...

Alat yang Tersedia

Operasi file

AlatDeskripsiContoh prompt
ipfs_uploadMengunggah konten file (base64 atau teks)"Upload file HTML ini ke IPFS"
ipfs_upload_jsonMengunggah objek JSON"Simpan config ini sebagai JSON permanen di IPFS"
ipfs_listMelihat daftar file yang diunggah"Tampilkan unggahan terbaru saya"
ipfs_getMendapatkan metadata file berdasarkan CID"File jenis apa QmXyz...?"
ipfs_deleteMelepas pin dan menghapus file"Hapus QmXyz... dari akun saya"

Pinning

AlatDeskripsiContoh prompt
ipfs_pinMelakukan pin CID yang ada dari jaringan"Pin bafyabc... ke akun saya"
ipfs_pin_statusMemeriksa progres pin"Apakah bafyabc... sudah selesai di-pin?"

Organisasi

AlatDeskripsiContoh prompt
ipfs_folders_listMelihat daftar folder Anda"Tampilkan folder saya"
ipfs_folders_createMembuat folder baru"Buat folder bernama nft-metadata"

Akun

AlatDeskripsiContoh prompt
ipfs_profileMendapatkan info paket, penyimpanan, bandwidth"Berapa banyak penyimpanan yang saya gunakan?"
ipfs_analyticsMendapatkan statistik bandwidth dan file harian"Tampilkan penggunaan bandwidth saya minggu ini"

Contoh Alur Kerja

Deploy situs statis

You: Upload the contents of my dist/ folder to IPFS
Claude: [uploads each file, returns CIDs]

You: What's the CID for index.html?
Claude: [calls ipfs_get]
     → QmXyz... — https://ipfs.ninja/ipfs/QmXyz...

Metadata NFT

You: Create a folder called "my-collection" and upload this metadata JSON
Claude: [calls ipfs_folders_create, then ipfs_upload_json]
     → Folder: my-collection
     → CID: QmAbc... — permanent metadata URL ready for your smart contract

Memantau penggunaan

You: Am I close to my storage limit?
Claude: [calls ipfs_profile]
     → Plan: Bodhi, Storage: 45.2 MB / 100 GB (0.04%)
     → You have plenty of room.

You: Show my bandwidth this week
Claude: [calls ipfs_analytics with days=7]
     → 2.3 MB bandwidth, 45 requests across 3 days

Pin konten dari jaringan

You: Pin the IPFS readme at QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG
Claude: [calls ipfs_pin]
     → Pin initiated! Status: pinning

You: Is it done?
Claude: [calls ipfs_pin_status]
     → Status: pinned, Size: 0.008 MB

Pemecahan Masalah

"IPFS_NINJA_API_KEY environment variable is required"

Kunci API belum diatur. Pastikan bagian env di konfigurasi MCP Anda memiliki kunci yang benar.

"API error 402: not enough storage"

Anda telah mencapai batas penyimpanan paket Anda. Upgrade di ipfs.ninja/pricing atau hapus file yang tidak digunakan.

"API error 403: Forbidden"

Kunci API Anda mungkin tidak valid atau kedaluwarsa. Buat yang baru di Dashboard > API Keys.

Server tidak muncul di /mcp

Pastikan Anda memulai ulang Claude Code setelah menambahkan server MCP. Periksa bahwa Node.js 18+ terinstal (node --version).