Skip to main content
Glama
650,904 tools. Updated 2026-10-15 01:45

"IPFS" matching MCP tools:

  • Anchor a fingerprint of a memory or artifact on-chain as the NVS record `ai:gh:<github_id>:mem:<content_hash>`. Only the hash and your metadata are stored — never the content, which you keep wherever you like (a file, a database, IPFS). What you get is a tamper-evident, timestamped proof that content with this hash existed, which anyone can verify later; `list_records` finds your earlier ones again. Requires a signed-in session (OAuth) and counts against the FREE-tier write limits (see `whoami`). Writes one NVS transaction paid by the gateway; reads back `pending` at once, `confirmed` after the next block (about 8 minutes on average lately). Not idempotent — each distinct hash is a new record. Register your identity first — nothing enforces it, the write succeeds either way, but a memory under an unregistered id anchors to nobody and proves correspondingly little. Writing a hash you already anchored renews that record: its term is extended (terms add up), and its metadata is replaced by what you pass now — so pass the old metadata again if you want to keep it. That is the only renewal there is; a record left alone lapses after its term (see `expires_in`). Limits worth knowing before you call: `content_hash` becomes part of the record *name*, `ai:gh:<github_id>:mem:<hash>`, so it must look like a digest: 32–128 characters of letters, digits, '_' or '-' (hex of any common algorithm, or an IPFS CID); anything else is refused with `invalid_hash` before any quota is spent. Beyond that shape it is never verified: nothing checks that it is the hash of anything, so a wrong digest anchors happily and proves nothing. `metadata` goes verbatim into the record value, which must stay under 20 KiB, is public and permanent. Returns the record name and the transaction id.
    ConnectorNo auth
  • Anchor a fingerprint of a memory or artifact on-chain as the NVS record `ai:gh:<github_id>:mem:<content_hash>`. Only the hash and your metadata are stored — never the content, which you keep wherever you like (a file, a database, IPFS). What you get is a tamper-evident, timestamped proof that content with this hash existed, which anyone can verify later; `list_records` finds your earlier ones again. Requires a signed-in session (OAuth) and counts against the FREE-tier write limits (see `whoami`). Writes one NVS transaction paid by the gateway; reads back `pending` at once, `confirmed` after the next block (about 8 minutes on average lately). Not idempotent — each distinct hash is a new record. Register your identity first — nothing enforces it, the write succeeds either way, but a memory under an unregistered id anchors to nobody and proves correspondingly little. Writing a hash you already anchored renews that record: its term is extended (terms add up), and its metadata is replaced by what you pass now — so pass the old metadata again if you want to keep it. That is the only renewal there is; a record left alone lapses after its term (see `expires_in`). Limits worth knowing before you call: `content_hash` becomes part of the record *name*, `ai:gh:<github_id>:mem:<hash>`, so it must look like a digest: 32–128 characters of letters, digits, '_' or '-' (hex of any common algorithm, or an IPFS CID); anything else is refused with `invalid_hash` before any quota is spent. Beyond that shape it is never verified: nothing checks that it is the hash of anything, so a wrong digest anchors happily and proves nothing. `metadata` goes verbatim into the record value, which must stay under 20 KiB, is public and permanent. Returns the record name and the transaction id.
    ConnectorNo auth
  • Takes no 'version' argument (DAO governance is not per-market; Governance V3 is unrelated to Aave v3/v4 markets). Full detail for one Aave DAO governance proposal: state, author, vote tallies, quorum, timings and the transaction hash of each lifecycle step. 'quorumMet' and 'differentialMet' are the two conditions a proposal must meet to pass. Vote tallies and quorum are both in AAVE, so they compare directly. The long IPFS write-up is omitted unless includeDescription is true.
    ConnectorNo auth
  • Takes no 'version' argument (DAO governance is not per-market; Governance V3 is unrelated to Aave v3/v4 markets). Full detail for one Aave DAO governance proposal: state, author, vote tallies, quorum, timings and the transaction hash of each lifecycle step. 'quorumMet' and 'differentialMet' are the two conditions a proposal must meet to pass. Vote tallies and quorum are both in AAVE, so they compare directly. The long IPFS write-up is omitted unless includeDescription is true.
    ConnectorNo auth
  • Send a message to your token's holders Sends a message from the token page `id` to its subscribed holders: in-app always, plus whichever of `push`, `email`, `sms`, `telegram`, `discord` and `xmtp` are listed and each holder has turned on. It goes out at once unless `scheduledAt` is set. A sent message cannot be recalled. Only the page's owner or a manager can send; there is nothing to sign. With no holder group and no segment, `telegram`/`discord` also post once in the token's public community room and Discord webhook; with either, they are DMs only. Limits: the Free plan sends 1 per rolling 7 days per token; paid plans have no plan limit, but every token is held to a safety ceiling (3 an hour and 10 a day by default, 1 a day in a token's first week), and both answer 429 with `resetsAt`. Up to 50,000 recipients per send, largest holders first. A new token's first send to more than 500 holders is held for review: it answers 200 with `recipientCount: 0` and goes out once released. `wallet` must be one of the caller's signed-in wallets (it is recorded as the sender), and `channels` must include `inapp`. When the same token id exists on more than one chain, `crownChain` picks the token; without it the message can reach the wrong token's holders or none. Every link and image is screened: links on a blocklist and images not on IPFS or Arweave answer 422. Needs Sign in with Chain Daddy, allowing changes (scope api:write).
    Connector
    Destructive
    No auth

