Geode
REMOTE · MCP.GEODEAPPS.COM
Use the Geode blockchain's apps: marketplace, social, surveys, messaging, DNS and GEODE transfers.
Available components
Last scanned (41 minutes ago)
Scores higher than 56% of remote servers
Reachable. Last reached 18 Oct 2026.
Category Crypto and Web3
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (geode_dns_transfer). See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability67
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 21504 tokens (~155/item across 138 items; 138 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management3
- Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage99
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 96% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 22 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 139 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 18 Oct 26 +1
- Stability: unverified → 0.03 ▲ functional
- 17 Oct 26 65
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 18 Oct 2026 · Probed https://mcp.geodeapps.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.geodeapps.com | CN=ZeroSSL RSA DV SSL CA 2,O=ZeroSSL GmbH,C=AT | 21 Sept 2026 | 20 Dec 2026 | RSA 2048 | SHA256-RSA | df97a32d1b10653b3b39c8627719c14 |
| SANs: mcp.geodeapps.com | ||||||
| CN=ZeroSSL RSA DV SSL CA 2,O=ZeroSSL GmbH,C=AT (CA) | CN=Sectigo Public Server Authentication Root R46,O=Sectigo Limited,C=GB | 24 Sept 2025 | 23 Sept 2035 | RSA 3072 | SHA384-RSA | d0a908255f8e50e5f3396d1114702a37 |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.geodeapps.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| geodeapps.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| content-security-policy | default-src 'none'; frame-ancestors 'none' |
| x-content-type-options | nosniff |
| referrer-policy | no-referrer |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.geodeapps.com/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.geodeapps.com/mcp | HTTPS enforced |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
geode_market_update_cart_item_quantity Market: update cart item quantity ~133
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.
| Name | Type | Req | Description |
|---|---|---|---|
| item_id | string | yes | 0x-prefixed 32-byte hex id |
| new_quantity | string | yes | Non-negative integer as a string of digits |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_market_update_order_tracking_information Market: update order tracking information ~173
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.
| Name | Type | Req | Description |
|---|---|---|---|
| delivered | boolean | yes | – |
| order_id | string | yes | 0x-prefixed 32-byte hex id |
| shipped | boolean | yes | – |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
| tracking_update | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
No output schema declared.
No examples provided.
geode_market_update_product_details Market: update product details ~397
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.
| Name | Type | Req | Description |
|---|---|---|---|
| brand | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| category | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| delivery_info | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| description | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| digital_file_url | string | yes | https:// URL or empty string, at most 512 bytes |
| inventory | string | yes | Non-negative integer as a string of digits |
| more_info_link | string | yes | https:// URL or empty string, at most 512 bytes |
| photo_or_youtube_link1 | string | yes | https:// URL or empty string, at most 512 bytes |
| photo_or_youtube_link2 | string | yes | https:// URL or empty string, at most 512 bytes |
| photo_or_youtube_link3 | string | yes | https:// URL or empty string, at most 512 bytes |
| price | – | yes | Amount in GEODE as a decimal string (e.g. "1.25"), or {"raw": "<planck>"} |
| product_id | string | yes | 0x-prefixed 32-byte hex id |
| product_location | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_market_update_seller_account_settings Market: update seller account settings ~232
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.
| Name | Type | Req | Description |
|---|---|---|---|
| banner_url | string | yes | https:// URL or empty string, at most 512 bytes |
| description | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| external_link | string | yes | https:// URL or empty string, at most 512 bytes |
| location | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| name | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
| youtube_url | string | yes | https:// URL or empty string, at most 512 bytes |
No output schema declared.
No examples provided.
geode_market_update_service_details Market: update service details ~327
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.
| Name | Type | Req | Description |
|---|---|---|---|
| booking_link | string | yes | https:// URL or empty string, at most 512 bytes |
| category | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| description | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| inventory | string | yes | Non-negative integer as a string of digits |
| photo_or_youtube_link1 | string | yes | https:// URL or empty string, at most 512 bytes |
| photo_or_youtube_link2 | string | yes | https:// URL or empty string, at most 512 bytes |
| photo_or_youtube_link3 | string | yes | https:// URL or empty string, at most 512 bytes |
| price | – | yes | Amount in GEODE as a decimal string (e.g. "1.25"), or {"raw": "<planck>"} |
| service_id | string | yes | 0x-prefixed 32-byte hex id |
| service_location | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_market_view_my_buyer_account Market: view my buyer account ~75
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
No output schema declared.
No examples provided.
geode_market_view_my_cart Market: view my cart ~69
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
No output schema declared.
No examples provided.
geode_market_view_my_orders Market: view my orders ~66
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
No output schema declared.
No examples provided.
geode_market_view_my_seller_orders_awaiting Market: view my seller orders awaiting ~122
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_market_view_my_seller_orders_delivered Market: view my seller orders delivered ~122
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_market_view_my_seller_orders_problem Market: view my seller orders problem ~122
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_market_view_my_seller_orders_refused Market: view my seller orders refused ~122
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_market_view_my_seller_orders_resolved Market: view my seller orders resolved ~123
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_market_view_my_seller_orders_shipped Market: view my seller orders shipped ~122
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_market_view_my_seller_profile Market: view my seller profile ~72
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
No output schema declared.
No examples provided.
geode_messaging_allow_account Messaging: allow account ~117
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.
| Name | Type | Req | Description |
|---|---|---|---|
| allow | array | yes | List of Geode account addresses (SS58), at most 50 |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_block_account Messaging: block account ~109
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.
| Name | Type | Req | Description |
|---|---|---|---|
| block | string | yes | Geode account address (SS58) |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_clear_my_paid_inbox Messaging: clear my paid inbox ~137
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.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | Token from the first call, to confirm this irreversible action |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_delete_all_messages_to_account Messaging: delete all messages to account ~156
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.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | Token from the first call, to confirm this irreversible action |
| delete_all_messages_to | string | yes | Geode account address (SS58) |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_delete_all_messages_to_group Messaging: delete all messages to group ~160
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.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | Token from the first call, to confirm this irreversible action |
| delete_my_messages_to_group_id | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_delete_an_open_list Messaging: delete an open list ~154
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.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | Token from the first call, to confirm this irreversible action |
| delete_list_id | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_delete_single_message_to_account Messaging: delete single message to account ~156
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.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | Token from the first call, to confirm this irreversible action |
| message_id_to_delete | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_delete_single_message_to_group Messaging: delete single message to group ~158
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.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | Token from the first call, to confirm this irreversible action |
| message_id_to_delete | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_delete_single_message_to_list Messaging: delete single message to list ~158
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.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | Token from the first call, to confirm this irreversible action |
| message_id_to_delete | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_disallow_account Messaging: disallow account ~114
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.
| Name | Type | Req | Description |
|---|---|---|---|
| disallow | string | yes | Geode account address (SS58) |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_find_groups_by_keyword Messaging: find groups by keyword ~137
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| keywords1 | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| keywords2 | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| keywords3 | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
No output schema declared.
No examples provided.
geode_messaging_find_lists_by_keyword Messaging: find lists by keyword ~138
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| keywords1 | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| keywords2 | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| keywords3 | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
No output schema declared.
No examples provided.
geode_messaging_get_account_settings_data Messaging: get account settings data ~89
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| get_settings_for | string | yes | Geode account address (SS58) |
No output schema declared.
No examples provided.
geode_messaging_get_my_allowed_and_blocked_accounts Messaging: get my allowed and blocked accounts ~72
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
No output schema declared.
No examples provided.
geode_messaging_get_my_groups Messaging: get my groups ~117
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_messaging_get_my_inbox Messaging: get my inbox ~122
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_messaging_get_my_inbox_groups Messaging: get my inbox groups ~120
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_messaging_get_my_inbox_lists Messaging: get my inbox lists ~72
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
No output schema declared.
No examples provided.
geode_messaging_get_my_open_lists Messaging: get my open lists ~118
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_messaging_get_my_paid_inbox Messaging: get my paid inbox ~129
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_messaging_get_my_subscribed_lists Messaging: get my subscribed lists ~121
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).
| Name | Type | Req | Description |
|---|---|---|---|
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
geode_messaging_join_a_group Messaging: join a group ~112
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.
| Name | Type | Req | Description |
|---|---|---|---|
| group_id | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_join_an_open_list Messaging: join an open list ~115
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.
| Name | Type | Req | Description |
|---|---|---|---|
| list_id | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_leave_a_group Messaging: leave a group ~114
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.
| Name | Type | Req | Description |
|---|---|---|---|
| group_id_to_leave | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_make_a_new_group Messaging: make a new group ~202
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.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| file_url | string | yes | https:// URL or empty string, at most 512 bytes |
| first_message | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| hide_from_search | boolean | yes | – |
| new_group_name | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_make_a_new_list Messaging: make a new list ~159
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.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| hide_from_search | boolean | yes | – |
| new_list_name | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_send_message_to_group Messaging: send message to group ~164
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.
| Name | Type | Req | Description |
|---|---|---|---|
| file_url | string | yes | https:// URL or empty string, at most 512 bytes |
| new_message | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
| to_group_id | string | yes | 0x-prefixed 32-byte hex id |
No output schema declared.
No examples provided.
geode_messaging_send_message_to_list Messaging: send message to list ~164
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.
| Name | Type | Req | Description |
|---|---|---|---|
| file_url | string | yes | https:// URL or empty string, at most 512 bytes |
| new_message | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
| to_list_id | string | yes | 0x-prefixed 32-byte hex id |
No output schema declared.
No examples provided.
geode_messaging_send_paid_message Messaging: send paid message ~232
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.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | Token from the first call, to confirm this irreversible action |
| file_url | string | yes | https:// URL or empty string, at most 512 bytes |
| new_message | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
| to_account | string | yes | Geode account address (SS58) |
| value | – | yes | GEODE to send with this call (explicit; never inferred) |
No output schema declared.
No examples provided.
geode_messaging_send_private_message Messaging: send private message ~165
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.
| Name | Type | Req | Description |
|---|---|---|---|
| file_url | string | yes | https:// URL or empty string, at most 512 bytes |
| new_message | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
| to_acct | string | yes | Geode account address (SS58) |
No output schema declared.
No examples provided.
geode_messaging_unblock_account Messaging: unblock account ~108
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.
| Name | Type | Req | Description |
|---|---|---|---|
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
| unblock | string | yes | Geode account address (SS58) |
No output schema declared.
No examples provided.
geode_messaging_unsubscribe_from_open_list Messaging: unsubscribe from open list ~117
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.
| Name | Type | Req | Description |
|---|---|---|---|
| list_id | string | yes | 0x-prefixed 32-byte hex id |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_update_group_settings Messaging: update group settings ~148
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.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | yes | UTF-8 text, at most 2048 bytes; no control or invisible characters |
| group_id | string | yes | 0x-prefixed 32-byte hex id |
| hide_from_search | boolean | yes | – |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_messaging_update_settings Messaging: update settings ~194
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.
| Name | Type | Req | Description |
|---|---|---|---|
| hide_from_search | boolean | yes | – |
| my_inbox_fee | – | yes | Amount in GEODE as a decimal string (e.g. "1.25"), or {"raw": "<planck>"} |
| my_interests | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| my_username | string | yes | UTF-8 text, at most 512 bytes; no control or invisible characters |
| signer | string | yes | Your account address (SS58). The transaction is prepared for this account; you sign it on your own machine with geode-local-signer. |
No output schema declared.
No examples provided.
geode_profile_get_account_profile Profile: get account profile ~143
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).
| Name | Type | Req | Description |
|---|---|---|---|
| account | string | yes | Geode account address (SS58) |
| caller | string | – | Optional account address (SS58) to run the query as |
| limit | integer | – | Items to return (default 50, max 200) |
| offset | integer | – | Items to skip (default 0) |
No output schema declared.
No examples provided.
How do I install the Geode MCP server?
Geode is a hosted endpoint at https://mcp.geodeapps.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.geodeapps.com
claude mcp add --transport http com-geodeapps-mcp-geode 'https://mcp.geodeapps.com/mcp'
What is the Geode MCP server?
Geode is an MCP server listed in the public MCP registry as com.geodeapps.mcp/geode. Use the Geode blockchain's apps: marketplace, social, surveys, messaging, DNS and GEODE transfers. This page covers its hosted endpoint (https://mcp.geodeapps.com/mcp).
Is the Geode MCP server safe to use?
Geode scores 66 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Geode MCP server expose?
Geode exposes 138 tools: geode_dns_register, geode_dns_set_address, geode_dns_transfer, geode_dns_get_address, geode_dns_get_owner, and 133 more. Their descriptions and schemas cost roughly 21,377 tokens of context every time the server is loaded.
Does the Geode MCP server require authentication?
No. We connected to Geode without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the Geode MCP server still maintained?
Geode is still listed as active in the MCP registry. We last reached this channel on 18 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.