Skip to content

MemeSwap MCP

by memeswap.fun · remote · no sign-in to list tools · v0.2.1 · published by fun.memeswap

Buy & research hot/new memes. Quotes + unsigned swaps; wallet signs. Not a launcher. Fee 0.85%. NFA.

Deletes · 1Final · 1Changes · 303 high findings

43 tools: 1 can delete or cancel things, 1 do something that can't be undone, 30 change things and 11 only read.

Scanned Oct 21, 2026

9 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http trading https://mcp.memeswap.fun/mcp

Findings

Matches of fixed checks, with the text they matched.

3 high3 warn3 info
  • The description refers to "/api/v1.1/me/credentials".

    Matched text

    description: "...ist scoped API credential metadata (GET /api/v1.1/me/credentials). Never returns secrets. Requires live..."

    What this check looks for
  • The description refers to "/api/v1.1/me/credentials".

    Matched text

    description: "Create scoped user API token (POST /api/v1.1/me/credentials). Usually wallet-session only on portal..."

    What this check looks for
  • The description refers to "/api/v1.1/me/credentials/:id".

    Matched text

    description: "...oke one credential by 16-hex id (DELETE /api/v1.1/me/credentials/:id). Requires live user API."

    What this check looks for
  • The server marks "memeswap_xquote" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The input addresses people (input.to): what it sends cannot be taken back.

    What this check looks for
  • The server marks "memeswap_session_message" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "start": a word for a change.

    What this check looks for
  • The server marks "memeswap_referral_stats" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "read": a word for reading.

    What this check looks for
Show 3 more findings

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

43 tools

Deletes or cancels 1Claude Code: deny
  • memeswap_revoke_credentialRevoke one credential by 16-hex id (DELETE /api/v1.1/me/credentials/:id).2 findings

    Why it is in this group

    • The name "memeswap_revoke_credential" says "revoke": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).

    Findings

    • High

      The description refers to "/api/v1.1/me/credentials/:id".

      Matched text

      description: "...oke one credential by 16-hex id (DELETE /api/v1.1/me/credentials/:id). Requires live user API."

      What this check looks for
    • Info

      The description mentions "credential".

      Matched text

      description: "Revoke one credential by 16-hex id (DELETE /api/v1.1/me/crede..."

      What this check looks for
    Description, as the server wrote it
    Revoke one credential by 16-hex id (DELETE /api/v1.1/me/credentials/:id). Requires live user API.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