Matching MCP Servers

  • A
    license
    C
    quality
    F
    maintenance
    🪐 MCP IPFS Server This server empowers language models 🤖 and other MCP clients to manage storacha.network spaces, upload/download data, manage delegations, and perform various other tasks by seamlessly wrapping w3 commands.
    35
    28 npm
    21
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A Model Context Protocol server that enables Claude to interact directly with IPFS for content-addressed storage, peer-to-peer networking, and decentralized data management.
    28 npm
    MIT

Matching MCP Connectors

  • Pin a digital-good file to IPFS and get back its CID, for attaching to a marketplace listing via create_listing's ipfs_hash. Pass the file as base64 (max 10 MB decoded). Only images (JPEG/PNG/GIF/WebP), PDFs, and ZIPs are accepted — the type is verified by magic bytes, so a disguised executable is rejected. Your filename is replaced with a neutral name before pinning (no PII reaches storage). Quota: same 5/day per-wallet limit as the dapp upload, shared across both surfaces. The CID is bound into your listing's on-chain message, so buyers can prove the exact file listed is the one they get. Requires a registered agent blockpage.
    ConnectorNo auth
  • Add or remove a track on the music block of YOUR OWN blockpage — scoped to agent_username's page only, there is no target-page parameter. Prepare-don't-execute: returns the complete UPDATED page JSON (nothing is pinned or published). You pin the JSON to IPFS yourself, then call updatePage(username, cid) on the Registry contract (0.0.10854060) signed with the page owner's key — one signature, a few cents of HBAR gas. The server never signs. Add accepts a Spotify/YouTube/SoundCloud link (track_url) or your own upload's IPFS CID (ipfs_cid); remove by track_index or track_url match.
    ConnectorNo auth
  • Set ENS resolver records for a name you own. Returns encoded transaction calldata ready to sign and broadcast. Supports: address records — ETH as a plain 0x address, non-ETH coins (BTC, SOL, LTC, DOGE, …) as the raw wallet-format address (bc1…, base58, …) which is ENSIP-9-encoded automatically; text records (avatar, description, url, social handles, AI agent metadata); contenthash as an ipfs:///ipns:// URI or bare CID (auto-encoded) or a pre-encoded 0x value; ENSIP-25 agent-registration records; and ENSIP-26 agent context and endpoint discovery. Always pass addresses and CIDs EXACTLY as the user gave them — never reconstruct or abbreviate them. Multiple records are batched into a single multicall transaction to save gas. Common text record keys: avatar, description, url, email, com.twitter, com.github, com.discord, ai.agent, ai.purpose, ai.capabilities, ai.category. ENSIP-25 support: Pass agentRegistration with registryAddress and agentId to automatically set the standardized agent-registration text record. This creates a verifiable on-chain binding between your ENS name and your agent identity in an ERC-8004 registry. ENSIP-26 support: Pass agentContext to set the agent-context text record (free-form agent description). Pass agentEndpoints with protocol URLs (mcp, a2a, oasf, web) to set agent-endpoint[protocol] discovery records.
    Connector
    Destructive
    No auth
  • Set ENS resolver records for multiple names in a single transaction — bulk record editing. All record updates across all names are batched into one resolver.multicall() call. Much cheaper than setting records one name at a time. Supports the same record types as set_ens_records: address records (ETH, BTC, SOL, etc.), text records (avatar, description, social handles, AI agent metadata), content hash (IPFS/IPNS), and ENSIP-25 agent-registration records. You can set different records for each name (e.g., unique avatars) or the same records across all names (e.g., same ETH address). Max 50 names per batch. The wallet signing the transaction must be the owner/manager of all included names.
    Connector
    Destructive
    No auth
  • Read what a Solana mint says it is — its name, ticker, metadata link — and, crucially, whether any of that can be rewritten later at the same address. Where the update authority is revoked and the link is content-addressed (an IPFS CID), what the mint declares is fixed at mint time and cannot be swapped. Set `fetch` to also read the document and return the accounts it declares (X, Telegram, website, GitHub); it is off by default because the link is a URL chosen by whoever deployed the mint. Use it to answer whether a token, or an account claiming to represent one, is the real one — the answer is always the mint address, never the ticker. A mint wearing a curated token’s symbol or name at a different address is reported as impersonation.
    ConnectorNo auth
  • Check whether a blockpage's profile content is actually retrievable from IPFS — the pin-status companion to lookup_blockpage. Pass a username (resolves the on-chain CID pointer via the Registry contract) or a CID directly; the tool fetches the bytes through public IPFS gateways and reports reachable true/false, bytes fetched, and which gateway answered. The Registry stores only a CID pointer, never the content — this closes the gap between 'the pointer resolves on-chain' and 'the profile actually loads.'
    ConnectorNo auth
  • Create an order for a branded IPFS gateway on your own domain. Returns order_id, exact_amount_usdt and pay_to_address. Payment is on-chain and irreversible: verify domain and cid before paying, then send exactly exact_amount_usdt USDT on TRON (TRC20) within 15 minutes.
    ConnectorNo auth
  • [FREE] AIARENA DATO (Decentralized Agentic Tournament Orchestration, invention #5053): list tournaments where AI captains vote round parameters by distributed consensus, with every round record + final standings pinned to IPFS and anchored on Base L2. Use aiarena_dato_detail(tid) for one tournament full ballot + proofs. No payment required.
    ConnectorNo auth
  • [FREE] AIARENA DATO (Decentralized Agentic Tournament Orchestration, invention #5053): list tournaments where AI captains vote round parameters by distributed consensus, with every round record + final standings pinned to IPFS and anchored on Base L2. Use aiarena_dato_detail(tid) for one tournament full ballot + proofs. No payment required.
    ConnectorNo auth
  • Derive the Solana Name Service record PDA for a root .sol domain and record type such as SOL, TXT, Pic, Url, or IPFS. SAP MCP execution guidance: Intent: read/discovery workflow. Pricing: paid read-premium; estimate first, then use sap_payments_call_paid_tool when the runtime cannot replay x402 natively. Routing: paid hosted call; call sap_estimate_tool_cost first, then use sap_payments_call_paid_tool if the runtime cannot handle x402 natively. Signer boundary: hosted reads/builders never receive keypair bytes; value-moving results must be finalized locally when signing is required.
    ConnectorNo auth
  • $0.09 via x402: who owns an NFT right now and where its metadata lives — ownerOf, tokenURI, collection name and symbol in one call, with the tokenURI classified as ipfs / on-chain data URI / http so you know how to fetch it. Read from the contract, so it is correct for tokens minted seconds ago and collections no marketplace has indexed. Base, Ethereum, Optimism, Arbitrum, Polygon, Gnosis.
    ConnectorNo auth
  • Submit cryptographic proof of delivery and unlock your payment. Provide a SHA-256 hash + HTTPS or IPFS URI; the buyer can verify the deliverable matches what was promised. Successful releases compound into reputation that earns your agent more work.
    ConnectorNo auth
  • Retrieve a zero-knowledge proof circuit by its circuitId via GET /v1/circuits/{circuitId}. A circuit defines the constraints that proofs must satisfy and binds to a single schema. Returns CircuitMeta { circuitId, schema, description?, inputs?, verifier?: { type: 'onchain'|'offchain', address?, chainId? }, artifact?: { location: { type: 'ipfs'|'https', wasm, zkey } } }. Use this before lemma_submit_proof to confirm the circuit's schema, public inputs, and verifier configuration. Circuits are immutable; new variants get new circuitIds.
    ConnectorNo auth
  • Stores a ProductV1 metadata object to IPFS. Call before create_offer to get metadataUri and metadataHash. Returns: { metadataUri: 'ipfs://...', metadataHash: '0x...' }.
    ConnectorNo auth