Skip to content

Geode

com.geodeapps.mcp/geodemcp.geodeapps.comstreamable-httpv0.1.5Scanned

Use the Geode blockchain's apps: marketplace, social, surveys, messaging, DNS and GEODE transfers.

138 tools: 17 can delete or cancel things, 9 do something that can't be undone, 60 change things and 52 only read.

Tools: 17 delete, 9 irreversible, 60 write, 52 read.
  • Reads private data · 9
  • Reads text others write · 135
  • Can send data out · 8
  • 4 findings

Tools listed without sign-in. Remote posture

Anlyon alternative

86 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

138 tools

Deletes or cancels 17Claude Code: deny
  • geode_balances_transferSend GEODE from `signer` to another account (keep-alive transfer: your account can never be emptied below the minimum balance).Reads text others writeNo findings

    Why it is in this group

    • The name "geode_balances_transfer" says "transfer": a word for a change that another call does not undo.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Send GEODE from `signer` to another account (keep-alive transfer: your account can never be emptied below the minimum balance). Irreversible, so the first call returns a confirm_token and the real cost; call again with it to get the intent. Sign with geode-local-signer, restating the recipient and amount in `expect`, then submit with geode_submit_intent. Sending to a new address creates that account (at least 1 GEODE). Counts toward the per-transaction and rolling 24-hour caps.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_dns_transferTransfer ownership of a DNS name you own to another account.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_dns_transfer" says "transfer": a word for a change that another call does not undo.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Transfer ownership of a DNS name you own to another account. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_market_delete_a_productDelete one of your products from your store.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_delete_a_product" says "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete one of your products from your store. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_market_delete_a_serviceDelete one of your services from your store.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_delete_a_service" says "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete one of your services from your store. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_market_deny_resolution_requestSeller: deny a buyer's problem report on an order.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_deny_resolution_request" says "request": a word for a change.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Seller: deny a buyer's problem report on an order. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_market_issue_refundSeller: resolve a reported problem by refunding the buyer.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_issue_refund" says "refund": a word that usually means money moves, which cannot be taken back.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Seller: resolve a reported problem by refunding the buyer. `value` is the refund you send from your own balance. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_market_refuse_an_orderSeller: refuse an order that has not shipped yet; the buyer is refunded in full.Reads text others writeNo findings

    Why it is in this group

    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Seller: refuse an order that has not shipped yet; the buyer is refunded in full. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_market_remove_item_from_cartRemove an item from your cart.Reads text others write1 finding

    Why it is in this group

    • The name "geode_market_remove_item_from_cart" says "remove": a word for removing or ending something.
    • The server marks it not destructive (destructiveHint: false), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "geode_market_remove_item_from_cart" not destructive (destructiveHint: false), and its own name, description or input give the class "destructive".

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "geode_market_remove_item_from_cart" says "remove": a word for removing or ending something.

      What this check looks for
    Description, as the server wrote it
    Remove an item from your cart. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_remove_store_bookmarkRemove a store bookmark.Reads text others write1 finding

    Why it is in this group

    • The name "geode_market_remove_store_bookmark" says "remove": a word for removing or ending something.
    • The server marks it not destructive (destructiveHint: false), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "geode_market_remove_store_bookmark" not destructive (destructiveHint: false), and its own name, description or input give the class "destructive".

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "geode_market_remove_store_bookmark" says "remove": a word for removing or ending something.

      What this check looks for
    Description, as the server wrote it
    Remove a store bookmark. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_clear_my_paid_inboxDelete every message in your paid inbox.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete every message in your paid inbox. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_messaging_delete_all_messages_to_accountDelete all private messages you sent to an account.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_delete_all_messages_to_account" says "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete all private messages you sent to an account. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_messaging_delete_all_messages_to_groupDelete all messages you sent to a group.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_delete_all_messages_to_group" says "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete all messages you sent to a group. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_messaging_delete_an_open_listDelete an open list you own.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_delete_an_open_list" says "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete an open list you own. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_messaging_delete_single_message_to_accountDelete one private message you sent.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_delete_single_message_to_account" says "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete one private message you sent. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_messaging_delete_single_message_to_groupDelete one message you sent to a group.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_delete_single_message_to_group" says "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete one message you sent to a group. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_messaging_delete_single_message_to_listDelete one message you broadcast to a list.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_delete_single_message_to_list" says "delete": a word for removing or ending something.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Delete one message you broadcast to a list. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • geode_surveys_close_my_surveyClose one of your surveys (`length` is 1, 3 or 5); its unspent budget is refunded to you.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_surveys_close_my_survey" says "close": a word for a change.
    • The description says "Irreversible".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Close one of your surveys (`length` is 1, 3 or 5); its unspent budget is refunded to you. Fails if the budget is already fully paid out. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent. Irreversible: the first call returns a confirm_token; call again with it to proceed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
Can't be undone 9Claude Code: ask
  • geode_market_message_the_sellerSend a message about one of your orders to its seller.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The description's first verb is "send": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe description's first verb is "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Send a message about one of your orders to its seller. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_send_message_to_groupSend a message to a group you belong to.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "geode_messaging_send_message_to_group" says "send": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "geode_messaging_send_message_to_group" says "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Send a message to a group you belong to. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_send_message_to_listBroadcast a message to an open list you own.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "geode_messaging_send_message_to_list" says "send": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "geode_messaging_send_message_to_list" says "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Broadcast a message to an open list you own. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_send_paid_messageSend a message to an account's paid inbox (reaches accounts that have not allowed you).Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "geode_messaging_send_paid_message" says "send": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "geode_messaging_send_paid_message" says "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Send a message to an account's paid inbox (reaches accounts that have not allowed you). `value` must be at least the recipient's inbox fee (see geode_messaging_get_account_settings_data); higher amounts rank higher. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_send_private_messageSend a private message to an account that has allowed you to message it.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "geode_messaging_send_private_message" says "send": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "geode_messaging_send_private_message" says "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Send a private message to an account that has allowed you to message it. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_send_message_publicPost a public message on Geode Social.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "geode_social_send_message_public" says "send": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "geode_social_send_message_public" says "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Post a public message on Geode Social. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_send_paid_message_publicPost a promoted (paid) message.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "geode_social_send_paid_message_public" says "send": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "geode_social_send_paid_message_public" says "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Post a promoted (paid) message. `value` funds endorser payouts; set it to maximum_number_of_paid_endorsers × payment_per_endorser. Accounts whose interests contain target_interests are paid when they elevate it. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_send_reply_publicReply publicly to a post.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "geode_social_send_reply_public" says "send": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "geode_social_send_reply_public" says "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Reply publicly to a post. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_submit_intentBroadcast a transaction you prepared with a geode_* write tool and signed with geode-local-signer (sign_intent).Reads text others writeNo findings

    Why it is in this group

    • The name "geode_submit_intent" says "submit": a word for a change.
    • The description's first verb is "broadcast": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Broadcast a transaction you prepared with a geode_* write tool and signed with geode-local-signer (sign_intent). The server checks the signature against the exact payload it built, then waits for inclusion in a block and returns the result and decoded contract events.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
