Client integrations
Set up the Meshkit MCP server in Cursor, Claude Desktop, or a remote Kubo node.
Cursor
Add to your MCP settings file (mcp.json in your Cursor config directory):
{
"mcpServers": {
"meshkit": {
"command": "npx",
"args": ["-y", "@ipfs-meshkit/mcp"],
"env": {
"MESHKIT_LOCAL_NODE": "true"
}
}
}
}If you already have Kubo running, omit MESHKIT_LOCAL_NODE and point MESHKIT_NODES at your RPC URL:
{
"mcpServers": {
"meshkit": {
"command": "npx",
"args": ["-y", "@ipfs-meshkit/mcp"],
"env": {
"MESHKIT_NODES": "http://127.0.0.1:5001"
}
}
}
}Claude Desktop
Add to claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"meshkit": {
"command": "npx",
"args": ["-y", "@ipfs-meshkit/mcp"],
"env": {
"MESHKIT_NODES": "http://127.0.0.1:5001"
}
}
}
}Restart Claude Desktop after saving the config.
Remote or authenticated Kubo
{
"mcpServers": {
"meshkit": {
"command": "npx",
"args": ["-y", "@ipfs-meshkit/mcp"],
"env": {
"MESHKIT_NODES": "https://kubo.example.com:5001",
"MESHKIT_HEADERS": "{\"Authorization\":\"Bearer YOUR_TOKEN\"}"
}
}
}
}Verify the setup
Once configured, ask your AI assistant:
"List my pinned IPFS CIDs"
or
"Upload 'Hello world' to IPFS and give me the CID"
or, for the encrypted share:
"Encrypt and upload this note with password
correct-horse-battery-staple, then give me the CID."
"Retrieve CID
Qm...and decrypt it with passwordcorrect-horse-battery-staple."
The assistant calls ipfs_list_pins, ipfs_upload, or ipfs_retrieve. With a password, upload encrypts before the bytes reach Kubo, and retrieve decrypts after download. That is the same Alice-and-Bob flow as the encryption guide: the CID can be public, and the password stays out of the stored object.