Optionality is a remote MCP server that gives an AI agent 71 tools, among them optionality_account_statement, optionality_account_statement_infographic, optionality_adoption_status. It answers at https://optionality-mcp.fastmcp.app/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 6 of 6 times since 11 September 2026; the last check, on 22 October 2026, succeeded.
Optionality — AI-judged options trading drill, Tollbooth-monetized MCP server
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
optionality_account_statement | Generate a patron's account statement at this operator. Returns the patron's purchase history, active credit tranches, per-tool usage breakdown, and recent daily usage logs. This is the patron's spending account — not the operator's Authori Inputs: npub, dpop_token, days |
optionality_account_statement_infographic | Generate a visual SVG infographic of your account statement. Returns the same data as account_statement, rendered as a dark-themed SVG graphic with balance hero, metrics cards, health gauge, tranche table, and tool usage breakdown. Costs 1 Inputs: npub, dpop_token, days |
optionality_adoption_status | Check this operator's adoption-request status at a chosen Authority. Free. Polls the Authority MCP-to-MCP for the status of this operator's request (pending / approved / rejected / provisioned). Inputs: authority_npub, dpop_token |
optionality_ask_tip | Get a non-spoiler Socratic hint for an open journal entry. history is an optional JSON-encoded array of prior {question, answer} turns from this clue conversation, so follow-on questions have context. The wheel caps it hard, so oversupplyin Inputs: entry_id, question, history, npub, dpop_token |
optionality_check_authority_balance | Check this operator's tax balance at the Authority. Returns the sats available for certifying patron credit purchases. When this balance reaches zero, patron top-ups cannot be certified and the operator must call purchase_credits on the Aut |
optionality_check_balance | Check a patron's credit balance at this operator. This is the patron's spending balance — credits purchased via Lightning for tool calls at this operator. For the operator's own balance at the Authority (needed to certify patron purchases), Inputs: npub, dpop_token |
optionality_check_payment | Check the payment status of a Lightning invoice. Call after paying the invoice from purchase_credits. Free — no credits required. Proof of npub ownership is required to prevent credit-grant front-running by an observer of the invoice ID. Inputs: invoice_id, npub, dpop_token |
optionality_check_price | Preview the effective cost of a tool call. Shows the base cost and any constraint effects (discounts, free trials, surge pricing). Free — no credits required. Inputs: tool_id, npub, dpop_token, tool_kwargs |
optionality_check_proof_status | Check whether a previously-cached dpop_token is still valid. Mirrors ``check_oauth_status`` for the npub-proof flow: a calling agent can ask "will my next paid call accept this dpop_token?" before burning credits on a guaranteed failure. Fr Inputs: patron_npub, dpop_token |
optionality_deal_scenario | Generate a fresh options trading scenario and open a journal entry. Inputs: mode, difficulty, npub, dpop_token, max_loss_usd, replay_entry_id |
optionality_delete_coupon | Delete a coupon. Cascades to all patron redemptions. Any chain step referencing the deleted coupon_id becomes a no-op (the constraint returns neutral on unknown ids) — the Studio surfaces orphan references as warnings. RESTRICTED to operato Inputs: coupon_id, dpop_token |
optionality_delete_journal | Hard-delete a journal entry and recompute the leaderboard cache. Inputs: entry_id, npub, dpop_token |
optionality_delete_operator_credential | Remove a single operator secret field. Deletes one key from the operator's encrypted credential blob without touching the others — the field-level counterpart to ``forget_credentials``, which wipes the whole row. Use it to retire a leftover Inputs: field, dpop_token |
optionality_delete_patron_credential | Remove a single patron credential field. Deletes one field from stored credentials without affecting other fields. Free. Proof of npub ownership is required — this is a write to the patron's sensitive credential vault. Inputs: npub, dpop_token, field |
optionality_escrow_nsec | Deposit a freshly-generated nsec for operator-managed Nostr signing. Trade-off: sovereignty for UX. Optionality holds the nsec encrypted in Neon (AES-256-GCM, key derived from operator nsec). Until you withdraw it, the operator can sign Nos Inputs: nsec, npub, dpop_token |
optionality_fetch_judgement | Redeem a judge_trade claim check. Free. While ``status`` is ``running``, wait ``poll_after_seconds`` and call again. When ``done``, ``result`` holds the judge_trade response (``entry_id`` + ``evaluation``). ``expired`` means the claim is un Inputs: claim_check, npub, dpop_token |
optionality_fetch_scenario | Redeem a deal_scenario claim check. Free. While ``status`` is ``running``, wait ``poll_after_seconds`` and call again. When ``done``, ``result`` holds the deal_scenario response (``entry_id`` + ``scenario``). ``expired`` means the claim is Inputs: claim_check, npub, dpop_token |
optionality_fetch_tip | Redeem an ask_tip claim check. Free. While ``status`` is ``running``, wait ``poll_after_seconds`` and call again. When ``done``, ``result`` holds the ask_tip response (``tip``). ``expired`` means the claim is unknown or its result aged out Inputs: claim_check, npub, dpop_token |
optionality_forget_coupon | Remove a coupon from this patron's redemption list. Cosmetic only — the coupon itself still exists at the operator, and the patron can re-redeem the same code later while the window allows. Free — requires proof of ``npub``. Inputs: npub, coupon_id, dpop_token |
optionality_forget_credentials | Delete vaulted credentials for a specific service and npub. For operator credentials, pass the operator's own npub. For patron credentials, pass the patron's npub. Always requires proof of npub ownership — a deletion is as destructive as a Inputs: service, npub, dpop_token |
optionality_get_api_usage_stats | Aggregated LLM usage and cost for this patron's calls. Returns ``{"models": [{"model", "runs", "total_calls", "total_input_tokens", "total_output_tokens", "total_cost_usd", "priced_runs"}, ...], "totals": {...}}``. One row per distinct mode Inputs: npub, dpop_token |
optionality_get_escrow_status | Return ``{"escrowed": bool}`` — whether Optionality holds the patron's nsec. Free; the FE polls this to render Withdraw vs Deposit affordances on the Profile page. Inputs: npub, dpop_token |
optionality_get_journal | Return the full journal entry including scenario + evaluation. Inputs: entry_id, npub, dpop_token |
optionality_get_leaderboard | Global leaderboard ordered by ``sort_by``. Inputs: sort_by, limit, scope, npub, dpop_token |
optionality_get_my_rank | The caller's leaderboard row plus their ordinal rank under ``sort_by``. Inputs: sort_by, npub, dpop_token |
optionality_get_nostr_profile | Read an npub's public Nostr profile (NIP-01 kind-0 metadata). Free, no proof — the data is already public on relays. Returns the latest metadata fields (name, display_name, about, picture, banner, nip05, website, lud16) or an empty profile Inputs: npub |
optionality_get_notarization_proof | Generate a Merkle inclusion proof that a patron's balance was included in a Bitcoin-notarized snapshot. Inputs: notarization_id, npub |
optionality_get_operator_onboarding_status | Report this operator's configuration readiness. Shows which operator settings are configured, which are missing, and how to deliver each missing value. For patron-level credential status, use get_patron_onboarding_status instead. Free. |
optionality_get_patron_credential_fields | List stored patron credential field names (not values). Returns the names of fields stored for a patron, plus each field's ``delivered_at`` ISO-8601 timestamp when known (null for secrets vaulted before timestamps were recorded). Values are Inputs: npub, dpop_token |
optionality_get_patron_onboarding_status | Report a patron's credential readiness for this operator. For set-once services (eXcalibur, TheBrain), shows which patron secrets are configured and which are missing. For dynamic/OAuth2 services (Schwab), reports that no patron credentials Inputs: patron_npub, dpop_token |
optionality_get_patron_profile | Return the caller's profile — display_name, avatar, bio, relays. Inputs: npub, dpop_token |
optionality_get_pricing_model | Get the active pricing model for this operator. Free. If no model exists, self-initializes a scaffold with all registered tools at 0 sats. No economic data from code. |
optionality_get_shared_entries | List a target patron's shared evaluated entries — newest first. Public, free read: anyone (including guests) can browse the trades a leaderboard peer has chosen to share. Eager-loads the evaluation and trade proposal so the FE can render th Inputs: target_npub, limit |
optionality_judge_trade | Evaluate the trainee's trade. Persists evaluation, parses legs, recomputes leaderboard. Returns a **claim check**, not the evaluation. Redeem the ``claim_check`` with ``optionality_fetch_judgement``, polling until ``status`` is ``done``. Inputs: entry_id, trade_proposal, npub, dpop_token |
optionality_list_canonical_identities | Return canonical (tool_id, mcp_name, …) for every tool the wheel exposes. The authoritative source for any client (Studio, agents, FE) that needs to know how this MCP identifies its tools. Reconcile uses this output to UUID-join against the |
optionality_list_constraint_types | List all available constraint types and their parameter schemas. Returns the type, category, description, and parameter specs for every constraint that can be used in a pricing pipeline. Free — no credits required. |
optionality_list_coupons | List every coupon this operator has minted (newest first). Each row carries the current ``times_redeemed`` counter — the Studio renders a progress bar from this against ``total_uses``. RESTRICTED to operator — requires proof. Inputs: dpop_token |
optionality_list_journal | Server-side sorted, grouped, paginated list of the caller's journal. Sorting and grouping are done in SQL, so each page is a slice of the fully-ordered dataset. Returns ``{total, page, page_size, groups, entries}``; ``groups`` carries per-g Inputs: status, group_by, group_sort, sort_col, sort_dir, page |
optionality_list_my_coupons | List the coupons this patron has redeemed on this operator. Returns both active and exhausted redemptions with a per-row ``status`` (``active`` / ``window_closed`` / ``patron_limit`` / ``total_limit``). Free — requires proof of ``npub``. Inputs: npub, dpop_token |
optionality_list_notarizations | List recent Bitcoin notarization records. Inputs: limit, status |
optionality_mint_coupon, optionality_notarize_ledger, optionality_oracle_about, optionality_oracle_get_tax_rate, optionality_oracle_how_to_join, optionality_oracle_lookup_member, optionality_oracle_network_advisory, optionality_publish_nostr_profile, optionality_purchase_credits, optionality_receive_credentials, optionality_receive_npub_proof, optionality_redeem_coupon, optionality_report_issue, optionality_request_adoption, optionality_request_credential_channel, optionality_request_npub_proof, optionality_reset_pricing_model, optionality_restore_credits, optionality_restore_neon_schema, optionality_save_draft, optionality_send_patron_dm, optionality_service_status, optionality_session_status, optionality_set_display_name, optionality_set_pricing_model, optionality_set_profile, optionality_share_entry, optionality_update_coupon, optionality_update_operator_credential, optionality_update_patron_credential, optionality_withdraw_nsec
Every block below points at https://optionality-mcp.fastmcp.app/mcp. Pick your client and copy.
claude mcp add --transport http optionality https://optionality-mcp.fastmcp.app/mcp
{
"mcpServers": {
"optionality": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://optionality-mcp.fastmcp.app/mcp"]
}
}
}{
"mcpServers": {
"optionality": {
"url": "https://optionality-mcp.fastmcp.app/mcp"
}
}
}{
"servers": {
"optionality": {
"type": "http",
"url": "https://optionality-mcp.fastmcp.app/mcp"
}
}
}{
"context_servers": {
"optionality": {
"url": "https://optionality-mcp.fastmcp.app/mcp"
}
}
}{
"mcpServers": {
"optionality": {
"serverUrl": "https://optionality-mcp.fastmcp.app/mcp"
}
}
}{
"mcpServers": {
"optionality": {
"url": "https://optionality-mcp.fastmcp.app/mcp"
}
}
}name: Optionality
version: 0.0.1
schema: v1
mcpServers:
- name: Optionality
type: streamable-http
url: https://optionality-mcp.fastmcp.app/mcp{
"mcpServers": {
"optionality": {
"httpUrl": "https://optionality-mcp.fastmcp.app/mcp"
}
}
}{
"mcpServers": {
"optionality": {
"type": "http",
"url": "https://optionality-mcp.fastmcp.app/mcp"
}
}
}{
"mcpServers": {
"optionality": {
"url": "https://optionality-mcp.fastmcp.app/mcp"
}
}
}goose://extension?url=https%3A%2F%2Foptionality-mcp.fastmcp.app%2Fmcp&type=streamable_http&id=optionality&name=Optionality
It answered our last check on 22 October 2026 in 449 ms. Over 6 checks since 11 September 2026 it answered 6. Status here comes from Neuronto's own probes, not from the publisher.
71, as returned by the server's own tools/list on 15 September 2026: optionality_account_statement, optionality_account_statement_infographic, optionality_adoption_status, optionality_ask_tip, optionality_check_authority_balance, optionality_check_balance, optionality_check_payment, optionality_check_price, and 63 more.
It answered our last check on 22 October 2026 in 449 ms. Over 6 checks since 11 September 2026 it answered 6.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://optionality-mcp.fastmcp.app/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: io.github.lonniev. Endpoint host: optionality-mcp.fastmcp.app. ARD identifier: urn:air:io.github.lonniev:mcp:optionality-mcp.
First indexed 10 September 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.