Changes things 60Claude Code: ask
  • geode_accept_termsRecord your signed acceptance of the current Terms of Use (required once per Terms version, before your first write).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
    Record your signed acceptance of the current Terms of Use (required once per Terms version, before your first write). Produce the signature with geode-local-signer accept_terms.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: false
  • geode_dns_registerRegister a Geode DNS name to `signer`.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Register a Geode DNS name to `signer`. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_dns_set_addressPoint a DNS name you own at an account address.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_dns_set_address" says "set": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Point a DNS name you own at an account address. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_exchange_edit_listingEdit one of your exchange listings (price, method, inventory, location) or hide it.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_exchange_edit_listing" says "edit": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Edit one of your exchange listings (price, method, inventory, location) or hide it. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_exchange_new_listingCreate a listing on the Geode private coin exchange: the coin you offer, the coin you want, price, payment method, inventory and location.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Create a listing on the Geode private coin exchange: the coin you offer, the coin you want, price, payment method, inventory and location. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_endorse_claimEndorse another account's Life and Work claim.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Endorse another account's Life and Work claim. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_make_claim_educationAdd an education claim to your Life and Work resume (description or keywords, plus an optional https link).Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Add an education claim to your Life and Work resume (description or keywords, plus an optional https link). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_make_claim_expertiseAdd an expertise claim to your Life and Work resume (description or keywords, plus an optional https link).Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Add an expertise claim to your Life and Work resume (description or keywords, plus an optional https link). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_make_claim_gooddeedAdd a good-deed claim to your Life and Work resume (description or keywords, plus an optional https link).Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Add a good-deed claim to your Life and Work resume (description or keywords, plus an optional https link). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_make_claim_intellectualpropertyAdd an intellectual-property claim to your Life and Work resume, including the hash of your IP file.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Add an intellectual-property claim to your Life and Work resume, including the hash of your IP file. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_make_claim_workhistoryAdd a work-history claim to your Life and Work resume (description or keywords, plus an optional https link).Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Add a work-history claim to your Life and Work resume (description or keywords, plus an optional https link). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_show_or_hide_claimShow or hide one of your Life and Work claims on your resume.Reads text others write1 finding

    Why it is in this group

    • The name "geode_lifeandwork_show_or_hide_claim" says "show": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "geode_lifeandwork_show_or_hide_claim" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "geode_lifeandwork_show_or_hide_claim" says "show": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Show or hide one of your Life and Work claims on your resume. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_add_a_productList a product (digital or physical) in your store: title, price, brand, category, description, inventory, media links, delivery details, and an optional affiliate (zeno) percentag…Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_add_a_product" says "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List a product (digital or physical) in your store: title, price, brand, category, description, inventory, media links, delivery details, and an optional affiliate (zeno) percentage. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_add_a_serviceList a service (online or in person) in your store: title, price, category, description, inventory, media and booking links, and an optional affiliate (zeno) percentage.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_add_a_service" says "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List a service (online or in person) in your store: title, price, category, description, inventory, media and booking links, and an optional affiliate (zeno) percentage. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_add_item_to_cartAdd a product or service (by id) to your Marketplace cart with a quantity.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_add_item_to_cart" says "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Add a product or service (by id) to your Marketplace cart with a quantity. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_bookmark_a_storeBookmark a seller's store.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_bookmark_a_store" says "store": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Bookmark a seller's store. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_checkout_cartBuy everything in your cart.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_checkout_cart" says "checkout": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Buy everything in your cart. `value` must be at least the cart total (see geode_market_view_my_cart). Digital products and services are delivered, and the seller paid, immediately; physical products wait for the seller to ship and deliver. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_go_to_storeView a seller's public Marketplace store: seller profile, products and services.Reads text others write1 finding

    Why it is in this group

    • The name "geode_market_go_to_store" says "store": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

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

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "geode_market_go_to_store" says "store": a word for a change.

      What this check looks for
    Description, as the server wrote it
    View a seller's public Marketplace store: seller profile, products and services. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_issue_replacementSeller: resolve a reported problem by sending a replacement (with new tracking information).Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Seller: resolve a reported problem by sending a replacement (with new tracking information). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_message_the_buyerSeller: send a message about an order to its buyer.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Seller: send a message about an order to its buyer. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_rate_a_buyerSeller: rate (1 to 5) and review the buyer of one of your orders.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Seller: rate (1 to 5) and review the buyer of one of your orders. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_rate_a_product_or_serviceRate (1 to 5) and review a product or service.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Rate (1 to 5) and review a product or service. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_report_problem_damagedReport that a delivered order arrived damaged.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Report that a delivered order arrived damaged. Only allowed within 24 hours of delivery. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_report_problem_not_receivedReport that an order marked delivered was not received.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Report that an order marked delivered was not received. Only allowed within 24 hours of delivery. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_report_problem_wrong_itemReport that a delivered order was the wrong item.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Report that a delivered order was the wrong item. Only allowed within 24 hours of delivery. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_update_buyer_account_settingsSet your Marketplace buyer name and location.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_update_buyer_account_settings" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Set your Marketplace buyer name and location. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_update_cart_item_quantityChange the quantity of an item in your cart.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_update_cart_item_quantity" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Change the quantity of an item in your cart. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_update_order_tracking_informationSeller: update an order's tracking and move it forward: awaiting → shipped, then shipped → delivered (delivery releases payment to you).Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_update_order_tracking_information" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Seller: update an order's tracking and move it forward: awaiting → shipped, then shipped → delivered (delivery releases payment to you). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_update_product_detailsUpdate one of your products' details (the title cannot change).Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_update_product_details" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Update one of your products' details (the title cannot change). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_update_seller_account_settingsSet your store's name, location, description and links.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_update_seller_account_settings" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Set your store's name, location, description and links. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_update_service_detailsUpdate one of your services' details (the title cannot change).Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_update_service_details" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Update one of your services' details (the title cannot change). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_allow_accountAllow accounts to send you private messages.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Allow accounts to send you private messages. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_block_accountBlock an account from messaging you.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Block an account from messaging you. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_disallow_accountStop allowing an account to send you private messages.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "stop": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Stop allowing an account to send you private messages. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_join_a_groupJoin a messaging group.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Join a messaging group. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_join_an_open_listSubscribe to an open broadcast list.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_join_an_open_list" says "open": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Subscribe to an open broadcast list. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_leave_a_groupLeave a messaging group.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Leave a messaging group. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_make_a_new_groupCreate a messaging group with a first message.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Create a messaging group with a first message. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_make_a_new_listCreate an open broadcast list that others can subscribe to.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_make_a_new_list" says "list": a word for reading.
    • The description's first verb is "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Create an open broadcast list that others can subscribe to. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_unblock_accountUnblock an account.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Unblock an account. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_unsubscribe_from_open_listUnsubscribe from an open broadcast list.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_unsubscribe_from_open_list" says "unsubscribe": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Unsubscribe from an open broadcast list. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_update_group_settingsUpdate a group's description and search visibility.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_update_group_settings" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Update a group's description and search visibility. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_update_settingsSet your messaging username, interests, paid-inbox fee and search visibility.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_update_settings" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Set your messaging username, interests, paid-inbox fee and search visibility. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_profile_new_profileCreate your Geode profile (once per account; use update_your_profile afterwards).Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Create your Geode profile (once per account; use update_your_profile afterwards). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_profile_update_your_profileUpdate your Geode profile.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_profile_update_your_profile" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Update your Geode profile. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_block_accountBlock an account on Geode Social.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Block an account on Geode Social. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_elevate_messageEndorse (elevate) a public post.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Endorse (elevate) a public post. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_elevate_paid_messageEndorse a paid post.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Endorse a paid post. If your social interests contain its target interests and payouts remain, you receive the per-endorser payment. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_follow_accountFollow an account on Geode Social.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Follow an account on Geode Social. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_unblock_accountUnblock an account on Geode Social.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Unblock an account on Geode Social. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_unfollow_accountStop following an account.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "stop": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Stop following an account. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_update_settingsSet your social username, interests, and feed sizes.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_social_update_settings" says "update": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Set your social username, interests, and feed sizes. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_make_a_new_survey_1Create a 1-question survey that pays each respondent `payout`.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Create a 1-question survey that pays each respondent `payout`. `value` must be at least payout × max_responses (the survey's budget). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_make_a_new_survey_3Create a 3-question survey that pays each respondent `payout`.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Create a 3-question survey that pays each respondent `payout`. `value` must be at least payout × max_responses (the survey's budget). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_make_a_new_survey_5Create a 5-question survey that pays each respondent `payout`.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Create a 5-question survey that pays each respondent `payout`. `value` must be at least payout × max_responses (the survey's budget). Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_take_a_survey_1Answer an open 1-question survey and receive its payout.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Answer an open 1-question survey and receive its payout. Each account can answer a survey once. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_take_a_survey_3Answer an open 3-question survey and receive its payout.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Answer an open 3-question survey and receive its payout. Each account can answer a survey once. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_take_a_survey_5Answer an open 5-question survey and receive its payout.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Answer an open 5-question survey and receive its payout. Each account can answer a survey once. Writes to the chain: this prepares an unsigned transaction (an intent) for `signer`; nothing happens until you sign it with geode-local-signer and submit it with geode_submit_intent.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • geode_upgrade_buildFor mode "authorization" only.Reads text others writeNo 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.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    For mode "authorization" only. Pass every field of `purchase` from geode_upgrade_prepare unchanged, plus your EIP-712 signature. The server simulates the purchase for free (a bad signature never costs you gas) and returns one unsigned transaction for you to send from the same wallet.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_upgrade_prepareBuilds a USDC purchase of a GEODE pack for YOU to sign and send from your own Base wallet (you pay the gas; this server never sends anything).Reads text others writeNo 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.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Builds a USDC purchase of a GEODE pack for YOU to sign and send from your own Base wallet (you pay the gas; this server never sends anything). It first checks the Geode address, your USDC and ETH, stock and limits. mode "approve" (default, any wallet): returns two unsigned transactions, an exact-amount USDC approval and the buy. mode "authorization" (wallets that can sign EIP-712 typed data): returns typed data to sign; then call geode_upgrade_build. Nothing is spent until you send a transaction.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
Only reads 52Show 52 read-only tools
  • geode_account_infoRead-only: whether an address exists on-chain, its free/reserved/frozen balance, the existential deposit (minimum balance), and its nonce.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Read-only: whether an address exists on-chain, its free/reserved/frozen balance, the existential deposit (minimum balance), and its nonce.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_agent_statusRead-only: the current Terms of Use (and whether an address has accepted them), the spending caps, and the address's pending intents.No findings

    Why it is in this group

    • The name "geode_agent_status" says "status": a word for reading.
    Description, as the server wrote it
    Read-only: the current Terms of Use (and whether an address has accepted them), the spending caps, and the address's pending intents.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • geode_dns_get_addressLook up the account address a Geode DNS name points to.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_dns_get_address" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Look up the account address a Geode DNS name points to. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_dns_get_ownerLook up the account that owns a Geode DNS name.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_dns_get_owner" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Look up the account that owns a Geode DNS name. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_exchange_browse_all_listingsBrowse all public listings on the Geode private coin exchange (offer coin, asking coin, price, payment method, inventory, location).Reads text others writeNo findings

    Why it is in this group

    • The name "geode_exchange_browse_all_listings" says "browse": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_exchange_browse_all_listings" says "browse": it reads web pages, which anyone can write.
    • untrusted-inputThe description's first sentence says "browse": it reads web pages, which anyone can write.
    Description, as the server wrote it
    Browse all public listings on the Geode private coin exchange (offer coin, asking coin, price, payment method, inventory, location). Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_exchange_view_my_listingsList the exchange listings created by `caller`.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_exchange_view_my_listings" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the exchange listings created by `caller`. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_get_intentRead-only: the status of an intent (pending, submitting, done, failed) and, once submitted, its result.No findings

    Why it is in this group

    • The name "geode_get_intent" says "get": a word for reading.
    Description, as the server wrote it
    Read-only: the status of an intent (pending, submitting, done, failed) and, once submitted, its result.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • geode_lifeandwork_get_endorsersList the accounts that endorsed a Life and Work claim.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_lifeandwork_get_endorsers" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the accounts that endorsed a Life and Work claim. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_get_full_detailsGet full details of one Life and Work claim, including its endorsers.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_lifeandwork_get_full_details" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get full details of one Life and Work claim, including its endorsers. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_get_matching_claimsSearch Life and Work claims of one claim type by up to three keywords.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_lifeandwork_get_matching_claims" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Search Life and Work claims of one claim type by up to three keywords. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_lifeandwork_get_resumeGet an account's Life and Work resume: all its claims (expertise, work history, education, good deeds, intellectual property) with endorsements.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_lifeandwork_get_resume" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get an account's Life and Work resume: all its claims (expertise, work history, education, good deeds, intellectual property) with endorsements. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_search_products_by_keywordSearch Geode Marketplace products by up to three keywords.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_search_products_by_keyword" says "search": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Search Geode Marketplace products by up to three keywords. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_search_services_by_keywordSearch Geode Marketplace services by up to three keywords.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_search_services_by_keyword" says "search": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Search Geode Marketplace services by up to three keywords. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_search_stores_by_keywordSearch Geode Marketplace stores (seller profiles) by up to three keywords.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_search_stores_by_keyword" says "search": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Search Geode Marketplace stores (seller profiles) by up to three keywords. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_buyer_accountGet `caller`'s Marketplace buyer account: profile, bookmarked stores, digital downloads and orders.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_buyer_account" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get `caller`'s Marketplace buyer account: profile, bookmarked stores, digital downloads and orders. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_cartGet `caller`'s unpaid Marketplace cart: products, services and total.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_cart" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get `caller`'s unpaid Marketplace cart: products, services and total. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_ordersList the Marketplace orders placed by `caller` as a buyer.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_orders" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the Marketplace orders placed by `caller` as a buyer. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_seller_orders_awaitingList `caller`'s seller orders awaiting shipment.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_seller_orders_awaiting" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List `caller`'s seller orders awaiting shipment. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_seller_orders_deliveredList `caller`'s seller orders that were delivered.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_seller_orders_delivered" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List `caller`'s seller orders that were delivered. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_seller_orders_problemList `caller`'s seller orders with a reported problem.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_seller_orders_problem" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List `caller`'s seller orders with a reported problem. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_seller_orders_refusedList `caller`'s seller orders that were refused.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_seller_orders_refused" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List `caller`'s seller orders that were refused. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_seller_orders_resolvedList `caller`'s seller orders whose problems were resolved.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_seller_orders_resolved" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List `caller`'s seller orders whose problems were resolved. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_seller_orders_shippedList `caller`'s seller orders that have shipped.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_seller_orders_shipped" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List `caller`'s seller orders that have shipped. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_market_view_my_seller_profileGet `caller`'s own Marketplace seller account, including its products and services.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_market_view_my_seller_profile" says "view": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get `caller`'s own Marketplace seller account, including its products and services. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_find_groups_by_keywordSearch public messaging groups by up to three keywords.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_find_groups_by_keyword" says "find": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Search public messaging groups by up to three keywords. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_find_lists_by_keywordSearch public open broadcast lists by up to three keywords.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_find_lists_by_keyword" says "find": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Search public open broadcast lists by up to three keywords. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_account_settings_dataGet an account's public messaging settings: username, interests, inbox fee, last update.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_account_settings_data" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "get" and "inbox": it reads mail.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe description's first sentence says "get" and "inbox": it reads inbound email, which other people can write.
    Description, as the server wrote it
    Get an account's public messaging settings: username, interests, inbox fee, last update. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_my_allowed_and_blocked_accountsList the accounts `caller` has allowed and blocked for private messaging.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_my_allowed_and_blocked_accounts" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the accounts `caller` has allowed and blocked for private messaging. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_my_groupsList the messaging groups `caller` belongs to.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_my_groups" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the messaging groups `caller` belongs to. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_my_inboxGet `caller`'s private-message inbox, grouped by conversation.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_my_inbox" says "get": a word for reading.

    What it can reach

    • private-dataThe name "geode_messaging_get_my_inbox" says "get" and "inbox": it reads mail.
    • private-dataThe description's first sentence says "get" and "message": it reads messages.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_messaging_get_my_inbox" says "get" and "inbox": it reads inbound email, which other people can write.
    • untrusted-inputThe description's first sentence says "get" and "message": it reads messages, which other people can write.
    Description, as the server wrote it
    Get `caller`'s private-message inbox, grouped by conversation. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_my_inbox_groupsGet messages delivered to `caller` from its groups.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_my_inbox_groups" says "get": a word for reading.

    What it can reach

    • private-dataThe name "geode_messaging_get_my_inbox_groups" says "get" and "inbox": it reads mail.
    • private-dataThe description's first sentence says "get" and "message": it reads messages.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_messaging_get_my_inbox_groups" says "get" and "inbox": it reads inbound email, which other people can write.
    • untrusted-inputThe description's first sentence says "get" and "message": it reads messages, which other people can write.
    Description, as the server wrote it
    Get messages delivered to `caller` from its groups. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_my_inbox_listsGet messages delivered to `caller` from the open lists it subscribes to.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_my_inbox_lists" says "get": a word for reading.

    What it can reach

    • private-dataThe name "geode_messaging_get_my_inbox_lists" says "get" and "inbox": it reads mail.
    • private-dataThe description's first sentence says "get" and "message": it reads messages.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_messaging_get_my_inbox_lists" says "get" and "inbox": it reads inbound email, which other people can write.
    • untrusted-inputThe description's first sentence says "get" and "message": it reads messages, which other people can write.
    Description, as the server wrote it
    Get messages delivered to `caller` from the open lists it subscribes to. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_my_open_listsList the open broadcast lists `caller` owns.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_my_open_lists" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the open broadcast lists `caller` owns. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_my_paid_inboxGet `caller`'s paid inbox: messages from non-contacts who paid the inbox fee.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_my_paid_inbox" says "get": a word for reading.

    What it can reach

    • private-dataThe name "geode_messaging_get_my_paid_inbox" says "get" and "inbox": it reads mail.
    • private-dataThe description's first sentence says "get" and "inbox": it reads mail.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_messaging_get_my_paid_inbox" says "get" and "inbox": it reads inbound email, which other people can write.
    • untrusted-inputThe description's first sentence says "get" and "inbox": it reads inbound email, which other people can write.
    Description, as the server wrote it
    Get `caller`'s paid inbox: messages from non-contacts who paid the inbox fee. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_messaging_get_my_subscribed_listsList the open broadcast lists `caller` subscribes to.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_messaging_get_my_subscribed_lists" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the open broadcast lists `caller` subscribes to. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_profile_get_account_profileGet an account's Geode profile: display name, location, tags, bio, links and linked app accounts.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_profile_get_account_profile" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get an account's Geode profile: display name, location, tags, bio, links and linked app accounts. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_get_account_followingList the accounts an account follows on Geode Social.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_social_get_account_following" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the accounts an account follows on Geode Social. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_get_account_paid_messagesList an account's paid (promoted) Social posts.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_social_get_account_paid_messages" says "get": a word for reading.

    What it can reach

    • private-dataThe name "geode_social_get_account_paid_messages" says "get" and "message": it reads messages.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_social_get_account_paid_messages" says "get" and "message": it reads messages, which other people can write.
    • untrusted-inputThe description's first sentence says "list" and "post": it reads posts, which other people can write.
    Description, as the server wrote it
    List an account's paid (promoted) Social posts. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_get_account_profileGet an account's Social profile: username, followers, who it follows, and its posts.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_social_get_account_profile" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe description's first sentence says "get" and "post": it reads posts, which other people can write.
    Description, as the server wrote it
    Get an account's Social profile: username, followers, who it follows, and its posts. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_get_details_for_messageGet full details of one Social post.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_social_get_details_for_message" says "get": a word for reading.

    What it can reach

    • private-dataThe name "geode_social_get_details_for_message" says "get" and "message": it reads messages.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_social_get_details_for_message" says "get" and "message": it reads messages, which other people can write.
    • untrusted-inputThe description's first sentence says "get" and "post": it reads posts, which other people can write.
    Description, as the server wrote it
    Get full details of one Social post. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_get_details_for_paid_messageGet full details of one paid Social post, including endorsers and staked amounts.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_social_get_details_for_paid_message" says "get": a word for reading.

    What it can reach

    • private-dataThe name "geode_social_get_details_for_paid_message" says "get" and "message": it reads messages.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_social_get_details_for_paid_message" says "get" and "message": it reads messages, which other people can write.
    • untrusted-inputThe description's first sentence says "get" and "post": it reads posts, which other people can write.
    Description, as the server wrote it
    Get full details of one paid Social post, including endorsers and staked amounts. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_get_paid_feedGet `caller`'s paid (promoted) Social feed, optionally filtered by a keyword.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_social_get_paid_feed" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get `caller`'s paid (promoted) Social feed, optionally filtered by a keyword. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_get_public_feedGet `caller`'s Geode Social feed (posts from accounts it follows).Reads text others writeNo findings

    Why it is in this group

    • The name "geode_social_get_public_feed" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe description's first sentence says "get" and "post": it reads posts, which other people can write.
    Description, as the server wrote it
    Get `caller`'s Geode Social feed (posts from accounts it follows). Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_social_get_replies_for_messageList the replies to a Social post.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "geode_social_get_replies_for_message" says "get": a word for reading.

    What it can reach

    • private-dataThe name "geode_social_get_replies_for_message" says "get" and "message": it reads messages.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "geode_social_get_replies_for_message" says "get" and "reply": it reads comments, which other people can write.
    • untrusted-inputThe description's first sentence says "list" and "reply": it reads comments, which other people can write.
    Description, as the server wrote it
    List the replies to a Social post. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_get_available_surveysList open surveys (1-, 3- and 5-question) with their questions, payout per response and remaining capacity.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_surveys_get_available_surveys" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List open surveys (1-, 3- and 5-question) with their questions, payout per response and remaining capacity. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_get_my_surveysList the surveys `caller` created.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_surveys_get_my_surveys" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List the surveys `caller` created. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_get_survey_by_idLook up one survey by its survey_id (from geode_surveys_get_available_surveys, geode_surveys_get_my_surveys or a shared link): its questions, payout per response and remaining capa…Reads text others writeNo findings

    Why it is in this group

    • The name "geode_surveys_get_survey_by_id" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Look up one survey by its survey_id (from geode_surveys_get_available_surveys, geode_surveys_get_my_surveys or a shared link): its questions, payout per response and remaining capacity. Returns it only while it is open, i.e. funded, payout > 0 and under its response cap; a closed, unfunded or full survey (or an unknown id) comes back as an empty result. Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_get_survey_responses_1Get responses to one of your 1-question surveys.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_surveys_get_survey_responses_1" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get responses to one of your 1-question surveys. Only the owner can read them: pass `caller` = the owner. Responses are numbered from 1; returns numbers from..to-1 (at most 100 per call). Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_get_survey_responses_3Get responses to one of your 3-question surveys.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_surveys_get_survey_responses_3" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get responses to one of your 3-question surveys. Only the owner can read them: pass `caller` = the owner. Responses are numbered from 1; returns numbers from..to-1 (at most 100 per call). Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_surveys_get_survey_responses_5Get responses to one of your 5-question surveys.Reads text others writeNo findings

    Why it is in this group

    • The name "geode_surveys_get_survey_responses_5" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Get responses to one of your 5-question surveys. Only the owner can read them: pass `caller` = the owner. Responses are numbered from 1; returns numbers from..to-1 (at most 100 per call). Read-only; no signature. Optional `caller`: the account whose view to read (for caller-dependent results). Results are paginated with `offset` and `limit` (default 50, max 200).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_upgrade_packsRead-only: the GEODE packs sold for USDC on Base by Sparticle Concepts LLC (Pebble, Diamond), with prices, stock and today's limits.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Read-only: the GEODE packs sold for USDC on Base by Sparticle Concepts LLC (Pebble, Diamond), with prices, stock and today's limits. Pass `buyer` to also see how much that Base address may still buy today. Buying a pack gives a Geode account its upgrade tier automatically.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • geode_upgrade_statusRead-only: given the Base transaction hash of a purchase, reports whether it was paid and whether the GEODE has been delivered on Geode (not_found_or_pending, failed_on_base, paid_…Reads text others writeNo findings

    Why it is in this group

    • The name "geode_upgrade_status" says "status": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Read-only: given the Base transaction hash of a purchase, reports whether it was paid and whether the GEODE has been delivered on Geode (not_found_or_pending, failed_on_base, paid_waiting_for_base_finality, paid_waiting_for_bridge, delivered).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • 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.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

9720 paths in this server alone from private data, through text someone else wrote, to a way out. Denying 8 outbound tools breaks every one.

deny to break every path
{
  "permissions": {
    "deny": [
      "mcp__geode__geode_market_message_the_seller",
      "mcp__geode__geode_messaging_send_message_to_group",
      "mcp__geode__geode_messaging_send_message_to_list",
      "mcp__geode__geode_messaging_send_paid_message",
      "mcp__geode__geode_messaging_send_private_message",
      "mcp__geode__geode_social_send_message_public",
      "mcp__geode__geode_social_send_paid_message_public",
      "mcp__geode__geode_social_send_reply_public"
    ]
  }
}

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Remote posture

What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.

Tools listed without sign-in

Looked at Oct 22, 2026, 14:32 UTC, unchanged since Oct 22, 2026. No credentials were sent and no tool was called. What is looked at.

Reachable
yes
HTTP status of an anonymous initialize
200
tools/list served without credentials
yes
Tools that change things, listed without credentials
86
Protocol version
2025-06-18
WWW-Authenticate on 401
not observed
resource_metadata in WWW-Authenticate
not observed
RFC 9728 protected resource metadata
not observed
Authorization servers
not observed
Legacy HTTP+SSE transport
no
Dynamic client registration
not observed
Client ID metadata documents
not observed
  • HighThe whole server

    The endpoint served tools/list without credentials, and the list has 86 tools that change things (17 destructive, 9 irreversible, 60 write). Whether a call also works without credentials was not tested: tools are never called.

    Matched text

    https://mcp.geodeapps.com/mcp: tools/list returned 138 tools to an anonymous client, including geode_dns_transfer (destructive), geode_market_remove_store_bookmark (destructive), geode_market_remove_item_from_cart (destructive), geode_market_refuse_an_order (destructive), geode_market_issue_refund (destructive) and 81 more

    What this check looks for

Findings

Matches of fixed checks, with the text they matched.

4 warn
  • The server marks "geode_lifeandwork_show_or_hide_claim" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "geode_lifeandwork_show_or_hide_claim" says "show": a word for reading.

    What this check looks for
  • The server marks "geode_market_remove_store_bookmark" not destructive (destructiveHint: false), and its own name, description or input give the class "destructive".

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "geode_market_remove_store_bookmark" says "remove": a word for removing or ending something.

    What this check looks for
  • The server marks "geode_market_remove_item_from_cart" not destructive (destructiveHint: false), and its own name, description or input give the class "destructive".

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "geode_market_remove_item_from_cart" says "remove": a word for removing or ending something.

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

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "geode_market_go_to_store" says "store": a word for a change.

    What this check looks for

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

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

claude mcp add --transport http geode https://mcp.geodeapps.com/mcp
claude mcp add --transport http geode https://mcp.geodeapps.com/mcp

Run in a terminal.

Claude Code permissions

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

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__geode__geode_dns_get_address",
      "mcp__geode__geode_dns_get_owner",
      "mcp__geode__geode_exchange_browse_all_listings",
      "mcp__geode__geode_exchange_view_my_listings",
      "mcp__geode__geode_lifeandwork_get_resume",
      "mcp__geode__geode_lifeandwork_get_full_details",
      "mcp__geode__geode_lifeandwork_get_endorsers",
      "mcp__geode__geode_lifeandwork_get_matching_claims",
      "mcp__geode__geode_market_search_products_by_keyword",
      "mcp__geode__geode_market_search_services_by_keyword",
      "mcp__geode__geode_market_search_stores_by_keyword",
      "mcp__geode__geode_market_view_my_orders",
      "mcp__geode__geode_market_view_my_buyer_account",
      "mcp__geode__geode_market_view_my_cart",
      "mcp__geode__geode_market_view_my_seller_profile",
      "mcp__geode__geode_market_view_my_seller_orders_awaiting",
      "mcp__geode__geode_market_view_my_seller_orders_shipped",
      "mcp__geode__geode_market_view_my_seller_orders_delivered",
      "mcp__geode__geode_market_view_my_seller_orders_resolved",
      "mcp__geode__geode_market_view_my_seller_orders_problem",
      "mcp__geode__geode_market_view_my_seller_orders_refused",
      "mcp__geode__geode_messaging_get_my_inbox",
      "mcp__geode__geode_messaging_get_my_paid_inbox",
      "mcp__geode__geode_messaging_get_my_allowed_and_blocked_accounts",
      "mcp__geode__geode_messaging_get_my_groups",
      "mcp__geode__geode_messaging_find_groups_by_keyword",
      "mcp__geode__geode_messaging_get_my_open_lists",
      "mcp__geode__geode_messaging_get_my_subscribed_lists",
      "mcp__geode__geode_messaging_find_lists_by_keyword",
      "mcp__geode__geode_messaging_get_account_settings_data",
      "mcp__geode__geode_messaging_get_my_inbox_lists",
      "mcp__geode__geode_messaging_get_my_inbox_groups",
      "mcp__geode__geode_profile_get_account_profile",
      "mcp__geode__geode_social_get_public_feed",
      "mcp__geode__geode_social_get_paid_feed",
      "mcp__geode__geode_social_get_account_profile",
      "mcp__geode__geode_social_get_account_paid_messages",
      "mcp__geode__geode_social_get_account_following",
      "mcp__geode__geode_social_get_details_for_paid_message",
      "mcp__geode__geode_social_get_details_for_message",
      "mcp__geode__geode_social_get_replies_for_message",
      "mcp__geode__geode_surveys_get_survey_responses_5",
      "mcp__geode__geode_surveys_get_survey_responses_3",
      "mcp__geode__geode_surveys_get_survey_responses_1",
      "mcp__geode__geode_surveys_get_available_surveys",
      "mcp__geode__geode_surveys_get_my_surveys",
      "mcp__geode__geode_surveys_get_survey_by_id",
      "mcp__geode__geode_account_info",
      "mcp__geode__geode_get_intent",
      "mcp__geode__geode_agent_status",
      "mcp__geode__geode_upgrade_packs",
      "mcp__geode__geode_upgrade_status"
    ],
    "ask": [
      "mcp__geode__geode_dns_register",
      "mcp__geode__geode_dns_set_address",
      "mcp__geode__geode_exchange_new_listing",
      "mcp__geode__geode_exchange_edit_listing",
      "mcp__geode__geode_lifeandwork_make_claim_expertise",
      "mcp__geode__geode_lifeandwork_make_claim_workhistory",
      "mcp__geode__geode_lifeandwork_make_claim_education",
      "mcp__geode__geode_lifeandwork_make_claim_gooddeed",
      "mcp__geode__geode_lifeandwork_make_claim_intellectualproperty",
      "mcp__geode__geode_lifeandwork_endorse_claim",
      "mcp__geode__geode_lifeandwork_show_or_hide_claim",
      "mcp__geode__geode_market_add_item_to_cart",
      "mcp__geode__geode_market_bookmark_a_store",
      "mcp__geode__geode_market_update_cart_item_quantity",
      "mcp__geode__geode_market_checkout_cart",
      "mcp__geode__geode_market_rate_a_product_or_service",
      "mcp__geode__geode_market_report_problem_damaged",
      "mcp__geode__geode_market_report_problem_wrong_item",
      "mcp__geode__geode_market_report_problem_not_received",
      "mcp__geode__geode_market_message_the_seller",
      "mcp__geode__geode_market_update_buyer_account_settings",
      "mcp__geode__geode_market_update_seller_account_settings",
      "mcp__geode__geode_market_update_order_tracking_information",
      "mcp__geode__geode_market_issue_replacement",
      "mcp__geode__geode_market_message_the_buyer",
      "mcp__geode__geode_market_rate_a_buyer",
      "mcp__geode__geode_market_add_a_product",
      "mcp__geode__geode_market_update_product_details",
      "mcp__geode__geode_market_add_a_service",
      "mcp__geode__geode_market_update_service_details",
      "mcp__geode__geode_market_go_to_store",
      "mcp__geode__geode_messaging_update_settings",
      "mcp__geode__geode_messaging_send_private_message",
      "mcp__geode__geode_messaging_send_message_to_group",
      "mcp__geode__geode_messaging_allow_account",
      "mcp__geode__geode_messaging_disallow_account",
      "mcp__geode__geode_messaging_block_account",
      "mcp__geode__geode_messaging_unblock_account",
      "mcp__geode__geode_messaging_make_a_new_group",
      "mcp__geode__geode_messaging_join_a_group",
      "mcp__geode__geode_messaging_leave_a_group",
      "mcp__geode__geode_messaging_update_group_settings",
      "mcp__geode__geode_messaging_send_message_to_list",
      "mcp__geode__geode_messaging_make_a_new_list",
      "mcp__geode__geode_messaging_join_an_open_list",
      "mcp__geode__geode_messaging_unsubscribe_from_open_list",
      "mcp__geode__geode_messaging_send_paid_message",
      "mcp__geode__geode_profile_new_profile",
      "mcp__geode__geode_profile_update_your_profile",
      "mcp__geode__geode_social_send_message_public",
      "mcp__geode__geode_social_send_paid_message_public",
      "mcp__geode__geode_social_elevate_message",
      "mcp__geode__geode_social_elevate_paid_message",
      "mcp__geode__geode_social_follow_account",
      "mcp__geode__geode_social_unfollow_account",
      "mcp__geode__geode_social_block_account",
      "mcp__geode__geode_social_unblock_account",
      "mcp__geode__geode_social_update_settings",
      "mcp__geode__geode_social_send_reply_public",
      "mcp__geode__geode_surveys_make_a_new_survey_5",
      "mcp__geode__geode_surveys_make_a_new_survey_3",
      "mcp__geode__geode_surveys_make_a_new_survey_1",
      "mcp__geode__geode_surveys_take_a_survey_5",
      "mcp__geode__geode_surveys_take_a_survey_3",
      "mcp__geode__geode_surveys_take_a_survey_1",
      "mcp__geode__geode_submit_intent",
      "mcp__geode__geode_accept_terms",
      "mcp__geode__geode_upgrade_prepare",
      "mcp__geode__geode_upgrade_build"
    ],
    "deny": [
      "mcp__geode__geode_dns_transfer",
      "mcp__geode__geode_market_remove_store_bookmark",
      "mcp__geode__geode_market_remove_item_from_cart",
      "mcp__geode__geode_market_refuse_an_order",
      "mcp__geode__geode_market_issue_refund",
      "mcp__geode__geode_market_deny_resolution_request",
      "mcp__geode__geode_market_delete_a_product",
      "mcp__geode__geode_market_delete_a_service",
      "mcp__geode__geode_messaging_delete_single_message_to_account",
      "mcp__geode__geode_messaging_delete_all_messages_to_account",
      "mcp__geode__geode_messaging_delete_single_message_to_group",
      "mcp__geode__geode_messaging_delete_all_messages_to_group",
      "mcp__geode__geode_messaging_delete_single_message_to_list",
      "mcp__geode__geode_messaging_delete_an_open_list",
      "mcp__geode__geode_messaging_clear_my_paid_inbox",
      "mcp__geode__geode_surveys_close_my_survey",
      "mcp__geode__geode_balances_transfer"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as geode. Review it before you use it.

Capability tags behind 135 rules
  • mcp__geode__geode_dns_register untrusted-input
  • mcp__geode__geode_dns_set_address untrusted-input
  • mcp__geode__geode_dns_transfer untrusted-input
  • mcp__geode__geode_dns_get_address untrusted-input
  • mcp__geode__geode_dns_get_owner untrusted-input
  • mcp__geode__geode_exchange_new_listing untrusted-input
  • mcp__geode__geode_exchange_edit_listing untrusted-input
  • mcp__geode__geode_exchange_browse_all_listings untrusted-input
  • mcp__geode__geode_exchange_view_my_listings untrusted-input
  • mcp__geode__geode_lifeandwork_make_claim_expertise untrusted-input
  • mcp__geode__geode_lifeandwork_make_claim_workhistory untrusted-input
  • mcp__geode__geode_lifeandwork_make_claim_education untrusted-input
  • mcp__geode__geode_lifeandwork_make_claim_gooddeed untrusted-input
  • mcp__geode__geode_lifeandwork_make_claim_intellectualproperty untrusted-input
  • mcp__geode__geode_lifeandwork_endorse_claim untrusted-input
  • mcp__geode__geode_lifeandwork_show_or_hide_claim untrusted-input
  • mcp__geode__geode_lifeandwork_get_resume untrusted-input
  • mcp__geode__geode_lifeandwork_get_full_details untrusted-input
  • mcp__geode__geode_lifeandwork_get_endorsers untrusted-input
  • mcp__geode__geode_lifeandwork_get_matching_claims untrusted-input
  • mcp__geode__geode_market_add_item_to_cart untrusted-input
  • mcp__geode__geode_market_bookmark_a_store untrusted-input
  • mcp__geode__geode_market_remove_store_bookmark untrusted-input
  • mcp__geode__geode_market_remove_item_from_cart untrusted-input
  • mcp__geode__geode_market_update_cart_item_quantity untrusted-input
  • mcp__geode__geode_market_checkout_cart untrusted-input
  • mcp__geode__geode_market_rate_a_product_or_service untrusted-input
  • mcp__geode__geode_market_report_problem_damaged untrusted-input
  • mcp__geode__geode_market_report_problem_wrong_item untrusted-input
  • mcp__geode__geode_market_report_problem_not_received untrusted-input
  • mcp__geode__geode_market_message_the_seller untrusted-input, outbound
  • mcp__geode__geode_market_update_buyer_account_settings untrusted-input
  • mcp__geode__geode_market_update_seller_account_settings untrusted-input
  • mcp__geode__geode_market_update_order_tracking_information untrusted-input
  • mcp__geode__geode_market_refuse_an_order untrusted-input
  • mcp__geode__geode_market_issue_refund untrusted-input
  • mcp__geode__geode_market_issue_replacement untrusted-input
  • mcp__geode__geode_market_deny_resolution_request untrusted-input
  • mcp__geode__geode_market_message_the_buyer untrusted-input
  • mcp__geode__geode_market_rate_a_buyer untrusted-input
  • mcp__geode__geode_market_add_a_product untrusted-input
  • mcp__geode__geode_market_update_product_details untrusted-input
  • mcp__geode__geode_market_add_a_service untrusted-input
  • mcp__geode__geode_market_update_service_details untrusted-input
  • mcp__geode__geode_market_delete_a_product untrusted-input
  • mcp__geode__geode_market_delete_a_service untrusted-input
  • mcp__geode__geode_market_search_products_by_keyword untrusted-input
  • mcp__geode__geode_market_search_services_by_keyword untrusted-input
  • mcp__geode__geode_market_search_stores_by_keyword untrusted-input
  • mcp__geode__geode_market_view_my_orders untrusted-input
  • mcp__geode__geode_market_view_my_buyer_account untrusted-input
  • mcp__geode__geode_market_view_my_cart untrusted-input
  • mcp__geode__geode_market_go_to_store untrusted-input
  • mcp__geode__geode_market_view_my_seller_profile untrusted-input
  • mcp__geode__geode_market_view_my_seller_orders_awaiting untrusted-input
  • mcp__geode__geode_market_view_my_seller_orders_shipped untrusted-input
  • mcp__geode__geode_market_view_my_seller_orders_delivered untrusted-input
  • mcp__geode__geode_market_view_my_seller_orders_resolved untrusted-input
  • mcp__geode__geode_market_view_my_seller_orders_problem untrusted-input
  • mcp__geode__geode_market_view_my_seller_orders_refused untrusted-input
  • mcp__geode__geode_messaging_update_settings untrusted-input
  • mcp__geode__geode_messaging_send_private_message untrusted-input, outbound
  • mcp__geode__geode_messaging_send_message_to_group untrusted-input, outbound
  • mcp__geode__geode_messaging_allow_account untrusted-input
  • mcp__geode__geode_messaging_disallow_account untrusted-input
  • mcp__geode__geode_messaging_block_account untrusted-input
  • mcp__geode__geode_messaging_unblock_account untrusted-input
  • mcp__geode__geode_messaging_delete_single_message_to_account untrusted-input
  • mcp__geode__geode_messaging_delete_all_messages_to_account untrusted-input
  • mcp__geode__geode_messaging_make_a_new_group untrusted-input
  • mcp__geode__geode_messaging_join_a_group untrusted-input
  • mcp__geode__geode_messaging_delete_single_message_to_group untrusted-input
  • mcp__geode__geode_messaging_delete_all_messages_to_group untrusted-input
  • mcp__geode__geode_messaging_leave_a_group untrusted-input
  • mcp__geode__geode_messaging_update_group_settings untrusted-input
  • mcp__geode__geode_messaging_send_message_to_list untrusted-input, outbound
  • mcp__geode__geode_messaging_make_a_new_list untrusted-input
  • mcp__geode__geode_messaging_delete_single_message_to_list untrusted-input
  • mcp__geode__geode_messaging_delete_an_open_list untrusted-input
  • mcp__geode__geode_messaging_join_an_open_list untrusted-input
  • mcp__geode__geode_messaging_unsubscribe_from_open_list untrusted-input
  • mcp__geode__geode_messaging_send_paid_message untrusted-input, outbound
  • mcp__geode__geode_messaging_get_my_inbox private-data, untrusted-input
  • mcp__geode__geode_messaging_get_my_paid_inbox private-data, untrusted-input
  • mcp__geode__geode_messaging_get_my_allowed_and_blocked_accounts untrusted-input
  • mcp__geode__geode_messaging_get_my_groups untrusted-input
  • mcp__geode__geode_messaging_find_groups_by_keyword untrusted-input
  • mcp__geode__geode_messaging_get_my_open_lists untrusted-input
  • mcp__geode__geode_messaging_get_my_subscribed_lists untrusted-input
  • mcp__geode__geode_messaging_find_lists_by_keyword untrusted-input
  • mcp__geode__geode_messaging_get_account_settings_data private-data, untrusted-input
  • mcp__geode__geode_messaging_get_my_inbox_lists private-data, untrusted-input
  • mcp__geode__geode_messaging_get_my_inbox_groups private-data, untrusted-input
  • mcp__geode__geode_messaging_clear_my_paid_inbox untrusted-input
  • mcp__geode__geode_profile_new_profile untrusted-input
  • mcp__geode__geode_profile_update_your_profile untrusted-input
  • mcp__geode__geode_profile_get_account_profile untrusted-input
  • mcp__geode__geode_social_send_message_public untrusted-input, outbound
  • mcp__geode__geode_social_send_paid_message_public untrusted-input, outbound
  • mcp__geode__geode_social_elevate_message untrusted-input
  • mcp__geode__geode_social_elevate_paid_message untrusted-input
  • mcp__geode__geode_social_follow_account untrusted-input
  • mcp__geode__geode_social_unfollow_account untrusted-input
  • mcp__geode__geode_social_block_account untrusted-input
  • mcp__geode__geode_social_unblock_account untrusted-input
  • mcp__geode__geode_social_update_settings untrusted-input
  • mcp__geode__geode_social_get_public_feed untrusted-input
  • mcp__geode__geode_social_get_paid_feed untrusted-input
  • mcp__geode__geode_social_get_account_profile untrusted-input
  • mcp__geode__geode_social_send_reply_public untrusted-input, outbound
  • mcp__geode__geode_social_get_account_paid_messages private-data, untrusted-input
  • mcp__geode__geode_social_get_account_following untrusted-input
  • mcp__geode__geode_social_get_details_for_paid_message private-data, untrusted-input
  • mcp__geode__geode_social_get_details_for_message private-data, untrusted-input
  • mcp__geode__geode_social_get_replies_for_message private-data, untrusted-input
  • mcp__geode__geode_surveys_make_a_new_survey_5 untrusted-input
  • mcp__geode__geode_surveys_make_a_new_survey_3 untrusted-input
  • mcp__geode__geode_surveys_make_a_new_survey_1 untrusted-input
  • mcp__geode__geode_surveys_close_my_survey untrusted-input
  • mcp__geode__geode_surveys_take_a_survey_5 untrusted-input
  • mcp__geode__geode_surveys_take_a_survey_3 untrusted-input
  • mcp__geode__geode_surveys_take_a_survey_1 untrusted-input
  • mcp__geode__geode_surveys_get_survey_responses_5 untrusted-input
  • mcp__geode__geode_surveys_get_survey_responses_3 untrusted-input
  • mcp__geode__geode_surveys_get_survey_responses_1 untrusted-input
  • mcp__geode__geode_surveys_get_available_surveys untrusted-input
  • mcp__geode__geode_surveys_get_my_surveys untrusted-input
  • mcp__geode__geode_surveys_get_survey_by_id untrusted-input
  • mcp__geode__geode_balances_transfer untrusted-input
  • mcp__geode__geode_account_info untrusted-input
  • mcp__geode__geode_submit_intent untrusted-input
  • mcp__geode__geode_upgrade_packs untrusted-input
  • mcp__geode__geode_upgrade_prepare untrusted-input
  • mcp__geode__geode_upgrade_build untrusted-input
  • mcp__geode__geode_upgrade_status untrusted-input

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/com.geodeapps.mcp/geode/verify?hash=65ecf4093d12a35845dbb0278bd1c5a0e7f386906339ec757791e8972780987b" | jq -e '.changed == false'

Pinned hash 65ecf4093d12, from Oct 21, 2026, 18:49 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/com.geodeapps.mcp/geode/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for com.geodeapps.mcp/geode
[![anlyon.dev](https://anlyon.dev/badge/com.geodeapps.mcp/geode.svg)](https://anlyon.dev/servers/com.geodeapps.mcp/geode)

Source: MCP Registry. Synced Oct 21, 2026, 17:55 UTC.