Redstone Markets

Performance, risk, comparisons, backtests and screening for US stocks and ETFs, with charts.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
91%
Calidad de los nombres
85%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~3,922Tokens (definiciones de herramientas)
~9.1 KBTamaño de respuesta típico
Impacto significativo en la atención (3.06% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "redstone": {
      "url": "https://redstonemarkets.com/api/mcp"
    }
  }
}

Puntos de conexión remotos

https://redstonemarkets.com/api/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (4)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢get_security_metrics(ticker)

Use this when the user asks how a single US stock or ETF has performed or how risky it is: YTD, 1-year and 5-year annualized returns, max drawdown, Sharpe, Sortino, beta and alpha, with a 1Y/5Y chart. End-of-day data for US large and mid caps, major foreign stocks and US ETFs. Not for intraday quotes, news, earnings, fundamentals or price targets.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "minLength": 1,
      "maxLength": 12,
      "description": "US ticker symbol, e.g. AAPL, VOO or BRK.B"
    }
  },
  "required": [
    "ticker"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "asOf": {
      "description": "Market date (YYYY-MM-DD) of the latest close behind every number",
      "type": [
        "string",
        "null"
      ]
    },
    "security": {
      "type": "object",
      "properties": {
        "return1dPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "returnYtdPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "return1yPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "return5yAnnualizedPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "maxDrawdown1yPct": {
          "description": "Worst peak-to-trough fall over the past year (negative)",
          "type": [
            "number",
            "null"
          ]
        },
        "sharpe1y": {
          "type": [
            "number",
            "null"
          ]
        },
        "sortino1y": {
          "type": [
            "number",
            "null"
          ]
        },
        "beta1y": {
          "description": "Versus SPY, from daily returns over the past year",
          "type": [
            "number",
            "null"
          ]
        },
        "alpha1yPct": {
          "description": "Annualized, versus SPY",
          "type": [
            "number",
            "null"
          ]
        },
        "ticker": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "stock",
            "etf"
          ]
        },
        "sector": {
          "description": "GICS sector for stocks, category for ETFs",
          "type": [
            "string",
            "null"
          ]
        },
        "price": {
          "description": "Latest close in USD",
          "type": [
            "number",
            "null"
          ]
        },
        "url": {
          "type": "string",
          "description": "Redstone page for this security"
        }
      },
      "required": [
        "return1dPct",
        "returnYtdPct",
        "return1yPct",
        "return5yAnnualizedPct",
        "maxDrawdown1yPct",
        "sharpe1y",
        "sortino1y",
        "beta1y",
        "alpha1yPct",
        "ticker",
        "name",
        "type",
        "sector",
        "price",
        "url"
      ],
      "additionalProperties": false
    },
    "comparisons": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "label",
          "url"
        ],
        "additionalProperties": false
      },
      "description": "Popular Redstone comparisons for this ticker"
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "asOf",
    "security",
    "comparisons",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢compare_securities(tickers)

