# Quantic Finance (remote · quantic.finance)

Dividend portfolio tracking and planning for US and EU markets: income, safety, Spain-aware taxes.

- Trust score: 72/100 (medium)
- Change this week: +4
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-20

## Components

- remote · `quantic.finance`: 72/100 (this document), [markdown](https://verifymcp.io/servers/finance-quantic-mcp/quantic.md), [page](https://verifymcp.io/servers/finance-quantic-mcp/quantic)

## Channel facts

- Endpoint: `https://quantic.finance/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-20.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 21 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 66/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 4447 tokens (~211/item across 21 items; 21 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 83/100
  - Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 67/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 0% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 21 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 21 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Quantic Finance MCP server?

Quantic Finance is a hosted endpoint at https://quantic.finance/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http finance-quantic-mcp 'https://quantic.finance/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "finance-quantic-mcp": {
      "url": "https://quantic.finance/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "finance-quantic-mcp": {
      "type": "http",
      "url": "https://quantic.finance/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.finance-quantic-mcp]
url = "https://quantic.finance/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "finance-quantic-mcp": {
      "type": "remote",
      "url": "https://quantic.finance/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add finance-quantic-mcp --url 'https://quantic.finance/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  finance-quantic-mcp:
    url: "https://quantic.finance/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "finance-quantic-mcp": {
      "Transport": "http",
      "Url": "https://quantic.finance/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add finance-quantic-mcp -t streamable-http -u 'https://quantic.finance/mcp'
```

### Other

```json
{
  "mcpServers": {
    "finance-quantic-mcp": {
      "type": "http",
      "url": "https://quantic.finance/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-20 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-18 (score 71, +1)

No change was recorded against any check on this day. Stability & Change Management went from 73 to 77. That category is still filling its 30-day observation window: 22 days of observed history at the previous scan, 23 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-16 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-14 (score 69, +1)

No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-12 (score 68, +1)

No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-09 (score 67, +1)

No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-07 (score 66, +1)

No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-05 (score 65, +1)

No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.

## MCP tools (21)

### `compare_stocks` (~84 tokens)

Compare stocks

Compare 2–4 stocks side by side (the /compare view): snapshot, dividend
growth, Quantic reads, valuation, momentum, financial health, schedule and
community metrics — with the winning column flagged per row (`best`). Pass a
list of tickers, e.g. ["KO","PEP","MO"].

Input parameters:

- `symbols` (array, required)

### `dividend_calendar` (~58 tokens)

Upcoming ex-dividend dates

Upcoming ex-dividend dates across the dividend universe over the next `days`
days (default 45, max 120), soonest first. Public — buy before the ex-date to
receive the next dividend.

Input parameters:

- `days` (integer)

### `get_dividends` (~186 tokens)

Your received dividends

The signed-in user's received (paid) dividends, newest first. Each row carries
the symbol, pay date, shares, per-share and gross amount, withholding tax, net
amount and currency. Optionally filter by `symbol` (e.g. "AAPL") and a
\`from`/`to` date window (ISO-8601, e.g. "2024-01-01"), and/or pass `portfolio`
(one of your portfolio names or slugs, case-insensitive — see
\`list_portfolios`) to narrow to that portfolio; omitted, dividends aggregate
across all your portfolios (rows then carry a `portfolio` name when you have
more than one). Private to the caller.

Input parameters:

- `from` (string)
- `portfolio` (string)
- `symbol` (string)
- `to` (string)

### `get_holdings` (~142 tokens)

Your holdings

The signed-in user's current holdings: each position's symbol, name, shares
held, average cost per share, trading currency and sector. This is cost-basis
data from the ledger (no live prices) — use `get_valuation` for current market
value, gain/loss and yield. Optionally pass `portfolio` (one of your portfolio
names or slugs, case-insensitive — see `list_portfolios`) to narrow to that
portfolio; omitted, holdings aggregate across all your portfolios (rows then
carry a `portfolio` name when you have more than one). Private to the caller.

Input parameters:

- `portfolio` (string)

### `get_income_attribution` (~382 tokens)

Why your income changed

Why the signed-in user's dividend income changed: the trailing 12 months
against the 12 before them, split into what the companies did, what the user
did, what the tax office took and what the exchange rate moved.

The four components sum to the headline change by construction, so they can be
quoted together without reconciling them yourself. Each is in the user's
preferred currency and **net of the withholding their broker recorded**, the
same basis `get_income_outlook` reports.

\`organic` is the part that came from raises alone — income the companies added
without the user putting in another cent. That is the number worth leading
with: a year where income grew because savings went in is a different
achievement from one where it grew because dividends were raised, and only the
second compounds on its own.

Returns `null` when the ledger doesn't reach back far enough to cover both
windows. That is a refusal, not an error: comparing a part-year against a full
one shows a collapse that never happened, so say the history is too short
rather than reporting a change.

Two honesty flags worth relaying when non-zero:

  \* `withholding_newly_reported` — holdings whose earlier window recorded no
    withholding and whose later one did. Their withholding line reflects the
    broker starting to report the tax, not the tax changing.
  \* `unresolved_fx` — payments whose historical rate couldn't be resolved.
    Those fall back to today's rate and so contribute nothing to the currency
    line, rather than inventing a move.

Optionally pass `portfolio` (one of your portfolio names or slugs,
case-insensitive — see `list_portfolios`); omitted, it aggregates across all
your portfolios. Private to the caller.

Input parameters:

- `portfolio` (string)

### `get_income_outlook` (~331 tokens)

Your dividend income outlook

The signed-in user's forward dividend income outlook, in their preferred
currency: projected annual income at the current rate (gross and net of
estimated foreign withholding tax), the income-weighted trailing dividend
growth, the current yield, the top income-contributing holdings (gross and
net per holding, ranked on the net basis when withholding applies; with each
one's growth, 5-year CAGR and consecutive-increase streak), and a year-by-year
income projection (gross and net).

Also `income_year` — the shape of a typical year: projected income per
calendar month, which months sit below the monthly average ("thin") or
collect nothing at all, and the share of the year landing in its three
biggest months (0.25 would be perfectly even; higher is lumpier). Most
companies pay quarterly on one of three cycles, so portfolios drift towards
collecting heavily in March/June/September/December, which matters to anyone
spending the income rather than reinvesting it. Absent for portfolios too
small for the shape to mean anything.

Set `years` for the projection horizon
(default 10, max 50) and `drip: true` to compound reinvested dividends.
Optionally pass `portfolio` (one of your portfolio names or slugs,
case-insensitive — see `list_portfolios`) to project just that portfolio;
omitted, the outlook aggregates across all your portfolios.
Private to the caller.

Input parameters:

- `drip` (boolean)
- `portfolio` (string)
- `years` (integer)

### `get_movements` (~187 tokens)

Your trades & cash movements

The signed-in user's trades / cash movements (buys, sells, …), newest first.
Each row carries the symbol, date, type, quantity, price, total amount, fee
and currency. Optionally filter by `symbol` (e.g. "AAPL") and a `from`/`to`
date window (ISO-8601, e.g. "2024-01-01"), and/or pass `portfolio` (one of
your portfolio names or slugs, case-insensitive — see `list_portfolios`) to
narrow to that portfolio; omitted, movements aggregate across all your
portfolios (rows then carry a `portfolio` name when you have more than one).
Private to the caller.

Input parameters:

- `from` (string)
- `portfolio` (string)
- `symbol` (string)
- `to` (string)

### `get_options` (~205 tokens)

Your options positions

The signed-in user's options positions — the income "wheel" of sold puts and
calls — newest first. Each row carries the symbol, put/call type, strike,
expiry, contracts, premium collected, fees, status (open/expired/assigned/
closed), net premium, break-even price, annualized premium yield (ratio) and
currency. Optionally filter by `symbol` (e.g. "AAPL")
and `status` ("open", "history" for everything resolved, or "all"), and/or
pass `portfolio` (one of your portfolio names or slugs, case-insensitive —
see `list_portfolios`) to narrow to that portfolio; omitted, positions
aggregate across all your portfolios (rows then carry a `portfolio` name when
you have more than one). Premium is received income alongside dividends.
Private to the caller.

Input parameters:

- `portfolio` (string)
- `status` (string)
- `symbol` (string)

### `get_performance` (~381 tokens)

How your portfolio has done

How the signed-in user's portfolio has actually done — an annualized
\**money-weighted** return (XIRR) in their preferred currency, including
dividends received and any sales, next to what the same money moved on the
same days would have made in broad index funds.

Money-weighted, not time-weighted: it counts *when* each amount went in, so
money invested before a good year earns more of the credit than money added
at the end. Every flow is converted at the exchange rate published on its
own date, so currency movement is part of the answer — unlike `get_realized`,
which deliberately never converts because it measures a position rather than
a portfolio.

\`status` says whether a number was produced:

  \* `"ok"` — `rate_pct` and the comparison are present.
  \* `"insufficient_ledger"` — no holding has any trades behind it, so there
    is nothing to measure a return on. Ask the user to import their broker's
    trades.
  \* `"awaiting_rates"` — historical exchange rates for the years the ledger
    spans are still being fetched; they arrive shortly.

\**`coverage` matters when reporting this.** Holdings whose shares were typed
in by hand have no purchase behind them, so they are excluded from both the
flows and the value: the rate describes only the part with trade history,
and `coverage.value_pct` says how much of the portfolio that is. Say so
rather than presenting the figure as the whole portfolio's.

Benchmarks are accumulating funds, whose price already includes reinvested
dividends, so both sides are total return. They are priced monthly, so treat
the comparison as a direction rather than a decimal. Private to the caller.

Input parameters:

- `portfolio` (string)

### `get_portfolio` (~178 tokens)

Your full portfolio snapshot

The signed-in user's complete portfolio snapshot in one call: current holdings
(shares + average cost), dividends received, trades (movements) and radar
watchlist with target prices. Their own private data, including amounts. Use
this for a full overview/backup; for a specific slice (filtered dividends or
movements, current market value, income projection) prefer the focused tools
(`get_dividends`, `get_movements`, `get_valuation`, `get_income_outlook`).
Optionally pass `portfolio` (one of your portfolio names or slugs,
case-insensitive — see `list_portfolios`) to narrow to that portfolio;
omitted, the snapshot aggregates across all your portfolios (ledger rows then
carry a `portfolio` name when you have more than one).

Input parameters:

- `portfolio` (string)

### `get_radar` (~61 tokens)

Your radar watchlist

The signed-in user's radar (watchlist): stocks they're tracking to buy or
sell, with their target buy/sell prices, notes and currency. Private to the
caller. Use `get_stock` to fetch the current price for any of these symbols.

### `get_realized` (~212 tokens)

What your sales realized

What the signed-in user's sales actually realized — the positions they've
sold out of, and the partial sales of positions they still hold. Each row
carries proceeds, the cost basis those proceeds consumed, and the **signed**
\`result` (negative when sold below the average cost), plus the holding
window, trade count and dividends collected while held. Pass
\`status: "closed"` for only the positions that were fully sold out, or
\`portfolio` (a portfolio name or slug — see `list_portfolios`) to narrow to
one; omitted, it covers every portfolio. Also returns per-currency totals.

Results use **average cost** and are never converted between currencies:
each figure stays in the currency the shares traded in. This is a measure of
how a position performed, not a tax calculation — most European tax rules
match each sale to specific purchases (FIFO) instead. Private to the caller.

Input parameters:

- `portfolio` (string)
- `status` (string)

### `get_stock` (~103 tokens)

Look up a stock

Look up a stock or ETF by ticker (e.g. "KO", "SCHD"): its dividend profile,
live quote, dividend safety, balance-sheet leverage, the momentum & value
scores and the snowflake radar — and, for a signed-in caller, the full
"Valuation & strategy" read (fair value, two-stage DDM, margin of safety,
sector-relative rank, dividend doubling time, max drawdown).

Input parameters:

- `symbol` (string, required)

### `get_stock_research` (~84 tokens)

Stock research brief

Fetch Quantic's AI-generated research deep-dive for a stock — the narrative
brief (overview, dividend history, safety, risks, watch items). Optional
\`locale` (falls back to English). Returns `found: false` when no article has
been generated for the stock yet.

Input parameters:

- `locale` (string)
- `symbol` (string, required)

### `get_tax_report` (~425 tokens)

Your tax year, assembled

A tax year assembled from the signed-in user's own ledger: the dividends
received (gross, withheld at source, net — per payment and per source
country) and the disposals made (matched first-in first-out, with Spain's
two-month rule applied to losses). Foreign currency is converted to euros
at the ECB's official daily reference rate for each date — a dividend at
its pay date, and a sale's cost and proceeds at their own separate dates,
so the currency movement between buying and selling is part of the result.

Pass `year` (defaults to the last completed one). Private to the caller.

\**Beta, and unevenly scoped.** The dividends section works for any tax
residence. The disposals section is modelled for **Spain only** so far and
returns `supported: false` for anyone else — say so rather than implying
the user has no sales.

\`other_income` is cash that is income but not a dividend — today only
payments in lieu of a dividend, paid by the borrower of a lent share
instead of the company. It is reported and deliberately **not
classified**: no casilla, and it must never be added to the dividend
totals or described as dividend income.

\`other_costs` is what the broker charged the account — today only margin
interest. It is **not deductible** in a Spanish declaration, and that is
a rule rather than an open question: say so plainly if asked, and never
suggest subtracting it from income or folding it into a cost basis.

\**This is the input to a declaration, not a declaration.** No tax is
computed. Every figure carries flags where the data is incomplete — a
missing exchange rate, a broker that never reports withholding, a position
that sold more shares than its recorded purchases account for. Those flags
are the point: relay them, and relay the disclaimer, whenever you relay a
number from here.

Input parameters:

- `portfolio` (string)
- `year` (integer)

### `get_valuation` (~185 tokens)

Your portfolio valuation

The signed-in user's portfolio valued at current market prices, in their
preferred display currency. Returns the total market value and cost basis
(so total − cost is the unrealised gain/loss), the yield on cost and current
yield, a sector breakdown, and a per-position list with each holding's market
value, cost and forward annual dividend income. Income is reported both gross
and net of estimated foreign withholding tax (from the user's tax residence),
and the health block includes a per-country geography breakdown. Uses live
quotes; positions whose price can't be resolved have null value/income.
Optionally pass `portfolio` (one of your portfolio names or slugs,
case-insensitive — see `list_portfolios`) to value just that portfolio;
omitted, the valuation aggregates across all your portfolios.
Private to the caller.

Input parameters:

- `portfolio` (string)

### `list_portfolios` (~113 tokens)

Your portfolios

The signed-in user's portfolios: each one's name and whether it is the
default; publicly shared portfolios also carry their URL `slug`. Pass a
name (or slug) as the `portfolio` param of the ledger tools
(`get_holdings`, `get_portfolio`, `get_movements`, `get_dividends`,
\`get_options`, `get_valuation`, `get_income_outlook`) to narrow them to
one portfolio; without it they aggregate across all portfolios. Private
to the caller.

### `list_stocks` (~254 tokens)

Curated dividend list

Fetch a curated dividend list by `slug`. Slugs: dividend-aristocrats,
dividend-kings, monthly-dividend-stocks, highest-yield-dividend-stocks,
safest-reits, dividend-growth-stocks, low-debt-dividend-stocks,
large-cap-safe-dividend-stocks, utility-dividend-stocks,
healthcare-dividend-stocks, consumer-staples-dividend-stocks,
energy-dividend-stocks, european-dividend-stocks, best-dividend-etfs,
monthly-dividend-etfs, best-momentum-dividend-stocks,
undervalued-dividend-stocks. Returns the list's title, intro and ranked
stocks (compact rows — call get_stock for a full read).

Set `eu_only` to keep only holdings listed on a European exchange. This
matters most on the two fund lists: a US-listed ETF has no key information
document under European rules, so a European broker refuses the order — most
of the funds in `best-dividend-etfs` are US-listed and unbuyable from Europe.
Use it whenever the person asking is investing from Europe.

Input parameters:

- `eu_only` (boolean)
- `slug` (string, required)

### `screen_stocks` (~463 tokens)

Screen stocks

Find dividend stocks & ETFs matching criteria — the screener behind
quantic.finance. Filter by `sector`, `currency`, yield range
(`min_yield`/`max_yield`, on the 5-year average), `min_cagr5y`, `min_streak`,
\`frequency`, leverage (`max_de`), `min_current` ratio, `min_market_cap`,
dividend-`safety` ("safe"/"watch"/"at_risk"), `min_rating` (Quantic's
composite 0–10 read on the company), `type` ("equity"/"etf"), or the
\`aristocrat`/`reit`/`has_ffo`/`exclude_traps` toggles; `sort` by "quality"
(the default — the 0–10 rating), "yield", "cagr5y", "streak",
"ffo_payout_asc", "momentum" or "value". Returns up to 100 compact rows —
call `get_stock` for a full read of any match.

Two notes worth passing on to whoever asked. **Sorting by yield alone is how
people find yield traps**, which is why quality leads by default. And
\`exclude_traps` drops what Quantic has already judged at risk while KEEPING
stocks it has never assessed — unassessed is not the same as dangerous, so a
result set is never quietly narrowed to only what happens to have been
scanned.

Input parameters:

- `aristocrat` (boolean)
- `currency` (string)
- `exclude_traps` (boolean)
- `frequency` (string)
- `has_ffo` (boolean)
- `max_de` (number)
- `max_yield` (number)
- `min_cagr5y` (number)
- `min_current` (number)
- `min_market_cap` (number)
- `min_rating` (number)
- `min_streak` (integer)
- `min_yield` (number)
- `reit` (boolean)
- `safety` (string)
- `sector` (string)
- `sort` (string)
- `type` (string)

### `screen_wheel` (~365 tokens)

Wheel screener

Options worth selling on the wheel, ranked by company quality first and
premium second — the same order the `/options/wheel` screen uses.

Two lenses via `side`: `"put"` (the default) lists quality dividend payers
the caller does **not** hold, where a cash-secured put gets paid to wait for
a price they'd accept; `"call"` lists holdings large enough to cover a
contract once shares already pledged to open calls are set aside.

Rows are **not priced** unless `price: true`. Listing costs nothing;
pricing fetches a live option chain per symbol, so it is capped by `limit`
(default 5, max 10) and should be asked for only when the caller actually
wants numbers. Securities with no listed options come back
\`chain_status: "no_chain"` — a fact about the security, not a failure, and
most European listings land there.

Priced put rows carry the period and annualized return, the downside buffer,
the effective cost basis if assigned, the yield on cost that basis would
give, and the maximum loss. Priced call rows carry the return if called
away, the upside forfeited, whether the strike clears the holding's cost
basis, and whether a dividend goes ex inside the contract — the usual reason
a covered call is exercised early.

\**This is not investment advice.** Every response carries a `disclaimer`,
verbatim rather than paraphrased, and it must be relayed rather than
summarized away — as must the maximum loss beside any return quoted.
Private to the caller.

Input parameters:

- `limit` (integer)
- `portfolio` (string)
- `price` (boolean)
- `side` (string)

### `search_stocks` (~48 tokens)

Search dividend stocks

Search dividend stocks by ticker or company name (e.g. "coca", "AAPL").
Public — returns up to ~10 matches with their symbols.

Input parameters:

- `query` (string, required)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/finance-quantic-mcp/quantic#diagnostics

## Score history

- 2026-09-20: 72
- 2026-09-19: 71
- 2026-09-18: 71
- 2026-09-17: 70
- 2026-09-16: 70
- 2026-09-15: 69
- 2026-09-14: 69
- 2026-09-13: 68
- 2026-09-12: 68
- 2026-09-11: 67
- 2026-09-10: 67
- 2026-09-09: 67
- 2026-09-08: 66
- 2026-09-07: 66
- 2026-09-06: 65
- 2026-09-05: 65
- 2026-09-04: 64
- 2026-09-03: 64
- 2026-09-02: 63
- 2026-09-01: 63
- 2026-08-31: 63
- 2026-08-30: 62
- 2026-08-29: 62
- 2026-08-28: 61
- 2026-08-27: 61
- 2026-08-26: 60

## Common questions

### What is the Quantic Finance MCP server?

Quantic Finance is an MCP server listed in the public MCP registry as finance.quantic/mcp. Dividend portfolio tracking and planning for US and EU markets: income, safety, Spain-aware taxes. This page covers its hosted endpoint (https://quantic.finance/mcp).

### Is the Quantic Finance MCP server safe to use?

Quantic Finance scores 72 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Quantic Finance MCP server expose?

Quantic Finance exposes 21 tools: compare_stocks, dividend_calendar, get_dividends, get_holdings, get_income_attribution, and 16 more. Their descriptions and schemas cost roughly 4,447 tokens of context every time the server is loaded.

### Does the Quantic Finance MCP server require authentication?

No. We connected to Quantic Finance without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Quantic Finance MCP server still maintained?

Quantic Finance is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://quantic.finance/mcp
- Website: https://quantic.finance/
- Changelog RSS feed: https://verifymcp.io/servers/finance-quantic-mcp/quantic.xml
- Changelog JSON feed: https://verifymcp.io/servers/finance-quantic-mcp/quantic.json
- HTML version of this page: https://verifymcp.io/servers/finance-quantic-mcp/quantic
