Query Mind Server

by HarshS1611

266 downloads
Not rated
GitHub

Description

# Storacha MCP Storage Server A Model Context Protocol (MCP) server implementation for Storacha hot storage, allowing AI applications to store and retrieve files through a standardized interface. It enables trustless, decentralized data exchange using IPFS and CIDs, ensuring…

About

# Storacha MCP Storage Server A Model Context Protocol (MCP) server implementation for Storacha hot storage, allowing AI applications to store and retrieve files through a standardized interface. It enables trustless, decentralized data exchange using IPFS and CIDs, ensuring data sovereignty, verifiability, and…

Details

Author
HarshS1611
Downloads
266
Categories
Other

- Upload files as base64‑encoded content with optional Filecoin publication
- Retrieve files by CID/filename, /ipfs/CID/filename, or ipfs://CID/filename
- Exposes identity tool returning the agent’s DID key
- Free storage tiers: 100 MB (GitHub) or 5 GB (email + credit card)
- Decentralized, verifiable data exchange via CIDs
- Supports three transport modes: stdio, SSE, and REST

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Query Mind Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Clone the repository, install dependencies with pnpm install, generate a private key and delegation using the w3 CLI, then configure your MCP client (e.g., Cursor) with the private key and delegation in environment variables. The server supports stdio, sse, and rest transport modes.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "query mind server": {
            "storacha-storage-server-rest": {
                "command": "node",
                "args": [
                    "./dist/index.js"
                ],
                "url": "http://localhost:3001/rest",
                "env": {
                    "MCP_TRANSPORT_MODE": "rest",
                    "PRIVATE_KEY": "MgCYRmxYvQXnsRODA3Sd5vR9xtp6si7/u0STIJPcNeqbO1e0BL8p24S9r1pIYWVYlnVCy7LqWs+UBXQUtva4dUVr0CEY=",
                    "DELEGATION": "mAYIEAPsKEaJlcm9vdHOAZ3ZlcnNpb24B1wYBcRIgCk+HvAJPVS3fi1eMvUU6e8VpOQItsZYikkX+yDKNvVeoYXNYRO2hA0DwLhboQ7O/FXjHUTjvRSJl3/RN0GVmolH2FygwCgF298CYBwPdhKkG6ZdvoYxapBnCTy6V1p+nMkd6Ovlau2wPYXZlMC45LjFjYXR0iKJjY2FuZ3NwYWNlLypkd2l0aHg4ZGlkOmtleTp6Nk1rbTdhM2R4bnRMVVpSVDVOZWNWR2NrcEJHb2ZheGRVTHQ1aFBtamFMMmJ2dzGiY2NhbmZibG9iLypkd2l0aHg4ZGlkOmtleTp6Nk1rbTdhM2R4bnRMVVpSVDVOZWNWR2NrcEJHb2ZheGRVTHQ1aFBtamFMMmJ2dzGiY2NhbmdpbmRleC8qZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxomNjYW5nc3RvcmUvKmR3aXRoeDhkaWQ6a2V5Ono2TWttN2EzZHhudExVWlJUNU5lY1ZHY2twQkdvZmF4ZFVMdDVoUG1qYUwyYnZ3MaJjY2FuaHVwbG9hZC8qZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxomNjYW5oYWNjZXNzLypkd2l0aHg4ZGlkOmtleTp6Nk1rbTdhM2R4bnRMVVpSVDVOZWNWR2NrcEJHb2ZheGRVTHQ1aFBtamFMMmJ2dzGiY2NhbmpmaWxlY29pbi8qZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxomNjYW5ndXNhZ2UvKmR3aXRoeDhkaWQ6a2V5Ono2TWttN2EzZHhudExVWlJUNU5lY1ZHY2twQkdvZmF4ZFVMdDVoUG1qYUwyYnZ3MWNhdWRYIu0Be7yu18yYwJCK/50cUbvnREvRN9R3va8aupZc1iefjihjZXhwGmomdANjZmN0gaFlc3BhY2WhZG5hbWVobWNwLXRlc3RjaXNzWCLtAWL2i77YoZ/O0q16AddyS/XWz6zsXu027es2KC0VX8UwY3ByZoCOBAFxEiB3juiXwkD1/oWf7keIzEwHlgkpawBG4jL2XDMANsmClahhc1hE7aEDQMmjwxehxi541uBtYb8XoFyfR1jf6CeH+GZmwOYwyTH75NQ3IdqzDDNtqIIGNrwCPx3gUlBQJF6jO9vCqdq2VAJhdmUwLjkuMWNhdHSDomNjYW5qdXBsb2FkL2FkZGR3aXRoeDhkaWQ6a2V5Ono2TWttN2EzZHhudExVWlJUNU5lY1ZHY2twQkdvZmF4ZFVMdDVoUG1qYUwyYnZ3MaJjY2FubnNwYWNlL2Jsb2IvYWRkZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxomNjYW5vc3BhY2UvaW5kZXgvYWRkZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxY2F1ZFgi7QEvynbhL2vWkhhZViWdULLsupaz5QFdBS29rh1RWvQIRmNleHD2Y2ZjdIGhZXNwYWNloWRuYW1laG1jcC10ZXN0Y2lzc1gi7QF7vK7XzJjAkIr/nRxRu+dES9E31He9rxq6llzWJ5+OKGNwcmaB2CpYJQABcRIgCk+HvAJPVS3fi1eMvUU6e8VpOQItsZYikkX+yDKNvVc"
                },
                "shell": "true"
            }
        }
    }
}

