Intrinsic stock value from SEC filings: DCF, EPV, Graham, moat signals. Deterministic, not guessed.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Is this a good business? Return on invested capital (or equity) against its cost of capital, and what management has done with the share count. Returns the year-by-year series as well as the averages, so the reading can be disputed without losing the evidence. These are signals, not verdicts — present them that way.
Ticker symbol, e.g. AAPL. Case-insensitive.
Is this a good business? Return on invested capital (or equity) against its cost of capital, and what management has done with the share count. Returns the year-by-year series as well as the averages, so the reading can be disputed without losing the evidence. These are signals, not verdicts — present them that way.
| Argument | Type | Description |
|---|---|---|
| ticker* | string | Ticker symbol, e.g. AAPL. Case-insensitive. |
{
"type": "object",
"required": [
"ticker"
],
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. AAPL. Case-insensitive."
}
}
}At a price you supply, the annual return the base case implies. MeritValue holds no market-data licence, so it never returns a live quote — the caller must provide the price. Ask the user for it, or have them check a broker; do not guess one, and do not present a guessed price as a real one.
| Argument | Type | Description |
|---|---|---|
| price* | number | Share price to test, in the company's reporting currency. |
| ticker* | string | Ticker symbol, e.g. AAPL. Case-insensitive. |
{
"type": "object",
"required": [
"ticker",
"price"
],
"properties": {
"price": {
"type": "number",
"description": "Share price to test, in the company's reporting currency."
},
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. AAPL. Case-insensitive."
}
}
}Normalized fundamentals per fiscal year — revenue, earnings, cash flow, capex, debt, shares — each carrying the CIK, accession number and XBRL tag it came from. Use when the user wants the underlying numbers or asks where a figure came from. Foreign filers report in their home currency; read the currency field.
| Argument | Type | Description |
|---|---|---|
| ticker* | string | Ticker symbol, e.g. AAPL. Case-insensitive. |
{
"type": "object",
"required": [
"ticker"
],
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. AAPL. Case-insensitive."
}
}
}Every valuation model's verdict plus the fair-value range: DCF (5Y/10Y), earnings-power value, Graham number, P/E reversion. Refusals are included and are meaningful — a DCF declining to value a bank is a result, not a gap. Never present a refused model as missing data, and never substitute another model's number for it.
| Argument | Type | Description |
|---|---|---|
| ticker* | string | Ticker symbol, e.g. AAPL. Case-insensitive. |
{
"type": "object",
"required": [
"ticker"
],
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. AAPL. Case-insensitive."
}
}
}The thesis for a company, computed from its SEC filings: business quality and fair value in one breath. Deterministic — the same filings always produce the same sentences — and byte-identical to what meritvalue.com shows. Returns null when the filings support neither a moat read nor a fair value, rather than inventing one. Use this first when asked whether a company is worth owning.
| Argument | Type | Description |
|---|---|---|
| ticker* | string | Ticker symbol, e.g. AAPL. Case-insensitive. |
{
"type": "object",
"required": [
"ticker"
],
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. AAPL. Case-insensitive."
}
}
}Rank covered companies by a chosen model's value. Requires a key with screening enabled — a 403 means the key lacks it, which is a plan limit and not an error to retry.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1–500, default 50). |
| model | string | Valuation model to rank by. |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"description": "Max results (1–500, default 50)."
},
"model": {
"enum": [
"dcf-growth-exit-5y",
"dcf-growth-exit-10y",
"graham-number",
"epv-equity"
],
"type": "string",
"description": "Valuation model to rank by."
}
}
}Resolve a company name or partial ticker to covered companies — 'coca cola' finds KO. Use this before the other tools when you have a name rather than a symbol. Coverage is US filers with SEC filings.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results (1–50, default 10). |
| query* | string | Company name or ticker fragment. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"description": "Max results (1–50, default 10)."
},
"query": {
"type": "string",
"description": "Company name or ticker fragment."
}
}
}