
A Model Context Protocol (MCP) server that provides Claude with access to Pinata. This integration allows Claude to interact with Public and Private IPFS through Pinata's API.
概览
A Model Context Protocol (MCP) server that provides Claude with access to Pinata. This integration allows Claude to interact with Public and Private IPFS through Pinata's API. - Node.js 18+ installed - A Pinata account with an API key (JWT) - A Pinata Gateway URL Installation will depend on whether you are using Claude Code or Claude Desktop. Run claude mcp add and follow the prompts with the following information: Add the following config to claude_desktop_config.json: 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. Tools for content monetization using the x402 protocol: Tools for cryptographic content verification using EIP-712 signatures:
README
以下为原文 README 节选,完整内容请查看原文。
pinata-mcp
A Model Context Protocol (MCP) server that provides Claude with access to Pinata. This integration allows Claude to interact with Public and Private IPFS through Pinata’s API.
Setup
Prerequisites
- Node.js 18+ installed
- A Pinata account with an API key (JWT)
- A Pinata Gateway URL
Installation
Installation will depend on whether you are using Claude Code or Claude Desktop.
Claude Code
Run claude mcp add and follow the prompts with the following information:
Server Name: pinata
Server Scope: Project or Global
Server Command: npx
Command Arguments: pinata-mcp /path/to/allowed/directory
Environment Variables: PINATA_JWT=,GATEWAY_URL=example.mypinata.cloud
Claude Desktop
Add the following config to claude_desktop_config.json:
{
"mcpServers": {
"pinata": {
"command": "npx",
"args": [
"pinata-mcp",
"/path/to/allowed/directory",
"/another/allowed/directory"
],
"env": {
"PINATA_JWT": "",
"GATEWAY_URL": "example.mypinata.cloud"
}
}
}
}
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
Authentication
| Tool | Description |
|---|---|
testAuthentication |
Verify that your Pinata JWT is valid and working |
File Operations
| Tool | Description |
|---|---|
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 |
Content Access
| Tool | Description |
|---|---|
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 |
Group Operations
| Tool | Description |
|---|---|
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 |
x402 Payment Instructions
Tools for content monetization using the x402 protocol:
| Tool | Description |
|---|---|
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 |
安装
npx pinata-mcp /path/to/allowed/directory /another/allowed/directory配置
{
"mcpServers": {
"pinata": {
"command": "npx",
"args": [
"pinata-mcp",
"/path/to/allowed/directory",
"/another/allowed/directory"
],
"env": {
"PINATA_JWT": "<YOUR_JWT>",
"GATEWAY_URL": "example.mypinata.cloud"
}
}
}
}