Can't be undone 1Claude Code: ask
  • memeswap_xquoteCross-chain quote + unsigned material when the user wants to buy a meme across chains (GET /api/xquote).1 finding

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "memeswap_xquote" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The input addresses people (input.to): what it sends cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Cross-chain quote + unsigned material when the user wants to buy a meme across chains (GET /api/xquote). Wallet signs. Does not submit.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Changes things 30Claude Code: ask
  • memeswap_brand_kitUse before producing any MemeSwap promotion; returns the approved brand kit (artwork URLs, colours, logos, copy and usage rules) from GET /brand/kit.json, relayed as is.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Use before producing any MemeSwap promotion; returns the approved brand kit (artwork URLs, colours, logos, copy and usage rules) from GET /brand/kit.json, relayed as is.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_buildBuilds unsigned swap material so the user can buy (or sell) a listed meme coin (POST /api/build); wallet must review and sign.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Builds unsigned swap material so the user can buy (or sell) a listed meme coin (POST /api/build); wallet must review and sign. Not a launch/create-token tool. Fee 0.85% on fee-enabled trades. NFA. Does NOT authorize, sign, submit or confirm.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_chainsNetworks for meme research / buy routing from GET /api/chains (keys, explorers, aggregators).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Networks for meme research / buy routing from GET /api/chains (keys, explorers, aggregators).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_create_credentialCreate scoped user API token (POST /api/v1.1/me/credentials).1 finding

    Why it is in this group

    • The name "memeswap_create_credential" says "create": a word for a change.

    Findings

    • High

      The description refers to "/api/v1.1/me/credentials".

      Matched text

      description: "Create scoped user API token (POST /api/v1.1/me/credentials). Usually wallet-session only on portal..."

      What this check looks for
    Description, as the server wrote it
    Create scoped user API token (POST /api/v1.1/me/credentials). Usually wallet-session only on portal; agents get API_GAP or one-time secret once: show once, never log.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_game_mePublic game/profile card for a wallet (GET /api/game/me): display name, avatar URL choices, scores.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Public game/profile card for a wallet (GET /api/game/me): display name, avatar URL choices, scores. No secrets.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_growth_helpUse first when an agent will recruit people, run a Squad, earn referral fees or post token reels; returns the flow in order, the signing messages and the rules in plain words (the …No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Use first when an agent will recruit people, run a Squad, earn referral fees or post token reels; returns the flow in order, the signing messages and the rules in plain words (the server enforces every rule).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • memeswap_healthReadiness for meme research / buy routing from GET /api/health.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Readiness for meme research / buy routing from GET /api/health. Confirms the origin is up and fee routes are configured (0.85%). Not per-token data.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_marketing_helpUse when an agent will promote MemeSwap anywhere; returns how to do it with attribution (referral link, App Store link, reels with AI disclosure) and the copy rules, in plain words…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Use when an agent will promote MemeSwap anywhere; returns how to do it with attribution (referral link, App Store link, reels with AI disclosure) and the copy rules, in plain words.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • memeswap_onboarding_helpOnboard a human signer for non-custodial meme buys via MCP: connect wallet (human signs), set username/avatar, wallet-ref duct, scoped credentials.1 finding

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Info

      The description mentions "credentials".

      Matched text

      description: "...sername/avatar, wallet-ref duct, scoped credentials. No custody / no auto-trade."

      What this check looks for
    Description, as the server wrote it
    Onboard a human signer for non-custodial meme buys via MCP: connect wallet (human signs), set username/avatar, wallet-ref duct, scoped credentials. No custody / no auto-trade.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • memeswap_portfolioPublic-address holdings check before/after a meme buy (GET /api/portfolio).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Public-address holdings check before/after a meme buy (GET /api/portfolio). Address is routing input, not proof of ownership.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_quoteIndicative buy/sell quote for a listed meme coin from GET /api/quote.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Indicative buy/sell quote for a listed meme coin from GET /api/quote. Does not execute. Next step: memeswap_build. Quotes can expire; request a fresh quote before build.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_reel_postUse to post an agent reel about a listed token from an https video URL; opens /api/reels/agent/upload-session with the bearer and {chain, token, caption, fileSha256, aiDisclosure},…No findings

    Why it is in this group

    • The name "memeswap_reel_post" says "post": a word for a change.
    Description, as the server wrote it
    Use to post an agent reel about a listed token from an https video URL; opens /api/reels/agent/upload-session with the bearer and {chain, token, caption, fileSha256, aiDisclosure}, uploads the bytes, and returns {reelId, streamUid, fileSha256, status}.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_referral_acceptUse once per wallet to record the referrer terms acceptance (POST /api/referrals/accept); returns the server acceptance record.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Use once per wallet to record the referrer terms acceptance (POST /api/referrals/accept); returns the server acceptance record.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_referral_codeUse after the terms are accepted to get the referral code, link, shareText and rules (POST /api/referrals/code); ts is the epoch ms inside the signed referral message.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Use after the terms are accepted to get the referral code, link, shareText and rules (POST /api/referrals/code); ts is the epoch ms inside the signed referral message.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_referral_statsUse to read counts for a referral code (GET /api/referrals/stats); public counts, and with wallet, signature and ts (the referral message signature) the referrer own earnings rows.1 finding

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "memeswap_referral_stats" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "read": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Use to read counts for a referral code (GET /api/referrals/stats); public counts, and with wallet, signature and ts (the referral message signature) the referrer own earnings rows.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_referral_termsUse before accepting referrer terms; returns the current termsVersion, terms and rules URLs and the acceptance message templates (GET /api/referrals/terms).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Use before accepting referrer terms; returns the current termsVersion, terms and rules URLs and the acceptance message templates (GET /api/referrals/terms).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_select_wallet_refSelect active wallet-ref letter (PUT /api/v1.1/me/refs/active).No findings

    Why it is in this group

    • The name "memeswap_select_wallet_ref" says "select": a word for a change.
    Description, as the server wrote it
    Select active wallet-ref letter (PUT /api/v1.1/me/refs/active). Requires live user API + refs:write.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_session_messageUse to start a wallet session; returns {wallet, ts, nonce, message} for the wallet to personal_sign, then pass the signature to memeswap_session_open.1 finding

    Why it is in this group

    • The description's first verb is "start": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "memeswap_session_message" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "start": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Use to start a wallet session; returns {wallet, ts, nonce, message} for the wallet to personal_sign, then pass the signature to memeswap_session_open.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • memeswap_session_openUse after signing the session message; posts {wallet, ts, nonce, signature} to /api/game/session and returns {token, wallet, expiresAt}, the caller bearer for social login, earn su…No findings

    Why it is in this group

    • The name "memeswap_session_open" says "open": a word for a change.
    Description, as the server wrote it
    Use after signing the session message; posts {wallet, ts, nonce, signature} to /api/game/session and returns {token, wallet, expiresAt}, the caller bearer for social login, earn summary and reel posts.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_set_avatarUpload wallet/profile image (POST /api/game/avatar).No findings

    Why it is in this group

    • The name "memeswap_set_avatar" says "set": a word for a change.
    Description, as the server wrote it
    Upload wallet/profile image (POST /api/game/avatar). Needs session bearer + image bytes; MCP does not accept raw image uploads in v0.2.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_set_profileSet display name / emoji / preset avatar (POST /api/game/profile).No findings

    Why it is in this group

    • The name "memeswap_set_profile" says "set": a word for a change.
    Description, as the server wrote it
    Set display name / emoji / preset avatar (POST /api/game/profile). Needs wallet session bearer or signed profile message: MCP cannot sign. Returns guidance until agent session duct exists.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_set_wallet_refsReplace wallet-ref list (PUT /api/v1.1/me/refs).No findings

    Why it is in this group

    • The name "memeswap_set_wallet_refs" says "set": a word for a change.
    Description, as the server wrote it
    Replace wallet-ref list (PUT /api/v1.1/me/refs). Public addresses only. Requires live user API + refs:write token.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_social_loginUse with a session bearer to sign in to Squads (POST /api/social/login/wallet-session); returns {social, profile, badge}, where social is the cookie value every Squads tool takes.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Use with a session bearer to sign in to Squads (POST /api/social/login/wallet-session); returns {social, profile, badge}, where social is the cookie value every Squads tool takes.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_squad_applyUse to apply to join a Squad (POST /api/social/community/squads/apply {squadId, requestId}); returns the application the leader decides on.No findings

    Why it is in this group

    • The name "memeswap_squad_apply" says "apply": a word for a change.
    Description, as the server wrote it
    Use to apply to join a Squad (POST /api/social/community/squads/apply {squadId, requestId}); returns the application the leader decides on.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_squad_createUse to found a Squad (POST /api/social/community/squads/create {name, tag, requestId}); returns the new squad with its invite link.No findings

    Why it is in this group

    • The name "memeswap_squad_create" says "create": a word for a change.
    Description, as the server wrote it
    Use to found a Squad (POST /api/social/community/squads/create {name, tag, requestId}); returns the new squad with its invite link.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_squad_set_privacyUse to change the squad privacy switches (POST /api/social/community/squads/privacy {expectedRevision, showIdentity, showSize}); returns the new revision.No findings

    Why it is in this group

    • The name "memeswap_squad_set_privacy" says "set": a word for a change.
    Description, as the server wrote it
    Use to change the squad privacy switches (POST /api/social/community/squads/privacy {expectedRevision, showIdentity, showSize}); returns the new revision.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • memeswap_tokenDeep profile for one meme coin before a buy decision (risk/market) via GET /api/token/:chain/:address.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Deep profile for one meme coin before a buy decision (risk/market) via GET /api/token/:chain/:address.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_tokensListed meme coin market rows from GET /api/tokens: use when the user asks for hot / new / trending memes to research before a buy.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Listed meme coin market rows from GET /api/tokens: use when the user asks for hot / new / trending memes to research before a buy. Prefer memeswap_token for one address. Observations can be stale.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_trading_helpFirst read for agents helping users buy a hot meme coin or research memecoins via quote→unsigned build; wallet signs.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    First read for agents helping users buy a hot meme coin or research memecoins via quote→unsigned build; wallet signs. Not a token launcher. Fee 0.85%. NFA. Security bar: unsigned construction only; no custody, no signing, no unrestricted submit.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • memeswap_xstatusProvider-reported bridge transaction status (GET /api/xstatus).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Provider-reported bridge transaction status (GET /api/xstatus). Observational; may lag final chain state.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Only reads 11Claude Code: allow
  • memeswap_earn_leaderboardUse to read the public Earn leaderboards (GET /api/earn/leaderboard); returns the rows the server ranks for board, period, role and metric.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Use to read the public Earn leaderboards (GET /api/earn/leaderboard); returns the rows the server ranks for board, period, role and metric.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_earn_summaryUse to read pending and available Earn amounts for the session wallet (GET /api/earn/summary?wallet=, Authorization: Bearer); returns the server summary; scope=profile totals every…No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Use to read pending and available Earn amounts for the session wallet (GET /api/earn/summary?wallet=, Authorization: Bearer); returns the server summary; scope=profile totals every wallet of the verified profile.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_list_credentialsList scoped API credential metadata (GET /api/v1.1/me/credentials).2 findings

    Why it is in this group

    • The name "memeswap_list_credentials" says "list": a word for reading.

    Findings

    • High

      The description refers to "/api/v1.1/me/credentials".

      Matched text

      description: "...ist scoped API credential metadata (GET /api/v1.1/me/credentials). Never returns secrets. Requires live..."

      What this check looks for
    • Info

      The description mentions "credential".

      Matched text

      description: "List scoped API credential metadata (GET /api/v1.1/me/credentials)..."

      What this check looks for
    Description, as the server wrote it
    List scoped API credential metadata (GET /api/v1.1/me/credentials). Never returns secrets. Requires live user API.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_list_wallet_refsList wallet refs [{wallet, override}] + active letter (GET /api/v1.1/me/refs).No findings

    Why it is in this group

    • The name "memeswap_list_wallet_refs" says "list": a word for reading.
    Description, as the server wrote it
    List wallet refs [{wallet, override}] + active letter (GET /api/v1.1/me/refs). Requires live user API + scoped token.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_reel_statusUse to poll one reel (GET /api/reels/<reelId>); returns the server reel with status, hiddenReason, removedReason, aiDisclosure and tokenCard; pass the creator session to see a draf…No findings

    Why it is in this group

    • The name "memeswap_reel_status" says "status": a word for reading.
    Description, as the server wrote it
    Use to poll one reel (GET /api/reels/<reelId>); returns the server reel with status, hiddenReason, removedReason, aiDisclosure and tokenCard; pass the creator session to see a draft, hidden or removed reel.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_referral_accept_messageUse to get the two messages a referrer signs with fresh timestamps; returns the terms acceptance message (ISO ts) for memeswap_referral_accept and the referral message (epoch ms) f…No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Use to get the two messages a referrer signs with fresh timestamps; returns the terms acceptance message (ISO ts) for memeswap_referral_accept and the referral message (epoch ms) for memeswap_referral_code and memeswap_referral_stats.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_social_providersList social connect providers (GET /api/social/providers).No findings

    Why it is in this group

    • The description's first verb is "list": a word for reading.
    Description, as the server wrote it
    List social connect providers (GET /api/social/providers). OAuth still requires a human browser session.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_squad_directoryUse to browse or search squads by name or tag (GET /api/social/community/squads/directory); returns items with invite links and nextCursor.No findings

    Why it is in this group

    • The description's first verb is "browse": a word for reading.
    Description, as the server wrote it
    Use to browse or search squads by name or tag (GET /api/social/community/squads/directory); returns items with invite links and nextCursor.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_squad_mineUse to read the caller own squad, role and membership (GET /api/social/community/squads/mine); returns the server answer plus the invite link.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Use to read the caller own squad, role and membership (GET /api/social/community/squads/mine); returns the server answer plus the invite link.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_squad_privacyUse to read the caller squad privacy switches (GET /api/social/community/squads/privacy); returns revision, showIdentity and showSize.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Use to read the caller squad privacy switches (GET /api/social/community/squads/privacy); returns revision, showIdentity and showSize.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • memeswap_squad_share_cardUse to get the invite card for the caller own squad (GET /api/social/community/squads/share-card?squadId=); returns the card plus the link https://memeswap.fun/squad/<TAG>.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Use to get the invite card for the caller own squad (GET /api/social/community/squads/share-card?squadId=); returns the card plus the link https://memeswap.fun/squad/<TAG>.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.2.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http trading https://mcp.memeswap.fun/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__trading__memeswap_social_providers",
      "mcp__trading__memeswap_list_wallet_refs",
      "mcp__trading__memeswap_list_credentials",
      "mcp__trading__memeswap_referral_accept_message",
      "mcp__trading__memeswap_squad_mine",
      "mcp__trading__memeswap_squad_directory",
      "mcp__trading__memeswap_squad_share_card",
      "mcp__trading__memeswap_squad_privacy",
      "mcp__trading__memeswap_earn_summary",
      "mcp__trading__memeswap_earn_leaderboard",
      "mcp__trading__memeswap_reel_status"
    ],
    "ask": [
      "mcp__trading__memeswap_trading_help",
      "mcp__trading__memeswap_health",
      "mcp__trading__memeswap_chains",
      "mcp__trading__memeswap_tokens",
      "mcp__trading__memeswap_token",
      "mcp__trading__memeswap_portfolio",
      "mcp__trading__memeswap_quote",
      "mcp__trading__memeswap_build",
      "mcp__trading__memeswap_xquote",
      "mcp__trading__memeswap_onboarding_help",
      "mcp__trading__memeswap_game_me",
      "mcp__trading__memeswap_set_wallet_refs",
      "mcp__trading__memeswap_select_wallet_ref",
      "mcp__trading__memeswap_create_credential",
      "mcp__trading__memeswap_set_profile",
      "mcp__trading__memeswap_set_avatar",
      "mcp__trading__memeswap_xstatus",
      "mcp__trading__memeswap_growth_help",
      "mcp__trading__memeswap_session_message",
      "mcp__trading__memeswap_session_open",
      "mcp__trading__memeswap_social_login",
      "mcp__trading__memeswap_referral_terms",
      "mcp__trading__memeswap_referral_accept",
      "mcp__trading__memeswap_referral_code",
      "mcp__trading__memeswap_referral_stats",
      "mcp__trading__memeswap_squad_create",
      "mcp__trading__memeswap_squad_apply",
      "mcp__trading__memeswap_squad_set_privacy",
      "mcp__trading__memeswap_reel_post",
      "mcp__trading__memeswap_brand_kit",
      "mcp__trading__memeswap_marketing_help"
    ],
    "deny": [
      "mcp__trading__memeswap_revoke_credential"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as trading. Review it before you use it.