mcp-registry/dev.quantrisk/mcp-server · v1.0.0
Also listed as mcp-registry/io.github.78degrees/quantrisk
As of 2026-10-23 17:06 UTC, the Quantrisk MCP server is up with a Glimind reliability score of 93/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks. It had 1 outage in 90 days, with a median recovery of 20 minutes.
Portfolio risk analytics — VaR, Monte Carlo, optimization, options Greeks, stress testing.
Claude Code
claude mcp add --transport http quantrisk-mcp-server https://quantrisk-mcp.quantrisk.workers.dev/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"quantrisk-mcp-server": {
"type": "http",
"url": "https://quantrisk-mcp.quantrisk.workers.dev/mcp"
}
}
}
Third-party server, listed as discovered. Review its source before installing.
10 of 10 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 →
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 →
Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. All of them as JSON: /v1/readiness/mcp-registry%2Fdev.quantrisk%2Fmcp-server/fixes
{
"name": "analyze_risk",
"description": "Calculate core risk metrics for a portfolio — Value at Risk (VaR), Conditional VaR (CVaR), volatility, beta, and max drawdown.",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"positions"
],
"properties": {
"method": {
"enum": [
"historical",
"parametric",
"cornish_fisher"
],
"type": "string",
"default": "historical",
"description": "VaR calculation method. \"historical\" uses empirical return distribution, \"parametric\" assumes normality, \"cornish_fisher\" adjusts for skew and kurtosis. Default: \"historical\"."
},
"benchmark": {
"type": "string",
"default": "SPY",
"maxLength": 10,
"minLength": 1,
"description": "Benchmark ticker for beta calculation, e.g. SPY or QQQ. Default: SPY."
},
"positions": {
"type": "array",
"items": {
"type": "object",
"required": [
"ticker",
"quantity"
],
"properties": {
"ticker": {
"type": "string",
"pattern": "^[A-Z0-9.^-]{1,10}$",
"maxLength": 10,
"minLength": 1,
"description": "Ticker symbol, e.g. AAPL or MSFT. Must be uppercase, 1-10 characters."
},
"quantity": {
"type": "number",
"description": "Number of shares held. Use a negative value to represent a short position."
},
"cost_basis": {
"anyOf": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "null"
}
],
"description": "Per-share cost basis in USD. Optional — used only for P&L calculations."
}
},
"additionalProperties": false
},
"maxItems": 500,
"minItems": 1,
"description": "Array of portfolio positions. Each entry needs a ticker and quantity. Free tier: max 20 positions. Paid tier: up to 500."
},
"horizon_days": {
"type": "integer",
"default": 1,
"maximum": 252,
"minimum": 1,
"description": "Risk horizon in trading days. 1 = overnight, 21 ≈ 1 month, 252 ≈ 1 year. Default: 1."
},
"lookback_days": {
"type": "integer",
"default": 252,
"maximum": 1260,
"minimum": 30,
"description": "Number of historical trading days to use. 252 ≈ 1 year, 756 ≈ 3 years. Range: 30-1260. Default: 252."
},
"confidence_level": {
"type": "number",
"default": 0.95,
"maximum": 0.99,
"minimum": 0.01,
"description": "VaR confidence level as a decimal, e.g. 0.95 = 95%. Range: 0.01-0.99. Default: 0.95."
}
},
"additionalProperties": false
},
"annotations": {
"readOnlyHint": true
}
}{
"name": "calculate_greeks",
"description": "Calculate option Greeks (delta, gamma, theta, vega, rho) for individual options or an options portfolio. Uses Black-Scholes for European, binomial for American style. Paid tier only.",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"options"
],
"properties": {
"options": {
"type": "array",
"items": {
"type": "object",
"required": [
"underlying",
"strike",
"expiry",
"option_type"
],
"properties": {
"style": {
"enum": [
"european",
"american"
],
"type": "string",
"default": "european",
"description": "Option exercise style. \"european\" can only be exercised at expiry (Black-Scholes). \"american\" can be exercised any time (binomial model). Default: \"european\"."
},
"expiry": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Option expiry date in ISO 8601 format, e.g. 2026-12-19. Must be a future date."
},
"strike": {
"type": "number",
"description": "Option strike price in USD. Must be a positive number.",
"exclusiveMinimum": 0
},
"quantity": {
"type": "integer",
"default": 1,
"description": "Number of contracts. Positive = long, negative = short. Default: 1."
},
"underlying": {
"type": "string",
"pattern": "^[A-Z0-9.^-]{1,10}$",
"maxLength": 10,
"minLength": 1,
"description": "Ticker symbol of the underlying asset, e.g. AAPL."
},
"option_type": {
"enum": [
"call",
"put"
],
"type": "string",
"description": "Option type: \"call\" gives the right to buy, \"put\" gives the right to sell."
},
"market_price": {
"anyOf": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "null"
}
],
"description": "Current market price of the option in USD. Required when implied_volatility is not provided."
},
"implied_volatility": {
"anyOf": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "null"
}
],
"description": "Implied volatility as a decimal, e.g. 0.25 = 25%. If omitted or null, it is computed from market_price."
}
},
"additionalProperties": false
},
"maxItems": 100,
"minItems": 1,
"description": "Array of option positions to calculate Greeks for. 1-100 options. Results include per-option Greeks and aggregated portfolio Greeks."
},
"risk_free_rate": {
"type": "number",
"default": 0.05,
"maximum": 1,
"minimum": 0,
"description": "Annualized risk-free rate as a decimal, e.g. 0.05 = 5%. Used in Black-Scholes and binomial pricing models. Default: 0.05."
}
},
"additionalProperties": false
},
"annotations": {
"readOnlyHint": true
}
}{
"name": "compare_portfolios",
"description": "Compare two or more portfolio allocations head-to-head across all key risk and return metrics. Paid tier only.",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"portfolios"
],
"properties": {
"portfolios": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"positions"
],
"properties": {
"name": {
"type": "string",
"maxLength": 50,
"minLength": 1,
"description": "Human-readable label for this portfolio, e.g. 'Current' or 'Rebalanced'. 1-50 chars."
},
"positions": {
"type": "array",
"items": {
"type": "object",
"required": [
"ticker",
"quantity"
],
"properties": {
"ticker": {
"type": "string",
"pattern": "^[A-Z0-9.^-]{1,10}$",
"maxLength": 10,
"minLength": 1,
"description": "Ticker symbol, e.g. AAPL or MSFT. Must be uppercase, 1-10 characters."
},
"quantity": {
"type": "number",
"description": "Number of shares held. Use a negative value to represent a short position."
},
"cost_basis": {
"anyOf": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "null"
}
],
"description": "Per-share cost basis in USD. Optional — used only for P&L calculations."
}
},
"additionalProperties": false
},
"maxItems": 500,
"minItems": 1,
"description": "Positions in this portfolio. 1-500 entries."
}
},
"additionalProperties": false
},
"maxItems": 5,
"minItems": 2,
"description": "Two to five named portfolios to compare head-to-head. Each needs a unique name and a list of positions. Min: 2, max: 5."
},
"period_days": {
"type": "integer",
"default": 252,
"maximum": 1260,
"minimum": 30,
"description": "Lookback period in trading days used for return and risk calculations. 252 = ~1 year. Range: 30-1260. Default: 252."
},
"confidence_level": {
"type": "number",
"default": 0.95,
"maximum": 0.99,
"minimum": 0.01,
"description": "VaR confidence level as a decimal, e.g. 0.95 = 95%. Range: 0.01-0.99. Default: 0.95."
}
},
"additionalProperties": false
},
"annotations": {
"readOnlyHint": true
}
}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/dev.quantrisk/mcp-server"],"email":"[email protected]"}'Agents: watch_tool({"toolId": "mcp-registry/dev.quantrisk/mcp-server"}) over MCP.
stress_test ~731 tokensoptimize_portfolio ~672 tokenscalculate_greeks ~636 tokensmonte_carlo_simulation ~582 tokensanalyze_risk ~581 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%2Fdev.quantrisk%2Fmcp-server?ref=badge)
<a href="https://glimind.com/server/mcp-registry%2Fdev.quantrisk%2Fmcp-server?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fdev.quantrisk%2Fmcp-server.svg" alt="MCP agent-readiness"></a>
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fdev.quantrisk%2Fmcp-server.svg :target: https://glimind.com/server/mcp-registry%2Fdev.quantrisk%2Fmcp-server?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:17a5113efae5844c…, first seen 2026-10-17, included at leaf 16584 of 53,234. Version history · verify what your client received.
Compare: most reliable finance servers · most reliable data 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-23 17:06 UTC, the Quantrisk MCP server is up with a Glimind reliability score of 93/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks. It had 1 outage in 90 days, with a median recovery of 20 minutes.
Quantrisk MCP server advertises 10 tools, including analyze_risk, calculate_greeks, compare_portfolios, correlation_matrix, monte_carlo_simulation.
Point your MCP client at this streamable-http endpoint: https://quantrisk-mcp.quantrisk.workers.dev/mcp
Glimind scanned all 10 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.