asset-management
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| portfolio_summaryA | The user's current holdings + P&L + annualized returns (offline, read-only). Use to answer 'what do I hold / how am I doing'. |
| risk_reportA | Drawdown-first risk panel for the held portfolio: max drawdown (depth/dates/recovery + CI), Ulcer, CDaR, and Sharpe/Sortino/Calmar with bootstrap confidence intervals, plus the annualized time-weighted return (it rides on the same daily history). Offline, read-only. Use to answer 'how risky / how deep are the drawdowns' — and for the time-weighted return portfolio_summary can't compute. |
| rebalance_checkA | Buy/sell/hold suggestions to move current holdings toward the target allocation (ASSET_TARGET). There are exactly 4 modes: 'to_total' (rebalance the whole book back to target weights — ALSO deploys new_cash into the rebalance if you pass it) and 'bands' (the same plan, but only when some sleeve has drifted past the 5%/25% threshold; if none has, every line is HOLD); 'fixed_dca' (spread new_cash across the target mix) and 'cash_flow_only' (put new_cash into the most-underweight sleeves) — these two REQUIRE new_cash > 0 and suggest all-HOLD when it is 0. Offline + read-only — it suggests, never trades. A NEW target ticker can't be sized offline (no cached price); those appear under 'unpriced'. |
| securities_factsA | Published fund facts for each of the user's holdings (offline, read-only): type (ETF vs stock), expense ratio, AUM, average volume, age, category. Use to answer 'what am I paying / how big / how liquid / how old are my funds'. Reads the 7-day metadata cache; uncached holdings appear under 'missing'. |
| discover_gapsA | Roles the user's portfolio is light in (≤3% of market value), each with comparable funds from its standard SHELF — core funds first, so a style tilt or junk bond never fills a gap while a plain option exists (offline, read-only, propose-only). |
| screen_candidateA | Judge a NEW ticker against the user's book (offline, read-only, propose-only): cost, liquidity, age, concentration, overlap with what they hold, and whether it diversified their past drawdowns — each with a reason and the figures behind it. Use to answer 'is TICKER a good fit'. Fetches TICKER's price history on demand if it isn't cached (unless ASSET_MCP_OFFLINE is set). Never a buy recommendation or a return forecast. |
| propose_allocationA | Propose a strategic target allocation for a risk posture (conservative / moderate / aggressive) over the user's book + the curated universe, and validate it against a canonical reference (60-40 / all-weather / permanent) with a held-out recent-window drawdown verdict. Use to answer 'what should a moderate portfolio look like for me, and is it sound'. Propose-only: never trades, never a recommendation or return forecast — every weight comes from the deterministic core. The weights are always returned; the verdict needs the reference tickers cached, else it's null with a warm note. Pass benchmark='none' to skip validation. |
| starter_allocationA | Turn a new user's risk answers into a starting allocation. Pass the three onboarding answers — horizon ('under_3_years' | '3_to_10_years' | 'over_10_years'), loss_response ('sell' | 'hold' | 'buy_more'), cash_buffer ('no' | 'partly' | 'comfortably') — and it maps them to a conservative/moderate/aggressive posture (a fixed, explainable rubric — never your guess) and returns that preset allocation validated against a benchmark (60-40 / all-weather / permanent, or 'none' to skip — default 60-40), same as propose_allocation. Ask the three questions in plain language first, then call this with the chosen answer tokens. Propose-only: a hand-designed starting posture, never a recommendation or a return forecast. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| portfolio_checkup | The full picture: holdings + returns + drawdown-first risk, in plain words. |
| whats_my_drawdown | How deep my portfolio fell, how long it stayed down, and what that felt like. |
| should_i_rebalance | Whether my target policy says to act, for a chosen mode (to_total | bands | fixed_dca | cash_flow_only). |
| fill_my_gaps | Portfolio roles I'm light in + screened candidate ETFs for each (propose-only). |
| find_my_starting_allocation | New here? Answer 3 risk questions and get a starting allocation matched to them. |
| propose_a_posture | A starting allocation for a risk posture (conservative / moderate / aggressive), validated against a benchmark (60-40 / all-weather / permanent, or 'none' to skip). |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| guarantees | The trust manifest: what this server will and won't do — four guarantees enforced in code and pinned by tests. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/disin7c9/asset-management'
If you have feedback or need assistance with the MCP directory API, please join our Discord server