Pinata

Provides Claude with access to Public and Private IPFS through Pinata via a configurable MCP server.
  • javascript

4

GitHub Stars

javascript

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "pinatacloud-pinata-mcp": {
      "command": "npx",
      "args": [
        "pinata-mcp",
        "/path/to/allowed/directory"
      ],
      "env": {
        "PINATA_JWT": "<YOUR_JWT>",
        "GATEWAY_URL": "example.mypinata.cloud"
      }
    }
  }
}

You can run pinata-mcp as a lightweight MCP server that lets Claude access Pinata’s IPFS gateway and file operations. This setup enables you to manage files, groups, payments, and semantic search for Pinata-hosted content from Claude through a single, configurable MCP endpoint.

How to use

To use this MCP server, configure Claude to connect to the local MCP instance and provide your Pinata credentials and gateway URL. The server exposes tools for authenticating, uploading and managing files, creating links, handling groups, monetizing gated content, signing and validating content, and vectorizing content for semantic search. After configuration, you can invoke any tool listed under the available operations to perform the desired action against Pinata’s IPFS services.

How to install

Prerequisites you need to install first:

  • Node.js 18+ installed

  • A Pinata account with an API key (JWT)

  • A Pinata Gateway URL

Configure the MCP server for Claude Code

In Claude Code, add the MCP server with the following prompts and values.

Server Name: pinata
Server Scope: Project or Global
Server Command: npx
Command Arguments: pinata-mcp /path/to/allowed/directory
Environment Variables: PINATA_JWT=<YOUR_JWT>,GATEWAY_URL=example.mypinata.cloud

Configure the MCP server for Claude Desktop

In Claude Desktop, add this configuration to claude_desktop_config.json.

{
  "mcpServers": {
    "pinata": {
      "command": "npx",
      "args": [
        "pinata-mcp",
        "/path/to/allowed/directory",
        "/another/allowed/directory"
      ],
      "env": {
        "PINATA_JWT": "<YOUR_JWT>",
        "GATEWAY_URL": "example.mypinata.cloud"
      }
    }
  }
}

Optional directories

Note: The directory arguments are optional. If not provided, the server will only allow access to the current working directory. You can specify multiple directories to allow file access from multiple locations.

Available tools

testAuthentication

Verify that your Pinata JWT is valid and working

uploadFile

Upload a file to Pinata (public or private IPFS)

searchFiles

Search files by name, CID, or MIME type

getFileById

Get detailed file information by ID

updateFile

Update file metadata (name, key-values)

deleteFile

Delete a file from Pinata

createLink

Create a gateway link for public or private files

createPrivateDownloadLink

Generate a temporary download link for private files

fetchFromGateway

Fetch content from IPFS via Pinata gateway

listGroups

List groups with optional filtering

createGroup

Create a new group for organizing files

getGroup

Get group details by ID

updateGroup

Update group information

deleteGroup

Delete a group

addFileToGroup

Add a file to a group

removeFileFromGroup

Remove a file from a group

createPaymentInstruction

Create payment requirements for gated content

listPaymentInstructions

List/filter existing payment instructions

getPaymentInstruction

Get details of a specific payment instruction

updatePaymentInstruction

Modify payment instruction settings

deletePaymentInstruction

Remove a payment instruction

listPaymentInstructionCids

List CIDs associated with a payment instruction

addCidToPaymentInstruction

Associate a CID with a payment instruction

removeCidFromPaymentInstruction

Remove a CID association

addSignature

Add a cryptographic signature to a CID

getSignature

Get signature details by CID

deleteSignature

Remove a signature

createSignedUploadUrl

Create a presigned URL for client-side uploads

pinByCid

Pin an existing CID from the IPFS network

queryPinRequests

Query the status of pin requests

cancelPinRequest

Cancel a pending pin request

vectorizeFile

Vectorize a file for semantic search

deleteFileVectors

Delete vectors for a file

queryVectors

Query vectorized files using semantic search

listAllowedDirectories

List directories the server can access for file operations

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational