# io.github.wikatar/arkolith (remote · arkolith.com)

Evidence-backed capital-change intelligence and sourced financial data for AI agents

- Trust score: 38/100 (low)
- Change this week: −23
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `arkolith.com`: 38/100 (this document), [markdown](https://verifymcp.io/servers/wikatar-arkolith/api-mcp.md), [page](https://verifymcp.io/servers/wikatar-arkolith/api-mcp)

## Channel facts

- Endpoint: `https://arkolith.com/api/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.1.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-08-03.

- **Endpoint Security**: 94/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 0/100
  - Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http.
- **Schema Quality & AI Usability**: 0/100
  - Schema blocked by authentication: the endpoint requires auth we don't have to read it.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Capabilities**: 0/100
  - Capabilities blocked by authentication: the endpoint requires auth we don't have to read them.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add --transport http wikatar-arkolith https://arkolith.com/api/mcp
```

### Codex

```toml
[mcp_servers.wikatar-arkolith]
url = "https://arkolith.com/api/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "wikatar-arkolith": {
      "type": "remote",
      "url": "https://arkolith.com/api/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add wikatar-arkolith --url https://arkolith.com/api/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  wikatar-arkolith:
    url: "https://arkolith.com/api/mcp"
```

### Other

```json
{
  "mcpServers": {
    "wikatar-arkolith": {
      "type": "http",
      "url": "https://arkolith.com/api/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-07-31 (score 38, +14)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 24, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-29 (score 24, −38)

- [security regression] Endpoint reachability: reachable → behind authorisation
- [security regression] Transport: pass → unverified
- [security regression] Stability: 0.07 → unverified
- [security improvement] Authorization: unverified → pass
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified

### 2026-07-28 (score 62, +1)

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

### 2026-07-27 (score 61, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 60)

First indexed and scored.

## MCP tools (37)

### `capital_change_brief` (~238 tokens)

Compose the current evidence-backed capital-change brief for one ticker. Use when a user asks what changed in reported institutional ownership, which tracked managers drove it, whether qualifying Form 4 open-market activity points in the same or opposite direction, and wants the SEC proof. Current-only: pass ticker only; as_of and since are not supported. Returns an explicit outcome and coverage, manager changes, insider activity, corroboration, filing evidence, and a derivation manifest. When direction is withheld, read quality_artifacts for bounded, machine-readable reasons and hidden-row examples. Every evidence ID on an artifact example has a rich object in evidence; manifest.evidence_ids is the complete aggregate set, and the corroboration claim points to it through evidence_reference. Lead with the headline, counts, largest drivers, Form 4 stance, and coverage. Cite relevant human_url evidence links. 13F changes are reported quarter-end positions, not trade dates, real-time flows, intent, or investment advice.

Input parameters:

- `ticker` (string, required): Exchange ticker, e.g. MREO or BRK.B. Coverage depends on Arkolith's tracked SEC corpus.

### `fund.list` (~118 tokens)

List the institutional managers (hedge funds, asset managers) that file SEC 13F reports, ranked by AUM. Returns each fund's name, AUM, latest reported quarter, holdings count, and its SEC CIK — the id you pass to fund.holdings, fund.holdings.diff, fund.holdings.as_of, and fund.position.history. Start here to find which funds to track. Public-domain SEC EDGAR data.

Input parameters:

- `limit` (number): Max funds to return (1-100, default 25)

### `copy.leaderboard` (~187 tokens)

Rank the institutional managers (13F funds) worth copying. Each row is a followable actor — name, manager, book size (AUM), holdings count, latest reported quarter, follower count, the slug (for copy.target.get), and CIK (to follow via watchlist / pull via fund.holdings). Price-derived copy-return fields are withheld unless the price-source policy and freshness gate are green. The agent-native 'who should I copy?' entry point. Sort by book size, recent activity, follower count, or gated track record. Public-domain SEC EDGAR 13F data.

Input parameters:

- `limit` (number): Max actors to return (1-100, default 25)
- `sort` (string): aum = biggest book (default), active = most recently filed, followers = most followed, return = best filed-date 13F clone track record

### `copy.target.get` (~121 tokens)

Get one copy target (13F fund) by slug (from copy.leaderboard): its latest disclosed book — the top holdings you'd mirror, each with % of book and its quarter-over-quarter change (NEW/ADDED/REDUCED/EXITED) — plus book size, latest quarter, and filing history. Pair with watchlist tools to follow it. Public-domain SEC EDGAR 13F data.

Input parameters:

- `slug` (string, required): Copy-target slug, e.g. 'berkshire-hathaway' (from copy.leaderboard)

### `fund.holdings` (~74 tokens)

Latest reported 13F equity holdings for a fund (by SEC CIK) — top positions by value, each with its CUSIP and quarter-over-quarter change (new/added/reduced/exited). Public-domain SEC EDGAR data.

Input parameters:

- `cik` (string, required): SEC Central Index Key (zero-padded)

### `search` (~73 tokens)

Resolve a name to a tracked entity. Turn a fund or manager name (e.g. 'Berkshire', 'Citadel') into the SEC CIK or slug you pass to the fund.* tools — the entity-resolution entry point. Searches funds and managers by name or identifier.

Input parameters:

- `q` (string, required): Search query

### `congress.disclosures.list` (~175 tokens)

List the US House financial-disclosure filing INDEX for a year (STOCK Act). filingType 'P' = Periodic Transaction Report (stock trades). Returns one row per filing with a link to the source PDF — this is the index, NOT parsed trades. Parsed line-items (member, ticker, buy/sell, amount range) are available via congress.trades (US House live; Senate being added). Public-domain US House Clerk data.

Input parameters:

- `filingType` (string): P=Periodic Transaction Report, O=Annual, A=Amendment, C=Candidate (optional)
- `limit` (number): Max filings (default 50, max 200)
- `name` (string): Filter by representative name (optional)
- `year` (number, required): Filing year, e.g. 2024

### `congress.member.search` (~70 tokens)

Find US House representatives who filed financial disclosures in a year, by name (filing index — parsed trades available via congress.trades, US House live; Senate being added).

Input parameters:

- `name` (string, required): Representative name (partial ok)
- `year` (number): Filing year (default 2024)

### `congress.trades` (~139 tokens)

Parsed STOCK Act transaction line-items: actual congressional stock trades by ticker or by member — buy/sell, the disclosed amount range, trade + notification dates, and owner (self/spouse). Each row links to its source PTR PDF. US House (e-filed) is live; Senate is being added. Pass `ticker` OR `member`.

Input parameters:

- `limit` (number): Max trades (default 50, max 200)
- `member` (string): Representative name (partial ok), e.g. 'Pelosi'
- `ticker` (string): Stock symbol, e.g. 'NVDA' — all members' trades in it

### `clinicaltrials.search` (~330 tokens)

Upcoming clinical-trial readout catalysts. For an industry-sponsored interventional Phase 2/3 drug trial, an ESTIMATED primaryCompletionDate is the expected topline-readout date — the binary event that re-rates a biotech ticker. Filter by sponsor (lead sponsor, INDUSTRY class), condition, phase, and a readout-date window; sorted soonest-first. Returns NCT id, title, phase, status, lead sponsor + resolved ticker (null if private/foreign), conditions, primary completion date (+ ACTUAL/ESTIMATED), and a study URL. CAVEAT: estimated dates are sponsor-self-reported and SLIP often — a readout WINDOW, not a hard date; press releases beat this feed. Public-domain ClinicalTrials.gov v2.

Input parameters:

- `condition` (string): Disease/indication, e.g. 'lung cancer' (optional)
- `limit` (number): Max trials (1-100, default 25)
- `nct_id` (string): Single-study lookup by NCT id (bypasses search)
- `phase` (string): 'PHASE2' | 'PHASE3' | 'PHASE2|PHASE3' (default Phase 2 OR 3)
- `sponsor` (string): Lead-sponsor company name, e.g. 'AstraZeneca' (optional)
- `status` (string): overallStatus filter (default RECRUITING|ACTIVE_NOT_RECRUITING)
- `within_days` (number): Readout-date window from today (default 365, max 730)

### `fda.approvals` (~323 tokens)

FDA drug-approval / rejection actions (Drugs@FDA, CDER). For a sponsor or drug, returns the regulatory action history: action=approved (AP, bullish), complete_response_letter (CR, a rejection — sharply bearish), or tentative_approval (TA). Flags new molecular entities (NME) and priority review — the highest-value catalysts. Resolves sponsor_name to a ticker (null if private). CAVEAT: backward-looking (records actions AFTER they happen, lags days; press releases beat it) — a confirmation/archive feed. Drugs@FDA is CDER-only, so biologics/vaccines (e.g. Moderna) may be absent. Public-domain openFDA.

Input parameters:

- `application_no` (string): NDA/BLA number, e.g. 'NDA209091' (optional)
- `drug` (string): Brand or generic drug name, e.g. 'Ozempic' (optional)
- `limit` (number): Max actions (1-100, default 50)
- `nme_only` (boolean): New Molecular Entity approvals only (optional)
- `since_days` (number): Action-date window (default 365, max 1825)
- `sponsor` (string): Sponsor company name, e.g. 'AstraZeneca' (optional)
- `status` (string): 'AP' | 'CR' | 'TA' | 'ALL' (default ALL)
- `type` (string): 'ORIG' (new approval, default) | 'SUPPL' | 'ALL'

### `fda.recalls` (~210 tokens)

FDA drug recalls (Recall Enterprise System). Class I = could cause death/serious harm (material adverse event); Class II/III lower. Filter by recalling firm, drug, classification, and recency; returns classification, reason, status, dates, and the recalling firm's resolved ticker (null if private). CAVEAT: enforcement data updates only WEEKLY and FDA does not revise recall status after classification — can be stale/frozen; not for real-time alerting. Public-domain openFDA.

Input parameters:

- `classification` (string): 'Class I' | 'Class II' | 'Class III' | 'ALL' (default ALL)
- `drug` (string): Drug brand/generic name (optional)
- `firm` (string): Recalling firm name, e.g. 'Pfizer' (optional)
- `limit` (number): Max recalls (1-100, default 50)
- `since_days` (number): Report-date window (default 365, max 1825)

### `pharma.resolve` (~127 tokens)

Resolve a pharma sponsor / manufacturer name (e.g. 'Janssen Pharms', 'AstraZeneca AB') to its public ticker, so an FDA approval / trial readout / recall can be joined to 13F ownership, insider (Form 4) buys, and the confluence signal. Returns ticker, company name, exchange, and resolution method (alias|exact|fuzzy|unresolved). Returns ticker:null for private sponsors or unmatched names rather than guessing — joins must never key on a wrong ticker.

Input parameters:

- `name` (string, required): Sponsor / manufacturer name to resolve

### `macro.series.get` (~91 tokens)

Get recent observations for a macro/economic time series from FRED (e.g. GDP, CPIAUCSL, DGS10, UNRATE).

Input parameters:

- `limit` (number): How many recent observations (default 24)
- `series_id` (string, required): FRED series ID, e.g. 'DGS10' (10y Treasury), 'CPIAUCSL' (CPI)

### `macro.series.search` (~47 tokens)

Search FRED for macro/economic time series by keyword; returns matching series IDs and titles.

Input parameters:

- `query` (string, required): e.g. 'unemployment rate', '10 year treasury'

### `predictionmarket.list` (~67 tokens)

List prediction-market contracts with implied probabilities, from Polymarket and/or Kalshi. Optional keyword filter.

Input parameters:

- `limit` (number): Max per platform (default 10)
- `platform` (string): Default 'both'
- `query` (string): Keyword to filter markets (optional)

### `predictionmarket.quote` (~54 tokens)

Get a single prediction-market contract's implied probability by platform + id (Polymarket slug or Kalshi ticker).

Input parameters:

- `id` (string, required): Polymarket slug or Kalshi ticker
- `platform` (string, required)

### `divergence.scan` (~100 tokens)

Cross-market divergence: for a topic keyword, pull matching contracts from Polymarket and Kalshi and compare implied probabilities to surface potential mispricing/arb. Note: matches are keyword-correlated, not verified same-event — confirm the contracts describe the same outcome before trading.

Input parameters:

- `limit` (number): Max contracts per platform (default 8)
- `query` (string, required): Topic keyword, e.g. 'recession', 'fed', 'government shutdown'

### `fund.holdings.as_of` (~138 tokens)

Point-in-time 13F holdings as publicly knowable at a cutoff, selected by the SEC acceptance timestamp with no filing-date fallback. YYYY-MM-DD means end-of-day UTC; timestamps must include a timezone. This is source-publication replay, not a claim about when Arkolith first stored or served the filing.

Input parameters:

- `as_of` (string, required): ISO date or timestamp. A date such as 2023-06-30 includes that full UTC day (through 23:59:59.999Z); a timestamp must include Z or an explicit UTC offset.
- `cik` (string, required): SEC Central Index Key

### `fund.position.history` (~89 tokens)

Time-series of a single security position (by ticker or CUSIP) across a fund's filings — shares and USD value per quarter.

Input parameters:

- `cik` (string, required): SEC Central Index Key
- `cusip` (string): 9-char CUSIP (alternative to ticker)
- `ticker` (string): Ticker symbol (resolved via OpenFIGI), e.g. 'AAPL'

### `fund.holdings.diff` (~51 tokens)

Quarter-over-quarter change set for a fund's most recent filing: new positions, adds, reduces, exits, and reviewed reporting-universe changes.

Input parameters:

- `cik` (string, required): SEC Central Index Key

### `events.latest` (~201 tokens)

Live SEC filing-event stream: SEC Form 4 (insider) filings today, with 8-K and 13D/G on the roadmap. Poll with `since` (a monotonic cursor) to get every filing newer than your last call; the response's next_cursor advances it. Filter by form or tickers; a form we don't carry yet returns an explicit unsupported_form note (never a silent empty page). Built for a watch loop, so call it on a schedule to never miss a filing.

Input parameters:

- `form` (string): SEC form type. '4' (insider Form 4) is what's carried today; omit for all carried forms.
- `limit` (number): Max events (1-200, default 50)
- `since` (string): Cursor from a prior next_cursor; returns events with seq greater than this. Omit for the latest.
- `tickers` (array): Filter to these tickers (optional)

### `watchlist.poll` (~153 tokens)

Poll THIS workspace's watchlist for new filings since a cursor: every SEC Form 4 (insider) filing on the tickers your team follows, newest-after-cursor (8-K + 13D/G are on the roadmap). Pass `since` (a prior next_cursor) to get only what's new; built for a watch loop. Curate the watchlist in the Arkolith dashboard. Standard (delayed, ≤24h-old) freshness; each event carries its SEC source URL.

Input parameters:

- `limit` (number): Max events (1-200, default 50)
- `since` (string): Cursor from a prior next_cursor; returns events newer than this. Omit for the latest.

### `watchlist.poll.live` (~116 tokens)

Like watchlist.poll but LIVE freshness — includes filings accepted within the last 24h (minute-fresh, normalized within minutes of SEC acceptance). Premium-priced and requires the Developer or Pro plan; other plans poll delayed (≤24h-old) freshness via watchlist.poll. Same workspace-watchlist scope and cursor semantics.

Input parameters:

- `limit` (number): Max events (1-200, default 50)
- `since` (string): Cursor from a prior next_cursor; returns events newer than this. Omit for the latest.

### `insider.transactions` (~163 tokens)

Insider (SEC Form 4) transactions — open-market buys/sells, awards, option exercises — for a company (by ticker) or a person (by insider name). Pass `signal: true` to restrict to open-market buys/sells (codes P/S), the tradeable subset. Pass `since` to diff only new filings.

Input parameters:

- `insider` (string): Insider name (partial ok), e.g. 'Cook'
- `limit` (number): Max rows (1-200, default 50)
- `signal` (boolean): Only open-market buys/sells (P/S). Default false.
- `since` (string): Cursor from a prior next_cursor (optional)
- `ticker` (string): Issuer ticker, e.g. 'AAPL'

### `insider.filing` (~94 tokens)

One SEC Form 4 filing by accession number: the reporting insider, issuer, and every transaction in it (non-derivative + derivative), with net open-market flow and a link to the original SEC document. The full-filing follow-up when insider.transactions or events.latest hands you an accession_number.

Input parameters:

- `accession` (string, required): SEC accession number, e.g. '0001943929-26-000010'

### `insider.company` (~84 tokens)

Net insider activity for one company over a window: open-market buy vs sell value/shares and distinct buyer/seller counts. Answers 'are insiders net buying or selling this name right now?'

Input parameters:

- `days` (number): Lookback window in days (default 90, max 365)
- `ticker` (string, required): Issuer ticker, e.g. 'NVDA'

### `insider.clusters` (~122 tokens)

Market-wide insider cluster scan: companies where several distinct insiders made open-market buys (or sells) inside a window — the high-conviction cluster signal. Returns tickers ranked by distinct-insider count and total value.

Input parameters:

- `days` (number): Lookback window in days (default 30, max 180)
- `limit` (number): Max tickers (1-100, default 25)
- `min_insiders` (number): Minimum distinct insiders to qualify (default 2)
- `side` (string): Cluster direction (default 'buy')

### `stock.owners` (~86 tokens)

Institutional (13F) owners of a stock by ticker — which funds hold it, position value, share count, and the quarter-over-quarter change. The 'who owns this stock' join across all tracked funds.

Input parameters:

- `limit` (number): Max holders (1-500, default 100)
- `ticker` (string, required): Ticker symbol, e.g. 'AAPL'

### `signal.crowding` (~137 tokens)

Cross-fund 'smart money' consensus from every tracked fund's latest 13F: the securities the MOST funds are collectively holding (mode='held'), buying this quarter (mode='bought' — NEW/ADDED cluster-buys), or selling (mode='sold' — REDUCED). The inverse of stock.owners: surfaces WHAT to look at, ranked by how many funds agree.

Input parameters:

- `limit` (number): Max securities (1-100, default 25)
- `mode` (string): held=consensus longs, bought=cluster-buys, sold=cluster-exits (default held)

### `signal.confluence` (~263 tokens)

The moat join — where do informed INSIDERS (Form 4 open-market buys), institutional SMART MONEY (13F cluster-buys), and CONGRESS (US House STOCK Act trades) AGREE? Pass a `ticker` for all three legs on one name (insider + fund + congress net buy/sell + a verdict that escalates to triple_confluence_buy when all three are buying). Omit `ticker` for the market-wide ranked list — insider×fund names, surfaced first when Congress is buying too (triple_confluence). Joined on ticker — never a fuzzy name match. Each leg carries source provenance; congress $ are amount-range midpoints (approximate).

Input parameters:

- `days` (number): Insider open-market lookback window in days (1-180, default 180)
- `limit` (number): Market mode: max names (1-50, default 20)
- `min_funds` (number): Market mode: min funds adding to qualify (default 2)
- `min_insiders` (number): Market mode: min distinct insider buyers to qualify (default 2)
- `ticker` (string): Ticker for per-name confluence, e.g. 'NVDA'. Omit for the market-wide list.

### `capital_rotation` (~294 tokens)

THE flagship 'where is smart money rotating' signal. Aggregates quarter-over-quarter SEC 13F position changes across ALL tracked institutions into per-SECTOR capital flows: which sectors institutions are net BUYING into vs SELLING out of this quarter, with breadth (how many funds agree), net flow as % of the sector's book, and a rotation rank. Price-free, point-in-time, every number traced to 13F. Answers 'is smart money rotating out of tech into energy/utilities, and is it broad-based?' — what the sell-side ships as a static quarterly PDF. Pass `period` (ISO quarter-end) for a specific quarter, else the latest well-covered one. NOT investment advice; backward-looking (13F lags ~45 days).

Input parameters:

- `direction` (string): Filter to sectors money is rotating into, out of, or both (default both).
- `limit` (number): Max sectors to return (1-12, default 12).
- `period` (string): Quarter end as YYYY-MM-DD (e.g. 2026-03-31). Omit for the latest well-covered quarter.
- `weight_by` (string): fund_quality (default) weights each fund's flow by a price-free focus score (breadth-adjusted top-10 focus, reported book growth, evidence-adjusted insider co-buy) after taxonomy exclusions; equal tr…

### `get_smart_money_leaderboard` (~233 tokens)

Which disclosed 13F books are most focused? Ranks eligible institutional funds by a PRICE-FREE score: breadth-adjusted top-10 focus (40%), reported book growth (20%), and evidence-adjusted insider co-buy (40%). A 10-name book has neutral focus evidence, exact ties share a rank input, and sparse co-buy samples shrink toward the quarter baseline with 10 prior observations. Holding count has no independent weight. Universe: positively classified conviction filers only (hedge fund, private equity, family office, holding company); unclassified, mechanical, wealth, pension, endowment, and quant/multi-strat books are never served here. The score is NOT realized track record/performance. Sort by overall score, focus, insider corroboration, or AUM growth. PRICE-FREE; NOT investment advice.

Input parameters:

- `limit` (number): Max funds (1-50, default 20).
- `period` (string): Quarter end YYYY-MM-DD. Omit for the latest well-covered quarter.
- `sort` (string): Ranking dimension (default smart_money_score).

### `get_ticker_confluence` (~154 tokens)

For ONE ticker: do the independent disclosure sources AGREE? Returns the cross-source confluence verdict — institutions (13F) × insiders (Form 4) × Congress (STOCK Act) all buying/selling the same name — PLUS the capital-rotation context: which sector the ticker is in and whether smart money is rotating INTO or OUT of that sector this quarter. The two flagship signals on one name. Congress is a free corroborating leg (never the sole basis). PRICE-FREE; NOT investment advice.

Input parameters:

- `days` (number): Lookback window in days for insider/Congress corroboration (default 180).
- `ticker` (string, required): Ticker symbol, e.g. NVDA.

### `provenance.get` (~70 tokens)

Trust layer: return the source record(s) for a datapoint — origin URL, fetch time, parser version — so the agent can cite primary sources.

Input parameters:

- `record_id` (string, required): id of the record to trace
- `record_type` (string): e.g. 'filing' (default)

### `account.balance` (~50 tokens)

FREE (0 credits). Return this API key's credit balance (free + paid), USD value, and top-up URL. Call this to self-monitor before/after spending — checking your balance never costs credits.

### `feedback.submit` (~228 tokens)

FREE (0 credits). Tell the Arkolith team what data you wish existed, report wrong/missing data, or suggest an improvement. For capital_change_brief, call this only after the user explicitly says the delivered answer was useful or says what was missing; include workflow, brief_id, ticker, and verdict. Arkolith verifies an OK delivery receipt for this organization and API key, and records at most one verdict per organization and brief. Duplicate submissions return already_recorded=true. Never infer usefulness from a technically successful result.

Input parameters:

- `brief_id` (string): The exact brief_id returned by capital_change_brief
- `category` (string): data-request | bug | idea | other
- `context` (string): What you were trying to do (optional)
- `message` (string, required): Your data request, bug report, or idea
- `ticker` (string): The ticker from the brief
- `verdict` (string): The user's explicit verdict, never an agent inference
- `workflow` (string): Set to capital_change_brief when recording an explicit verdict for that workflow

## Diagnostics

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

## Score history

- 2026-08-03: 38
- 2026-08-02: 38
- 2026-08-01: 38
- 2026-07-31: 38
- 2026-07-30: 24
- 2026-07-29: 24
- 2026-07-28: 62
- 2026-07-27: 61
- 2026-07-26: 60

## Links

- Remote endpoint: https://arkolith.com/api/mcp
- Authorisation metadata: https://arkolith.com/.well-known/oauth-protected-resource/api/mcp
- Repository: https://github.com/wikatar/Arkolith.com
- Website: https://arkolith.com/
- Changelog RSS feed: https://verifymcp.io/servers/wikatar-arkolith/api-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/wikatar-arkolith/api-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/wikatar-arkolith/api-mcp