Use this when the user wants to compare 2 to 5 US stocks or ETFs side by side (e.g. "VOO vs QQQ", "SCHD or VYM?"): returns, drawdown, Sharpe, beta and how correlated they are, with an overlaid 1Y/5Y chart. End-of-day data for US large and mid caps, major foreign stocks and US ETFs. Not for intraday quotes or recommendations on what to buy.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "tickers": {
      "minItems": 2,
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 12,
        "description": "US ticker symbol, e.g. AAPL, VOO or BRK.B"
      },
      "description": "Tickers to compare, in the order the user named them"
    }
  },
  "required": [
    "tickers"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "asOf": {
      "description": "Market date (YYYY-MM-DD) of the latest close behind every number",
      "type": [
        "string",
        "null"
      ]
    },
    "securities": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "return1dPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "returnYtdPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return1yPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return5yAnnualizedPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "maxDrawdown1yPct": {
            "description": "Worst peak-to-trough fall over the past year (negative)",
            "type": [
              "number",
              "null"
            ]
          },
          "sharpe1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "sortino1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "beta1y": {
            "description": "Versus SPY, from daily returns over the past year",
            "type": [
              "number",
              "null"
            ]
          },
          "alpha1yPct": {
            "description": "Annualized, versus SPY",
            "type": [
              "number",
              "null"
            ]
          },
          "ticker": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stock",
              "etf"
            ]
          },
          "sector": {
            "description": "GICS sector for stocks, category for ETFs",
            "type": [
              "string",
              "null"
            ]
          },
          "price": {
            "description": "Latest close in USD",
            "type": [
              "number",
              "null"
            ]
          },
          "url": {
            "type": "string",
            "description": "Redstone page for this security"
          }
        },
        "required": [
          "return1dPct",
          "returnYtdPct",
          "return1yPct",
          "return5yAnnualizedPct",
          "maxDrawdown1yPct",
          "sharpe1y",
          "sortino1y",
          "beta1y",
          "alpha1yPct",
          "ticker",
          "name",
          "type",
          "sector",
          "price",
          "url"
        ],
        "additionalProperties": false
      }
    },
    "correlation": {
      "type": "object",
      "properties": {
        "tickers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "matrix": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "description": "Pearson correlation of daily returns over the past year, in the order of `tickers`"
        },
        "matrix5y": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "description": "Pearson correlation of weekly returns over the past five years, in the order of `tickers`; null where a ticker has less history. One year can be far from the usual relationship, so mention both when they differ much"
        }
      },
      "required": [
        "tickers",
        "matrix",
        "matrix5y"
      ],
      "additionalProperties": false
    },
    "url": {
      "description": "Redstone compare page (pairs only)",
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "asOf",
    "securities",
    "correlation",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢backtest_portfolio(positions)

Use this when the user describes a portfolio of US stocks and ETFs with weights (e.g. "60% VTI, 40% BND", "equal parts AAPL, MSFT, NVDA") and wants to know how it would have done or how risky it is: returns over YTD, 1 year and 5 years (rebalanced quarterly), max drawdown, Sharpe, beta vs SPY and the correlation between holdings, charted against SPY. 2 to 20 holdings. Not for live brokerage accounts, trading or allocation advice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "positions": {
      "minItems": 2,
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "ticker": {
            "type": "string",
            "minLength": 1,
            "maxLength": 12,
            "description": "US ticker symbol, e.g. AAPL, VOO or BRK.B"
          },
          "weight": {
            "type": "number",
            "exclusiveMinimum": 0,
            "description": "Relative weight, e.g. 60 for 60%. Weights are rescaled to sum to 100%, so equal weights can all be 1"
          }
        },
        "required": [
          "ticker",
          "weight"
        ]
      }
    }
  },
  "required": [
    "positions"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "asOf": {
      "description": "Market date (YYYY-MM-DD) of the latest close behind every number",
      "type": [
        "string",
        "null"
      ]
    },
    "portfolio": {
      "type": "object",
      "properties": {
        "return1dPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "returnYtdPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "return1yPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "return5yAnnualizedPct": {
          "type": [
            "number",
            "null"
          ]
        },
        "maxDrawdown1yPct": {
          "description": "Worst peak-to-trough fall over the past year (negative)",
          "type": [
            "number",
            "null"
          ]
        },
        "sharpe1y": {
          "type": [
            "number",
            "null"
          ]
        },
        "sortino1y": {
          "type": [
            "number",
            "null"
          ]
        },
        "beta1y": {
          "description": "Versus SPY, from daily returns over the past year",
          "type": [
            "number",
            "null"
          ]
        },
        "alpha1yPct": {
          "description": "Annualized, versus SPY",
          "type": [
            "number",
            "null"
          ]
        }
      },
      "required": [
        "return1dPct",
        "returnYtdPct",
        "return1yPct",
        "return5yAnnualizedPct",
        "maxDrawdown1yPct",
        "sharpe1y",
        "sortino1y",
        "beta1y",
        "alpha1yPct"
      ],
      "additionalProperties": false,
      "description": "Backtest of the weights, rebalanced back to them every quarter"
    },
    "holdings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "return1dPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "returnYtdPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return1yPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return5yAnnualizedPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "maxDrawdown1yPct": {
            "description": "Worst peak-to-trough fall over the past year (negative)",
            "type": [
              "number",
              "null"
            ]
          },
          "sharpe1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "sortino1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "beta1y": {
            "description": "Versus SPY, from daily returns over the past year",
            "type": [
              "number",
              "null"
            ]
          },
          "alpha1yPct": {
            "description": "Annualized, versus SPY",
            "type": [
              "number",
              "null"
            ]
          },
          "ticker": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stock",
              "etf"
            ]
          },
          "sector": {
            "description": "GICS sector for stocks, category for ETFs",
            "type": [
              "string",
              "null"
            ]
          },
          "price": {
            "description": "Latest close in USD",
            "type": [
              "number",
              "null"
            ]
          },
          "url": {
            "type": "string",
            "description": "Redstone page for this security"
          },
          "weightPct": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "return1dPct",
          "returnYtdPct",
          "return1yPct",
          "return5yAnnualizedPct",
          "maxDrawdown1yPct",
          "sharpe1y",
          "sortino1y",
          "beta1y",
          "alpha1yPct",
          "ticker",
          "name",
          "type",
          "sector",
          "price",
          "url",
          "weightPct"
        ],
        "additionalProperties": false
      }
    },
    "benchmark": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "return1dPct": {
              "type": [
                "number",
                "null"
              ]
            },
            "returnYtdPct": {
              "type": [
                "number",
                "null"
              ]
            },
            "return1yPct": {
              "type": [
                "number",
                "null"
              ]
            },
            "return5yAnnualizedPct": {
              "type": [
                "number",
                "null"
              ]
            },
            "maxDrawdown1yPct": {
              "description": "Worst peak-to-trough fall over the past year (negative)",
              "type": [
                "number",
                "null"
              ]
            },
            "sharpe1y": {
              "type": [
                "number",
                "null"
              ]
            },
            "sortino1y": {
              "type": [
                "number",
                "null"
              ]
            },
            "beta1y": {
              "description": "Versus SPY, from daily returns over the past year",
              "type": [
                "number",
                "null"
              ]
            },
            "alpha1yPct": {
              "description": "Annualized, versus SPY",
              "type": [
                "number",
                "null"
              ]
            },
            "ticker": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "type": {
              "type": "string",
              "enum": [
                "stock",
                "etf"
              ]
            },
            "sector": {
              "description": "GICS sector for stocks, category for ETFs",
              "type": [
                "string",
                "null"
              ]
            },
            "price": {
              "description": "Latest close in USD",
              "type": [
                "number",
                "null"
              ]
            },
            "url": {
              "type": "string",
              "description": "Redstone page for this security"
            }
          },
          "required": [
            "return1dPct",
            "returnYtdPct",
            "return1yPct",
            "return5yAnnualizedPct",
            "maxDrawdown1yPct",
            "sharpe1y",
            "sortino1y",
            "beta1y",
            "alpha1yPct",
            "ticker",
            "name",
            "type",
            "sector",
            "price",
            "url"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "description": "SPY, for comparison"
    },
    "correlation": {
      "type": "object",
      "properties": {
        "tickers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "matrix": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "description": "Pearson correlation of daily returns over the past year, in the order of `tickers`"
        },
        "matrix5y": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "description": "Pearson correlation of weekly returns over the past five years, in the order of `tickers`; null where a ticker has less history. One year can be far from the usual relationship, so mention both when they differ much"
        }
      },
      "required": [
        "tickers",
        "matrix",
        "matrix5y"
      ],
      "additionalProperties": false
    },
    "url": {
      "type": "string",
      "description": "Where to build and save this portfolio on Redstone"
    }
  },
  "required": [
    "asOf",
    "portfolio",
    "holdings",
    "benchmark",
    "correlation",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢screen_securities(type, sector, sortBy, order, filters, ...)

Use this when the user wants a ranked list of US stocks or ETFs by a performance or risk metric, optionally within a sector or ETF category (e.g. "lowest volatility dividend ETFs", "highest Sharpe tech stocks this year", "energy stocks with the smallest drawdown"). Covers about 1,100 US-listed stocks and about 480 US ETFs, end-of-day. Not for fundamentals (P/E, revenue), news or buy recommendations.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "type": {
      "default": "all",
      "description": "Limit to stocks, ETFs, or both",
      "type": "string",
      "enum": [
        "stock",
        "etf",
        "all"
      ]
    },
    "sector": {
      "description": "Case-insensitive match on a stock's GICS sector (e.g. Information Technology, Health Care, Energy, Financials) or an ETF's category (e.g. Dividend, Bonds, Treasury, Large Cap Growth, Emerging Markets, Gold)",
      "type": "string",
      "maxLength": 40
    },
    "sortBy": {
      "default": "return1yPct",
      "description": "Metric to rank by. For lowest risk, sort maxDrawdown1yPct descending (closest to 0) or beta1y ascending",
      "type": "string",
      "enum": [
        "return1dPct",
        "returnYtdPct",
        "return1yPct",
        "return5yAnnualizedPct",
        "maxDrawdown1yPct",
        "sharpe1y",
        "sortino1y",
        "beta1y",
        "alpha1yPct"
      ]
    },
    "order": {
      "default": "desc",
      "type": "string",
      "enum": [
        "desc",
        "asc"
      ]
    },
    "filters": {
      "description": "Optional bounds in each metric's own units, e.g. {metric: 'beta1y', max: 1}. maxDrawdown1yPct is negative, so a drawdown smaller than 20% is {metric: 'maxDrawdown1yPct', min: -20}",
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "metric": {
            "type": "string",
            "enum": [
              "return1dPct",
              "returnYtdPct",
              "return1yPct",
              "return5yAnnualizedPct",
              "maxDrawdown1yPct",
              "sharpe1y",
              "sortino1y",
              "beta1y",
              "alpha1yPct"
            ]
          },
          "min": {
            "type": "number"
          },
          "max": {
            "type": "number"
          }
        },
        "required": [
          "metric"
        ]
      }
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "asOf": {
      "description": "Market date (YYYY-MM-DD) of the latest close behind every number",
      "type": [
        "string",
        "null"
      ]
    },
    "totalMatches": {
      "type": "number"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "return1dPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "returnYtdPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return1yPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "return5yAnnualizedPct": {
            "type": [
              "number",
              "null"
            ]
          },
          "maxDrawdown1yPct": {
            "description": "Worst peak-to-trough fall over the past year (negative)",
            "type": [
              "number",
              "null"
            ]
          },
          "sharpe1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "sortino1y": {
            "type": [
              "number",
              "null"
            ]
          },
          "beta1y": {
            "description": "Versus SPY, from daily returns over the past year",
            "type": [
              "number",
              "null"
            ]
          },
          "alpha1yPct": {
            "description": "Annualized, versus SPY",
            "type": [
              "number",
              "null"
            ]
          },
          "ticker": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stock",
              "etf"
            ]
          },
          "sector": {
            "description": "GICS sector for stocks, category for ETFs",
            "type": [
              "string",
              "null"
            ]
          },
          "price": {
            "description": "Latest close in USD",
            "type": [
              "number",
              "null"
            ]
          },
          "url": {
            "type": "string",
            "description": "Redstone page for this security"
          }
        },
        "required": [
          "return1dPct",
          "returnYtdPct",
          "return1yPct",
          "return5yAnnualizedPct",
          "maxDrawdown1yPct",
          "sharpe1y",
          "sortino1y",
          "beta1y",
          "alpha1yPct",
          "ticker",
          "name",
          "type",
          "sector",
          "price",
          "url"
        ],
        "additionalProperties": false
      }
    },
    "url": {
      "type": "string",
      "description": "Redstone screener with every column and filter"
    }
  },
  "required": [
    "asOf",
    "totalMatches",
    "results",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada4 herramientas