Skip to content

Serwer MCP

Używaj IPFS Ninja bezpośrednio z asystentów kodowania AI, takich jak Claude Code, Cursor i Windsurf. Przesyłaj pliki, przypinaj CID, zarządzaj folderami i sprawdzaj użycie — wszystko z poziomu rozmowy z AI.

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

Czym jest MCP?

Model Context Protocol (MCP) to otwarty standard łączenia asystentów AI z zewnętrznymi narzędziami i źródłami danych. Serwer MCP IPFS Ninja udostępnia 11 narzędzi, które modele AI mogą wywoływać podczas rozmów, aby wchodzić w interakcje z Twoim kontem IPFS Ninja.

Instalacja

Pakiet npm

@ipfs-ninja/mcp-server

Dostępny na npm. Nie wymaga globalnej instalacji — uruchamiany przez npx.

Wymagania wstępne

Konfiguracja dla Claude Code

Krok 1: Uzyskaj klucz API

  1. Zarejestruj się na ipfs.ninja (bezpłatnie)
  2. Przejdź do Dashboard > API Keys
  3. Kliknij Create API key i skopiuj pełny klucz (wyświetlany tylko raz)

Krok 2: Dodaj serwer MCP

Uruchom to polecenie w terminalu:

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

Lub dodaj ręcznie do pliku .claude/settings.json:

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"
      }
    }
  }
}

Krok 3: Uruchom ponownie Claude Code

Zamknij i otwórz ponownie Claude Code. Wpisz /mcp, aby sprawdzić, czy serwer IPFS Ninja jest połączony.

Krok 4: Zacznij używać

Po prostu rozmawiaj z Claude naturalnie:

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"

Konfiguracja dla Cursor / Windsurf

Dodaj do ustawień MCP (Settings > MCP Servers):

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

Dostępne narzędzia

Operacje na plikach

NarzędzieOpisPrzykładowa komenda
ipfs_uploadPrześlij zawartość pliku (base64 lub tekst)"Upload this HTML file to IPFS"
ipfs_upload_jsonPrześlij obiekt JSON"Store this config as a permanent JSON on IPFS"
ipfs_listWyświetl przesłane pliki"Show my recent uploads"
ipfs_getPobierz metadane pliku po CID"What type of file is QmXyz...?"
ipfs_deleteOdepnij i usuń plik"Delete QmXyz... from my account"

Pinning

NarzędzieOpisPrzykładowa komenda
ipfs_pinPrzypnij istniejący CID z sieci"Pin bafyabc... to my account"
ipfs_pin_statusSprawdź postęp przypinania"Is bafyabc... done pinning?"

Organizacja

NarzędzieOpisPrzykładowa komenda
ipfs_folders_listWyświetl swoje foldery"Show my folders"
ipfs_folders_createUtwórz nowy folder"Create a folder called nft-metadata"

Konto

NarzędzieOpisPrzykładowa komenda
ipfs_profilePobierz informacje o planie, przestrzeni i przepustowości"How much storage am I using?"
ipfs_analyticsPobierz dzienne statystyki przepustowości i plików"Show my bandwidth usage this week"

Przykładowe przepływy pracy

Wdrażanie strony statycznej

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...

Metadane 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

Monitorowanie użycia

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

Przypinanie zawartości z sieci

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

Rozwiązywanie problemów

"IPFS_NINJA_API_KEY environment variable is required"

Klucz API nie jest ustawiony. Upewnij się, że sekcja env w konfiguracji MCP zawiera poprawny klucz.

"API error 402: not enough storage"

Osiągnięto limit przestrzeni dyskowej Twojego planu. Zaktualizuj plan na ipfs.ninja/pricing lub usuń nieużywane pliki.

"API error 403: Forbidden"

Twój klucz API może być nieprawidłowy lub wygasły. Utwórz nowy na Dashboard > API Keys.

Serwer nie pojawia się w /mcp

Upewnij się, że ponownie uruchomiłeś Claude Code po dodaniu serwera MCP. Sprawdź, czy zainstalowany jest Node.js 18+ (node --version).