monte_carlo_portfolio
Pure-compute Monte Carlo portfolio simulation using Geometric Brownian Motion (GBM). Models a multi-asset portfolio across time with contributions, withdrawals, and annual rebalancing. Returns full probability distribution of terminal wealth, percentile paths, drawdown stats, and Sharpe ratio. Mo...
This record as markdown: /tools/io-github-getgapup-gapup-mcp/monte-carlo-portfolio.md
What monte_carlo_portfolio does on Gapup Mcp
AI agents invoke monte_carlo_portfolio to trigger actions in Gapup Mcp. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.
| Parameter | Type | Required | Description |
|---|---|---|---|
mode | string | Yes | simulate = full Monte Carlo GBM | glide_path = lifecycle target-date allocation | stress_test = 4 historical crisis scenarios |
async | boolean | — | If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client ti |
assets | array | Yes | Portfolio assets. Weights must sum to 1.0 (auto-normalized if not). |
simulations | number | — | Number of Monte Carlo simulations (1000-100000). Default 10000. |
horizon_years | number | Yes | Investment horizon in years (1-50). |
target_value_eur | number | — | Target terminal portfolio value in EUR. Used to compute probability_target_achieved. |
confidence_intervals | array | — | Percentiles to compute in the output distribution. Default [5, 25, 50, 75, 95]. |
initial_investment_eur | number | Yes | Initial capital in EUR (e.g. 100000 for €100k). |
withdrawals_annual_eur | number | — | Annual withdrawal amount in EUR for decumulation phase (e.g. 50000 for €50k/yr). |
contributions_annual_eur | number | — | Annual contribution in EUR (e.g. 12000 for €1000/month). |
Parameters from the server's own tool schema.
Why monte_carlo_portfolio is rated High
This tool runs computational simulations (Monte Carlo, GBM, stress tests) and produces derived financial analytics. It does not move money or commit financial obligations, nor does it read/write external data — it executes numerical modeling routines. While the outputs inform financial decisions, no actual transactions occur, placing it in Execute rather than Financial.
From the tool's definition Pure-compute Monte Carlo portfolio simulation using Geometric Brownian Motion (GBM)... Returns full probability distribution of terminal wealth, percentile paths, drawdown stats, and Sharpe ratio. Modes: simulate | glide_path | stress_test
Risk signalsHigh parameter count (14 properties)
Attacks that exploit this kind of access
The rule that runs monte_carlo_portfolio safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Gapup Mcp, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For monte_carlo_portfolio, this is the rule to start with:
monte_carlo_portfolio stays usable, but rate-capped: a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Gapup Mcp, apply this rule, and every monte_carlo_portfolio call is checked against it from then on.
Questions about monte_carlo_portfolio
Pure-compute Monte Carlo portfolio simulation using Geometric Brownian Motion (GBM). Models a multi-asset portfolio across time with contributions, withdrawals, and annual rebalancing. Returns full probability distribution of terminal wealth, percentile paths, drawdown stats, and Sharpe ratio. Modes: simulate (full Monte Carlo) | glide_path (lifecycle 110-age target-date allocation) | stress_test (4 historical crises: 2008 GFC / 2000 dotcom / 1970s stagflation / 2020 COVID). No external data needed — all computed from asset assumptions. Ticker defaults built-in: SPY/VOO/VTI 7%/15%, QQQ 9%/20%, TLT/BND 3%/6%, GLD 5%/18%, BTC 30%/70%. ICP: asset managers, family offices, retail wealth advisors, robo-advisor agents, retirement planners. 10k simulations × 30 years runs in <3s on V8 JIT. It is categorised as a Execute tool in the Gapup Mcp MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
monte_carlo_portfolio accepts 10 parameters: mode, async, assets, simulations, horizon_years, target_value_eur, confidence_intervals, initial_investment_eur, withdrawals_annual_eur, contributions_annual_eur. Required: mode, assets, horizon_years, initial_investment_eur. The full parameter table on this page comes from the server's own tool schema.
Register the Gapup MCP server in PolicyLayer and add a rule for monte_carlo_portfolio: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Gapup Mcp. Nothing to install.
monte_carlo_portfolio is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the monte_carlo_portfolio rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for monte_carlo_portfolio. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
monte_carlo_portfolio is provided by the Gapup MCP server (https://mcp.gapup.io/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Gapup, and thousands of servers like it.
Across the catalogue