Marketgenius
REMOTE · MARKETGENIUS.APP · SCANNED AUG 3
Our free Marketgenius investment tools as live, interactive React MCP Apps.
Available components
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 →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not fully verified: no authorisation is required to call this server, and 17 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. See how to fix → View diagnostics → Unverified
- 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 Usability58
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (poor).Fail
- Context-footprint check failed: tool/resource definitions use about 3275 tokens (~155/item across 21 items; 17 tools + 4 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 Management27
- Stability observed for 8 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
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
- Supports UI / widget rendering.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · marketgenius.app
claude mcp add --transport http app-marketgenius-mcp https://marketgenius.app/mcp
[mcp_servers.app-marketgenius-mcp] url = "https://marketgenius.app/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"app-marketgenius-mcp": {
"type": "remote",
"url": "https://marketgenius.app/mcp",
"enabled": true
}
}
} openclaw mcp add app-marketgenius-mcp --url https://marketgenius.app/mcp --transport streamable-http
mcp_servers:
app-marketgenius-mcp:
url: "https://marketgenius.app/mcp" {
"mcpServers": {
"app-marketgenius-mcp": {
"type": "http",
"url": "https://marketgenius.app/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
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.
- 3 Aug 26 +1
- Server version: 2026-08-02 → 2026-08-03 functional
- 2 Aug 26 0
- Server version: 2026-07-31 → 2026-08-02 functional
- 1 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 +1
- MCP protocol: Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28. functional
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- Server version: 2026-07-30 → 2026-07-31 functional
- 30 Jul 26 +1
- Server version: 2026-07-29 → 2026-07-30 functional
- 29 Jul 26 0
- Server version: 2026-07-28 → 2026-07-29 functional
- 28 Jul 26 +1
- Server version: 2026-07-26 → 2026-07-28 functional
- 27 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
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 3 Aug 2026 · Probed https://marketgenius.app/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=marketgenius.app | CN=YE1,O=Let's Encrypt,C=US | 30 Jul 2026 | 28 Oct 2026 | ECDSA 256 | ECDSA-SHA384 | 558ab14c48db1417b13a94a46957c9e5e89 |
| SANs: *.marketgenius.app, marketgenius.app | ||||||
| CN=YE1,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 5ddd70dd31f801c85c186a7a04b80afe |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
DNSSEC insecure
Validation of marketgenius.app. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| app. | present | 23684 | 8 | Verified |
| marketgenius.app. | 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 'self'; connect-src 'self' https://ads-twitter.com https://ads-api.twitter.com https://analytics.twitter.com https://csi.gstatic.com https://ep1.adtrafficquality.google https://googleads.g.doubleclick.net https://pagead2.googlesyndication.com https://schema.org/ https://static.ads-twitter.com https://www.googleadservices.com https://*.analytics.google.com https://*.googletagmanager.com https://*.google-analytics.com https://www.google.ad https://www.google.ae https://www.google.al https://www.google.am https://www.google.as https://www.google.at https://www.google.az https://www.google.ba https://www.google.be https://www.google.bf https://www.google.bg https://www.google.bi https://www.google.bj https://www.google.bs https://www.google.bt https://www.google.by https://www.google.ca https://www.google.cat https://www.google.cd https://www.google.cf https://www.google.cg https://www.google.ch https://www.google.ci https://www.google.cl https://www.google.cm https://www.google.cn https://www.google. |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | strict-origin-when-cross-origin |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://marketgenius.app/mcp | Verified | 200 | |
| http (plaintext) | http://marketgenius.app/mcp | HTTPS enforced | 301 | https://marketgenius.app/mcp |
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.
mg_calculator_cagr CAGR Calculator ~151
Open the CAGR Calculator React MCP App UI. ALWAYS ask first — never call this tool silently: "Open the calculator directly, or pre-fill it with your inputs?" IF directly → call this tool now with no params. STOP. Do not ask anything else. IF pre-fill → collect only the input schema fields — do not guess or invent field names.
| Name | Type | Req | Description |
|---|---|---|---|
| beginningValue | string | — | Beginning (initial) investment value. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| endingValue | string | — | Ending (final) investment value. |
| years | integer | — | Number of years of investment. Default: 0 |
No output schema declared.
No examples provided.
mg_calculator_cagr_state CAGR Calculator — State ~67
Read the current field values of the open CAGR Calculator. Call this before answering any question about the current values — the user may have changed fields manually in the GUI. Do not call this on a loop; call it once on demand.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | — |
No output schema declared.
No examples provided.
mg_calculator_cagr_sync CAGR Calculator — Sync ~137
Sync user-entered field values of the open CAGR Calculator back to the session store so the model can read them via the state tool. Called by the View after any field change; hidden from the model.
| Name | Type | Req | Description |
|---|---|---|---|
| beginningValue | string | — | Beginning (initial) investment value. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| endingValue | string | — | Ending (final) investment value. |
| sessionId | string | yes | Session ID returned by the open tool. |
| years | integer | — | Number of years of investment. Default: 0 |
No output schema declared.
No examples provided.
mg_calculator_cagr_update CAGR Calculator — Update ~218
Update one or more fields in the already-open CAGR Calculator. ALWAYS call mg_calculator_cagr_state first — the user may have changed values manually in the GUI and you must not overwrite them. Pass the version you received from that call (or from the open tool if updating immediately after opening). Only pass the fields the user explicitly asked to change; omit all others. Send all changes in a single call — multiple sequential calls lose intermediate updates (only the last one applies).
| Name | Type | Req | Description |
|---|---|---|---|
| beginningValue | string | — | Beginning (initial) investment value. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| endingValue | string | — | Ending (final) investment value. |
| sessionId | string | yes | Session ID returned by the open tool. |
| version | integer | yes | Current session version — call mg_calculator_cagr_state first to get this. |
| years | integer | — | Number of years of investment. Default: 0 |
No output schema declared.
No examples provided.
mg_calculator_dividend Dividend Calculator ~460
Open the Dividend Calculator React MCP App UI. ALWAYS ask first — never call this tool silently: "Open the calculator directly, or pre-fill it with your inputs?" IF directly → call this tool now with no params. STOP. Do not ask anything else. IF pre-fill → ask "By amount invested or by number of shares?", then collect only the input schema fields matching that mode — do not guess or invent field names.
| Name | Type | Req | Description |
|---|---|---|---|
| baDepositAmount | string | — | By amount: Monthly deposit amount. |
| baDepositMonths | integer | — | By amount: Deposit months per year (1-12). Default: 1 |
| baDivGrowthRate | number | — | By amount: Annual dividend growth rate %. Default: 0 |
| baDivYield | string | — | By amount: Dividend yield percentage. |
| baInflationRate | number | — | By amount: Inflation rate %. Default: 0 |
| baInitialInvestment | string | — | By amount: Initial investment amount. |
| baProjectionPeriod | integer | — | By amount: Projection period in years. Default: 0 |
| baReinvest | boolean | — | By amount: Reinvest dividends. Default: true |
| baSharePriceGrowthRate | number | — | By amount: Annual price growth rate %. Default: 0 |
| bsDivGrowthRate | number | — | By shares: Annual dividend growth rate %. Default: 0 |
| bsDivYield | string | — | By shares: Dividend yield percentage. |
| bsInflationRate | number | — | By shares: Inflation rate %. Default: 0 |
| bsProjectionPeriod | integer | — | By shares: Projection period in years. Default: 0 |
| bsReinvest | boolean | — | By shares: Reinvest dividends. Default: true |
| bsSharePrice | string | — | By shares: Share price. |
| bsSharePriceGrowthRate | number | — | By shares: Annual price growth rate %. Default: 0 |
| bsShares | string | — | By shares: Number of shares. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| mode | string | — | Entry mode. Default: "amount" |
No output schema declared.
No examples provided.
mg_calculator_dividend_state Dividend Calculator — State ~67
Read the current field values of the open Dividend Calculator. Call this before answering any question about the current values — the user may have changed fields manually in the GUI. Do not call this on a loop; call it once on demand.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | — |
No output schema declared.
No examples provided.
mg_calculator_dividend_sync Dividend Calculator — Sync ~429
Sync user-entered field values of the open Dividend Calculator back to the session store so the model can read them via the state tool. Called by the View after any field change; hidden from the model.
| Name | Type | Req | Description |
|---|---|---|---|
| baDepositAmount | string | — | By amount: Monthly deposit amount. |
| baDepositMonths | integer | — | By amount: Deposit months per year (1-12). Default: 1 |
| baDivGrowthRate | number | — | By amount: Annual dividend growth rate %. Default: 0 |
| baDivYield | string | — | By amount: Dividend yield percentage. |
| baInflationRate | number | — | By amount: Inflation rate %. Default: 0 |
| baInitialInvestment | string | — | By amount: Initial investment amount. |
| baProjectionPeriod | integer | — | By amount: Projection period in years. Default: 0 |
| baReinvest | boolean | — | By amount: Reinvest dividends. Default: true |
| baSharePriceGrowthRate | number | — | By amount: Annual price growth rate %. Default: 0 |
| bsDivGrowthRate | number | — | By shares: Annual dividend growth rate %. Default: 0 |
| bsDivYield | string | — | By shares: Dividend yield percentage. |
| bsInflationRate | number | — | By shares: Inflation rate %. Default: 0 |
| bsProjectionPeriod | integer | — | By shares: Projection period in years. Default: 0 |
| bsReinvest | boolean | — | By shares: Reinvest dividends. Default: true |
| bsSharePrice | string | — | By shares: Share price. |
| bsSharePriceGrowthRate | number | — | By shares: Annual price growth rate %. Default: 0 |
| bsShares | string | — | By shares: Number of shares. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| mode | string | — | Entry mode. Default: "amount" |
| sessionId | string | yes | Session ID returned by the open tool. |
No output schema declared.
No examples provided.
mg_calculator_dividend_update Dividend Calculator — Update ~510
Update one or more fields in the already-open Dividend Calculator. ALWAYS call mg_calculator_dividend_state first — the user may have changed values manually in the GUI and you must not overwrite them. Pass the version you received from that call (or from the open tool if updating immediately after opening). Only pass the fields the user explicitly asked to change; omit all others. Send all changes in a single call — multiple sequential calls lose intermediate updates (only the last one applies).
| Name | Type | Req | Description |
|---|---|---|---|
| baDepositAmount | string | — | By amount: Monthly deposit amount. |
| baDepositMonths | integer | — | By amount: Deposit months per year (1-12). Default: 1 |
| baDivGrowthRate | number | — | By amount: Annual dividend growth rate %. Default: 0 |
| baDivYield | string | — | By amount: Dividend yield percentage. |
| baInflationRate | number | — | By amount: Inflation rate %. Default: 0 |
| baInitialInvestment | string | — | By amount: Initial investment amount. |
| baProjectionPeriod | integer | — | By amount: Projection period in years. Default: 0 |
| baReinvest | boolean | — | By amount: Reinvest dividends. Default: true |
| baSharePriceGrowthRate | number | — | By amount: Annual price growth rate %. Default: 0 |
| bsDivGrowthRate | number | — | By shares: Annual dividend growth rate %. Default: 0 |
| bsDivYield | string | — | By shares: Dividend yield percentage. |
| bsInflationRate | number | — | By shares: Inflation rate %. Default: 0 |
| bsProjectionPeriod | integer | — | By shares: Projection period in years. Default: 0 |
| bsReinvest | boolean | — | By shares: Reinvest dividends. Default: true |
| bsSharePrice | string | — | By shares: Share price. |
| bsSharePriceGrowthRate | number | — | By shares: Annual price growth rate %. Default: 0 |
| bsShares | string | — | By shares: Number of shares. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| mode | string | — | Entry mode. Default: "amount" |
| sessionId | string | yes | Session ID returned by the open tool. |
| version | integer | yes | Current session version — call mg_calculator_dividend_state first to get this. |
No output schema declared.
No examples provided.
mg_calculator_market_cap Market Cap Calculator ~159
Open the Market Cap Calculator React MCP App UI. ALWAYS ask first — never call this tool silently: "Open the calculator directly, or pre-fill it with your inputs?" IF directly → call this tool now with no params. STOP. Do not ask anything else. IF pre-fill → ask "Would you like to pre-fill share price and shares outstanding?", then collect only the input schema fields matching that mode — do not guess or invent field names.
| Name | Type | Req | Description |
|---|---|---|---|
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| marketCap | string | — | Market capitalization. |
| sharePrice | string | — | Price per share. |
| sharesOutstanding | string | — | Total shares outstanding. |
No output schema declared.
No examples provided.
mg_calculator_market_cap_state Market Cap Calculator — State ~68
Read the current field values of the open Market Cap Calculator. Call this before answering any question about the current values — the user may have changed fields manually in the GUI. Do not call this on a loop; call it once on demand.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | — |
No output schema declared.
No examples provided.
mg_calculator_market_cap_sync Market Cap Calculator — Sync ~125
Sync user-entered field values of the open Market Cap Calculator back to the session store so the model can read them via the state tool. Called by the View after any field change; hidden from the model.
| Name | Type | Req | Description |
|---|---|---|---|
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| marketCap | string | — | Market capitalization. |
| sessionId | string | yes | Session ID returned by the open tool. |
| sharePrice | string | — | Price per share. |
| sharesOutstanding | string | — | Total shares outstanding. |
No output schema declared.
No examples provided.
mg_calculator_market_cap_update Market Cap Calculator — Update ~206
Update one or more fields in the already-open Market Cap Calculator. ALWAYS call mg_calculator_market_cap_state first — the user may have changed values manually in the GUI and you must not overwrite them. Pass the version you received from that call (or from the open tool if updating immediately after opening). Only pass the fields the user explicitly asked to change; omit all others. Send all changes in a single call — multiple sequential calls lose intermediate updates (only the last one applies).
| Name | Type | Req | Description |
|---|---|---|---|
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| marketCap | string | — | Market capitalization. |
| sessionId | string | yes | Session ID returned by the open tool. |
| sharePrice | string | — | Price per share. |
| sharesOutstanding | string | — | Total shares outstanding. |
| version | integer | yes | Current session version — call mg_calculator_market_cap_state first to get this. |
No output schema declared.
No examples provided.
mg_calculator_profit_margin Profit Margin Calculator ~145
Open the Profit Margin Calculator React MCP App UI. ALWAYS ask first — never call this tool silently: "Open the calculator directly, or pre-fill it with your inputs?" IF directly → call this tool now with no params. STOP. Do not ask anything else. IF pre-fill → ask "Would you like to pre-fill revenue and cost?", then collect only the input schema fields matching that mode — do not guess or invent field names.
| Name | Type | Req | Description |
|---|---|---|---|
| cost | string | — | Cost of goods sold. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| revenue | string | — | Annual revenue. |
No output schema declared.
No examples provided.
mg_calculator_profit_margin_state Profit Margin Calculator — State ~68
Read the current field values of the open Profit Margin Calculator. Call this before answering any question about the current values — the user may have changed fields manually in the GUI. Do not call this on a loop; call it once on demand.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | — |
No output schema declared.
No examples provided.
mg_calculator_profit_margin_sync Profit Margin Calculator — Sync ~113
Sync user-entered field values of the open Profit Margin Calculator back to the session store so the model can read them via the state tool. Called by the View after any field change; hidden from the model.
| Name | Type | Req | Description |
|---|---|---|---|
| cost | string | — | Cost of goods sold. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| revenue | string | — | Annual revenue. |
| sessionId | string | yes | Session ID returned by the open tool. |
No output schema declared.
No examples provided.
mg_calculator_profit_margin_update Profit Margin Calculator — Update ~194
Update one or more fields in the already-open Profit Margin Calculator. ALWAYS call mg_calculator_profit_margin_state first — the user may have changed values manually in the GUI and you must not overwrite them. Pass the version you received from that call (or from the open tool if updating immediately after opening). Only pass the fields the user explicitly asked to change; omit all others. Send all changes in a single call — multiple sequential calls lose intermediate updates (only the last one applies).
| Name | Type | Req | Description |
|---|---|---|---|
| cost | string | — | Cost of goods sold. |
| currencySymbol | string | — | Currency symbol, e.g. "$" or "€". Default: "$" |
| revenue | string | — | Annual revenue. |
| sessionId | string | yes | Session ID returned by the open tool. |
| version | integer | yes | Current session version — call mg_calculator_profit_margin_state first to get this. |
No output schema declared.
No examples provided.
mg_list List Marketgenius Tools ~59
List all available Marketgenius tools with their names, descriptions, categories, and resource URIs. Use mg_list to discover what's available, or filter by category.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | — | Filter by category. Omit to list all tools. |
No output schema declared.
No examples provided.