McpServers

{
    "storacha-storage-server-rest": {
        "command": "node",
        "args": [
            "./dist/index.js"
        ],
        "url": "http://localhost:3001/rest",
        "env": {
            "MCP_TRANSPORT_MODE": "rest",
            "PRIVATE_KEY": "MgCYRmxYvQXnsRODA3Sd5vR9xtp6si7/u0STIJPcNeqbO1e0BL8p24S9r1pIYWVYlnVCy7LqWs+UBXQUtva4dUVr0CEY=",
            "DELEGATION": "mAYIEAPsKEaJlcm9vdHOAZ3ZlcnNpb24B1wYBcRIgCk+HvAJPVS3fi1eMvUU6e8VpOQItsZYikkX+yDKNvVeoYXNYRO2hA0DwLhboQ7O/FXjHUTjvRSJl3/RN0GVmolH2FygwCgF298CYBwPdhKkG6ZdvoYxapBnCTy6V1p+nMkd6Ovlau2wPYXZlMC45LjFjYXR0iKJjY2FuZ3NwYWNlLypkd2l0aHg4ZGlkOmtleTp6Nk1rbTdhM2R4bnRMVVpSVDVOZWNWR2NrcEJHb2ZheGRVTHQ1aFBtamFMMmJ2dzGiY2NhbmZibG9iLypkd2l0aHg4ZGlkOmtleTp6Nk1rbTdhM2R4bnRMVVpSVDVOZWNWR2NrcEJHb2ZheGRVTHQ1aFBtamFMMmJ2dzGiY2NhbmdpbmRleC8qZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxomNjYW5nc3RvcmUvKmR3aXRoeDhkaWQ6a2V5Ono2TWttN2EzZHhudExVWlJUNU5lY1ZHY2twQkdvZmF4ZFVMdDVoUG1qYUwyYnZ3MaJjY2FuaHVwbG9hZC8qZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxomNjYW5oYWNjZXNzLypkd2l0aHg4ZGlkOmtleTp6Nk1rbTdhM2R4bnRMVVpSVDVOZWNWR2NrcEJHb2ZheGRVTHQ1aFBtamFMMmJ2dzGiY2NhbmpmaWxlY29pbi8qZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxomNjYW5ndXNhZ2UvKmR3aXRoeDhkaWQ6a2V5Ono2TWttN2EzZHhudExVWlJUNU5lY1ZHY2twQkdvZmF4ZFVMdDVoUG1qYUwyYnZ3MWNhdWRYIu0Be7yu18yYwJCK/50cUbvnREvRN9R3va8aupZc1iefjihjZXhwGmomdANjZmN0gaFlc3BhY2WhZG5hbWVobWNwLXRlc3RjaXNzWCLtAWL2i77YoZ/O0q16AddyS/XWz6zsXu027es2KC0VX8UwY3ByZoCOBAFxEiB3juiXwkD1/oWf7keIzEwHlgkpawBG4jL2XDMANsmClahhc1hE7aEDQMmjwxehxi541uBtYb8XoFyfR1jf6CeH+GZmwOYwyTH75NQ3IdqzDDNtqIIGNrwCPx3gUlBQJF6jO9vCqdq2VAJhdmUwLjkuMWNhdHSDomNjYW5qdXBsb2FkL2FkZGR3aXRoeDhkaWQ6a2V5Ono2TWttN2EzZHhudExVWlJUNU5lY1ZHY2twQkdvZmF4ZFVMdDVoUG1qYUwyYnZ3MaJjY2FubnNwYWNlL2Jsb2IvYWRkZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxomNjYW5vc3BhY2UvaW5kZXgvYWRkZHdpdGh4OGRpZDprZXk6ejZNa203YTNkeG50TFVaUlQ1TmVjVkdja3BCR29mYXhkVUx0NWhQbWphTDJidncxY2F1ZFgi7QEvynbhL2vWkhhZViWdULLsupaz5QFdBS29rh1RWvQIRmNleHD2Y2ZjdIGhZXNwYWNloWRuYW1laG1jcC10ZXN0Y2lzc1gi7QF7vK7XzJjAkIr/nRxRu+dES9E31He9rxq6llzWJ5+OKGNwcmaB2CpYJQABcRIgCk+HvAJPVS3fi1eMvUU6e8VpOQItsZYikkX+yDKNvVc"
        },
        "shell": "true"
    }
}

