{"serverId":"mcp-registry/app.marketgenius/mcp","tools":[{"name":"mg_calculator_cagr_update","fixed":{"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"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":389,"tokensAfter":389},{"name":"mg_calculator_dividend_update","fixed":{"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"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":884,"tokensAfter":884},{"name":"mg_calculator_market_cap_update","fixed":{"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"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":367,"tokensAfter":367},{"name":"mg_calculator_profit_margin_update","fixed":{"name":"mg_calculator_profit_margin_update","description":"Update one or more fields in the already-open Profit Margin Calculator.\nALWAYS call mg_calculator_profit_margin_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 on","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["sessionId","version"],"properties":{"cost":{"type":"string","default":"","description":"Cost of goods sold."},"revenue":{"type":"string","default":"","description":"Annual revenue."},"version":{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991,"description":"Current session version — call mg_calculator_profit_margin_state first to get this."},"sessionId":{"type":"string","description":"Session ID returned by the open tool."},"currencySymbol":{"type":"string","description":"Currency symbol, e.g. \"$\" or \"€\". Default: \"$\""}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"title":"Profit Margin Calculator — Update"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":340,"tokensAfter":340},{"name":"mg_list","fixed":{"name":"mg_list","description":"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. ","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"category":{"enum":["calculators"],"type":"string","description":"Filter by category. Omit to list all tools."}}},"annotations":{"readOnlyHint":true},"title":"List Marketgenius Tools"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":115,"tokensAfter":115}],"toolsChanged":5,"tokensSaved":0,"todo":[{"tool":"mg_calculator_cagr_state","params":["sessionId"]},{"tool":"mg_calculator_dividend_state","params":["sessionId"]},{"tool":"mg_calculator_market_cap_state","params":["sessionId"]},{"tool":"mg_calculator_profit_margin_state","params":["sessionId"]}],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}