mcp-registry/app.marketgenius/mcp · v2026-07-12
As of 2026-10-26 20:59 UTC, the Marketgenius MCP server is up (it requires sign-in) with a Glimind reliability score of 92/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks.
Our free Marketgenius investment tools as live, interactive React MCP Apps.
Point your MCP client at this streamable-http endpoint: https://marketgenius.app/mcp
17 of 17 tool(s) carry no readOnlyHint/destructiveHint annotations.
Annotate read-only tools with {"readOnlyHint": true}. Agents and gateways can then run them without a confirmation prompt, and route around destructive ones. How to fix →
4 parameter(s) across 4 tool(s) have no description.
Add a "description" to each parameter with its format and an example ("ISO 8601 date, e.g. 2026-10-17"). This is the commonest cause of wrong arguments on the first call. How to fix →
4 tool(s) look like they change state (create/send/delete/pay…) but declare no destructiveHint.
Set annotations {"readOnlyHint": false, "destructiveHint": true|false, "idempotentHint": …}. Clients use these to ask the user before a side effect and to auto-approve safe reads. How to fix →
No tool declares an outputSchema.
Declare outputSchema and return structuredContent (MCP 2025-06-18+). Agents can then parse results without guessing, and chain tools reliably. How to fix →
Requires authentication; tool definitions could not be read anonymously.
If discovery should be public, allow initialize + tools/list without credentials and gate only tools/call. Directories and routers can then list your tools.
Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. 4 tool(s) still need parameter descriptions written by someone who knows the API. All of them as JSON: /v1/readiness/mcp-registry%2Fapp.marketgenius%2Fmcp/fixes
{
"name": "mg_calculator_cagr_update",
"description": "Update one or more fields in the already-open CAGR Calculator.\nALWAYS call mg_calculator_cagr_state first — the user may have\nchanged values manually in the GUI and you must not overwrite them.\nPass the version you received from that call (or from the open tool\nif updating immediately after opening). Only pass the fields the\nuser explicitly asked to change; omit all others. Send all changes\nin a single call — multiple sequential calls lose intermediate\nupdates (only the last one applies).",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"sessionId",
"version"
],
"properties": {
"years": {
"type": "integer",
"default": 0,
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Number of years of investment. Default: 0"
},
"version": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Current session version — call mg_calculator_cagr_state first to get this."
},
"sessionId": {
"type": "string",
"description": "Session ID returned by the open tool."
},
"endingValue": {
"type": "string",
"default": "",
"description": "Ending (final) investment value."
},
"beginningValue": {
"type": "string",
"default": "",
"description": "Beginning (initial) investment value."
},
"currencySymbol": {
"type": "string",
"description": "Currency symbol, e.g. \"$\" or \"€\". Default: \"$\""
}
}
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true
},
"title": "CAGR Calculator — Update"
}{
"name": "mg_calculator_dividend_update",
"description": "Update one or more fields in the already-open Dividend Calculator.\nALWAYS call mg_calculator_dividend_state first — the user may have\nchanged values manually in the GUI and you must not overwrite them.\nPass the version you received from that call (or from the open tool\nif updating immediately after opening). Only pass the fields the\nuser explicitly asked to change; omit all others. Send all changes\nin a single call — multiple sequential calls lose intermediate\nupdates (only the last one applies)",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"sessionId",
"version"
],
"properties": {
"mode": {
"enum": [
"amount",
"shares"
],
"type": "string",
"default": "amount",
"description": "Entry mode. Default: \"amount\""
},
"version": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Current session version — call mg_calculator_dividend_state first to get this."
},
"bsShares": {
"type": "string",
"default": "",
"description": "By shares: Number of shares."
},
"sessionId": {
"type": "string",
"description": "Session ID returned by the open tool."
},
"baDivYield": {
"type": "string",
"default": "",
"description": "By amount: Dividend yield percentage."
},
"baReinvest": {
"type": "boolean",
"default": true,
"description": "By amount: Reinvest dividends. Default: true"
},
"bsDivYield": {
"type": "string",
"default": "",
"description": "By shares: Dividend yield percentage."
},
"bsReinvest": {
"type": "boolean",
"default": true,
"description": "By shares: Reinvest dividends. Default: true"
},
"bsSharePrice": {
"type": "string",
"default": "",
"description": "By shares: Share price."
},
"currencySymbol": {
"type": "string",
"description": "Currency symbol, e.g. \"$\" or \"€\". Default: \"$\""
},
"baDepositAmount": {
"type": "string",
"default": "",
"description": "By amount: Monthly deposit amount."
},
"baDepositMonths": {
"type": "integer",
"default": 1,
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "By amount: Deposit months per year (1-12). Default: 1"
},
"baDivGrowthRate": {
"type": "number",
"default": 0,
"description": "By amount: Annual dividend growth rate %. Default: 0"
},
"baInflationRate": {
"type": "number",
"default": 0,
"description": "By amount: Inflation rate %. Default: 0"
},
"bsDivGrowthRate": {
"type": "number",
"default": 0,
"description": "By shares: Annual dividend growth rate %. Default: 0"
},
"bsInflationRate": {
"type": "number",
"default": 0,
"description": "By shares: Inflation rate %. Default: 0"
},
"baProjectionPeriod": {
"type": "integer",
"default": 0,
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "By amount: Projection period in years. Default: 0"
},
"bsProjectionPeriod": {
"type": "integer",
"default": 0,
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "By shares: Projection period in years. Default: 0"
},
"baInitialInvestment": {
"type": "string",
"default": "",
"description": "By amount: Initial investment amount."
},
"baSharePriceGrowthRate": {
"type": "number",
"default": 0,
"description": "By amount: Annual price growth rate %. Default: 0"
},
"bsSharePriceGrowthRate": {
"type": "number",
"default": 0,
"description": "By shares: Annual price growth rate %. Default: 0"
}
}
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true
},
"title": "Dividend Calculator — Update"
}{
"name": "mg_calculator_market_cap_update",
"description": "Update one or more fields in the already-open Market Cap Calculator.\nALWAYS call mg_calculator_market_cap_state first — the user may have\nchanged values manually in the GUI and you must not overwrite them.\nPass the version you received from that call (or from the open tool\nif updating immediately after opening). Only pass the fields the\nuser explicitly asked to change; omit all others. Send all changes\nin a single call — multiple sequential calls lose intermediate\nupdates (only the last one appl",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"sessionId",
"version"
],
"properties": {
"version": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Current session version — call mg_calculator_market_cap_state first to get this."
},
"marketCap": {
"type": "string",
"default": "",
"description": "Market capitalization."
},
"sessionId": {
"type": "string",
"description": "Session ID returned by the open tool."
},
"sharePrice": {
"type": "string",
"default": "",
"description": "Price per share."
},
"currencySymbol": {
"type": "string",
"description": "Currency symbol, e.g. \"$\" or \"€\". Default: \"$\""
},
"sharesOutstanding": {
"type": "string",
"default": "",
"description": "Total shares outstanding."
}
}
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true
},
"title": "Market Cap Calculator — Update"
}Get an email or webhook when this server's readiness drops by 10+ points, tool-poisoning text appears, or a tool breaks:
curl -X POST https://glimind.com/v1/subscriptions -H 'content-type: application/json' -d '{"tools":["mcp-registry/app.marketgenius/mcp"],"email":"[email protected]"}'Agents: watch_tool({"toolId": "mcp-registry/app.marketgenius/mcp"}) over MCP.
mg_calculator_dividend_update ~884 tokensmg_calculator_dividend ~774 tokensmg_calculator_dividend_sync ~746 tokensmg_calculator_cagr_update ~389 tokensmg_calculator_market_cap_update ~367 tokensStatic checks of the advertised tools/list (schema, descriptions, annotations, tool-poisoning patterns, names, size) plus observed protocol, uptime, latency and contract changes. Read-only: no tool is ever called. Weights: schema 15, docs 20, safety 15, efficiency 15, compatibility 15, protocol 5, reliability 10, stability 5. Token counts are estimates (~3.6 characters per token).
Operator? Fix these, then re-check live. Embed the readiness badge:
[](https://glimind.com/server/mcp-registry%2Fapp.marketgenius%2Fmcp?ref=badge)
<a href="https://glimind.com/server/mcp-registry%2Fapp.marketgenius%2Fmcp?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fapp.marketgenius%2Fmcp.svg" alt="MCP agent-readiness"></a>
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fapp.marketgenius%2Fmcp.svg :target: https://glimind.com/server/mcp-registry%2Fapp.marketgenius%2Fmcp?ref=badge :alt: MCP agent-readiness
Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:d468f909c19a1f3f…, first seen 2026-10-17, included at leaf 9467 of 75,507. Version history · verify what your client received.
Compare: most reliable finance servers · most reliable productivity servers · most reliable knowledge servers
Glimind tells agents whether a server is up right now and how to call it, then fails over to a live alternative when it isn't.
Claude Code
claude mcp add --transport http glimind https://glimind.com/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"glimind": {
"type": "http",
"url": "https://glimind.com/mcp"
}
}
}
As of 2026-10-26 20:59 UTC, the Marketgenius MCP server is up (it requires sign-in) with a Glimind reliability score of 92/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks.
Marketgenius MCP server advertises 17 tools, including mg_calculator_cagr, mg_calculator_cagr_state, mg_calculator_cagr_sync, mg_calculator_cagr_update, mg_calculator_dividend.
Point your MCP client at this streamable-http endpoint: https://marketgenius.app/mcp
Glimind scanned all 17 tool definitions for tool-poisoning patterns — hidden or invisible characters, instructions that override the model, concealment from the user, requests to read credential or MCP config files, conversation exfiltration and cross-tool shadowing — and found none. This checks what the server tells the model, not what its code does; review the source before granting access to sensitive data.
Status page: 90-day uptime, every outage and how long it lasted.
Claim this listing to get the Verified operator marker, a remediation checklist and owner analytics, or embed the live badge from any of the tool pages above. Maintainers: alerts, deploy attestation and monthly reports.
Status is an automated estimate from Glimind's liveness checks (handshake and tool listing only; no tool is ever called) and may lag or differ from your network. Glimind is not affiliated with this server or its operator. Operator? Request a correction or opt out at https://glimind.com/opt-out.