Storacha MCP Storage Server

A Model Context Protocol (MCP) server implementation for Storacha hot storage, allowing AI applications to store and retrieve files through a standardized interface. It enables trustless, decentralized data exchange using IPFS and CIDs, ensuring data sovereignty, verifiability, and seamless integration with agent frameworks & AI systems.

Free Storage Options to Start 🚀

Jump-start your decentralized storage journey today!

- GitHub Users: Sign up with your GitHub account and instantly receive 100MB of free storage — no credit card required!
- Email Users: Register with your email and add a credit card to unlock 5GB of free storage space.

Use Cases

- Document Storage & Analysis: Securely upload and retrieve Blob documents.
- Long-term Structured Data Storage: Maintain structured data storage optimized for longevity and accessibility.
- Data Sharing Between Agents and Systems: Easily share data across multiple agents and diverse systems using CIDs (Content Identifiers), enabling decentralized, verifiable, and efficient data exchange.
- Application Integration: Seamlessly integrate Storacha storage retrieval into applications via the Model Context Protocol.
- AI Model Development: Support AI models by providing reliable versioning and access to external datasets stored in Storacha.
- LLM Integration: Enhance large language models (LLMs) by connecting directly with Storacha Storage for seamless data access.
- Web Application Backups: Reliably store backup copies of web applications for disaster recovery.
- Machine Learning Datasets: Efficiently manage and access large datasets used in machine learning workflows.

Quick Installation Guide

Get started with the Storacha MCP Storage Server in just a few simple steps.

1. Clone the Repository

   git clone https://github.com/storacha/mcp-storage-server.git && cd mcp-storage-server
   

2. Install Dependencies

   pnpm install
   

3. Generate Keys & Delegation

- Install the CLI

     npm install -g @web3-storage/w3cli

- Login to Storacha
     w3 login

_Output:_
     ? How do you want to login?
Via Email
❯ Via GitHub

_Select Via GitHub and authenticate with your GitHub account._
- Create a Space
     w3 space create <your_space_name>

_Replace <your_space_name> with a name for your new Space_. :warning: _Make sure you save the recovery key, so you can access your space from another device if needed._
- Create a Private Key

     w3 key create
     

_Output:_

     AgentId: did:key:z6MkhMZRW2aoJ6BQwkpMSJu68Jgqkz1FTpr1p69cpnN43YWG
     PrivateKey: LMgCYLkvOc8Sm0mOL4cWFLxsWP0ZPEYrLxcQqsV93/s5RLje0BKx05muAse1Hkvh+sxUW38OcHtpiN1zxfpTJ4ht4jxV0=
     

- Set the Agent ID & Create Delegation

     w3 delegation create <agent_id> \
--can 'store/add' \
--can 'filecoin/offer' \
--can 'upload/add' \
--can 'space/blob/add' \
--can 'space/index/add' --base64

_Replace <agent_id> with the AgentId from the previous step. It grants the Agent the permission to store files into the recently created space_.

4. Configure the MCP Client

Next, configure your MCP client (such as Cursor) to use this server. Most MCP clients store the configuration as JSON in the following format:

   {
     "mcpServers": {
       "storacha-storage-server": {
         "command": "node",
         "args": ["./dist/index.js"],
         "env": {
           // The server supports stdio, sse, and rest modes, the default is stdio.
           "MCP_TRANSPORT_MODE": "stdio",
           // The Storacha Agent private key that is authorized to store data into the Space.
           "PRIVATE_KEY": "<agent_private_key>",
           // The base64 encoded delegation that proves the Agent is allowed to store data. If not set, MUST be provided for each upload request.
           "DELEGATION": "<base64_delegation>",
         },
         "shell": true,
         "cwd": "./",
       },
     },
   }
   

_Replace <agent_private_key> with the PrivateKey you created in step 3. Then, replace the <base64_delegation> with the delegation you created in step 3._

### REST Mode and Cloud Hosting

The Storacha MCP Storage Server supports REST transport mode, which is compatible with MCP.so cloud hosting. To use REST mode:

   {
     "mcpServers": {
       "storacha-storage-server-rest": {
         "url": "http://localhost:3001/rest",
       },
     },
   }
   

For more information on deploying to MCP.so cloud, see the integrations.md guide.

_:warning: There are several ways to configure MCP clients, please read the integrations.md guide for more information._

Tools

The Storacha MCP Storage Server provides the following tools for AI systems to interact with a decentralized storage network.

Storage Operations

upload

Upload a file to the Storacha Network. The file must be provided as a base64 encoded string with a filename that includes the extension for MIME type detection.

interface UploadParams {
  // Base64 encoded file content
  file: string;
  // Filename with extension for MIME type detection
  name: string;
  // Optional: Whether to publish to Filecoin (default: false)
  publishToFilecoin?: boolean;
  // Optional: Custom delegation proof
  delegation?: string;
  // Optional: Custom gateway URL
  gatewayUrl?: string;
}

retrieve

Retrieve a file from the Storacha Network. Supported filepath formats: CID/filename, /ipfs/CID/filename, or ipfs://CID/filename.

interface RetrieveParams {
  // Path in format: CID/filename, /ipfs/CID/filename, or ipfs://CID/filename
  filepath: string;
  // Optional: Whether to use multiformat base64 encoding
  useMultiformatBase64?: boolean;
}

identity

Returns the DIDKey of the Storacha Agent loaded from the private key storage configuration.

interface IdentityParams {
  // No parameters required
}

See the integrations.md guide for detailed code examples and different integration patterns (SDK, Docker, etc).

License

MIT or Apache 2 License

Support

For support, please visit Storacha Support or open an issue in this repository.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.