canonical: https://jentic.com/apis/marginofinsight.com/marginofinsight

# Margin of Insight — Research API

The Margin of Insight Research API returns pre-computed equity research on US-listed SEC filers as structured JSON, in three depths per ticker. A free 3-step company primer covers the business overview, a four-quarter financial snapshot, and recent catalysts; a 12-step fundamental analysis adds revenue breakdown, balance sheet health, and returns on capital; and a 21-step investment memo adds moat analysis, DCF valuation, bear, base, and bull scenarios, and a full prose memo. Paid reports are charged per call against a Stripe Link Shared Payment Token, and coverage lookups and new-ticker requests are free.

## For AI agents

Fetch a free company primer, a paid fundamental analysis, or a paid full investment memo for a covered US ticker, and check or request coverage first.

## Scope

Does not provide live quotes, place trades, or cover companies outside US-listed SEC filers. Use for pre-computed equity research reports and coverage lookups only.

## Capabilities

- Get a free 3-step company primer for a ticker with business overview, last four quarters of financials, and upcoming catalysts
- Buy a 12-step fundamental analysis covering revenue breakdown, earnings transcript analysis, risk register, and ROIC
- Buy a 21-step investment memo with moat analysis, DCF valuation, sensitivity matrix, and bear, base, and bull scenarios
- List every covered ticker, or check coverage metadata for one ticker, before making a paid call
- Queue a coverage request for a US-listed company that is not yet covered, with an optional notification email
- Read the Shared Payment Token discovery metadata that tells an agent how to authorise payment

## Use cases

### Research agent with a spend boundary through Jentic

An investing assistant pulls the free primer for any ticker and escalates to paid reports only when the user asks. Through Jentic, the Stripe Shared Payment Token is injected at call time, and a rule decides whether the agent may call the paid fundamental and memo operations at all. That keeps the per-call charges under the developer's control.

Example prompt: Call GET `/coverage/{ticker}` for AAPL to confirm coverage, then GET `/research/{ticker}/primer` for AAPL and summarise the business overview and upcoming earnings

### Pre-meeting company brief

Before a call with management or an investment committee, an analyst needs a fast, structured view of a company. The primer gives the overview, the last four quarters, and catalysts at no cost, and the fundamental analysis adds competitive positioning, financial trends, and capital allocation for a fixed per-call charge.

Example prompt: GET `/research/{ticker}/fundamental` for COST with the SPT bearer token and extract the risk register and capital allocation sections

### Valuation memo for a watchlist name

When a position is being sized, the 21-step memo supplies a DCF valuation, comparable analysis, sensitivity matrix, scenario analysis, institutional and insider activity, and a full prose memo in Markdown. The memo includes all of the fundamental analysis content, so one call returns the complete picture.

Example prompt: GET `/research/{ticker}/memo` for MSFT, then return the base-case valuation and the three-sentence investment thesis

### Expanding coverage on demand

If a ticker is missing from the coverage list, a free request queues it, and the spec says requests are fulfilled in 24-48 hours. An optional email field notifies the requester when the research is ready.

Example prompt: GET /coverage, and if ticker 'ACME' is absent, POST `/coverage/request` with ticker 'ACME' and email 'analyst@example.com'

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/research/{ticker}/primer` | Free company primer |
| GET | `/research/{ticker}/fundamental` | Paid fundamental analysis |
| GET | `/research/{ticker}/memo` | Paid full investment memo |
| GET | `/coverage` | List the coverage universe |
| GET | `/coverage/{ticker}` | Coverage metadata for one ticker |
| POST | `/coverage/request` | Request coverage for a ticker |

## Key resources

- **Research** — Company primer, fundamental analysis, and investment memo per ticker
- **Coverage** — List covered tickers, read one ticker's coverage metadata, and request new coverage
- **SPT discovery** — Metadata describing how to authorise payment with a Stripe Shared Payment Token

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 59 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 50 / 100
  - Developer Experience & Jentic Compatibility: 65 / 100
  - AI-Readiness & Agent Experience: 44 / 100
  - Agent Usability: 94 / 100
  - Security: 55 / 100
  - AI Discoverability: 80 / 100
- **View full report:** https://jentic.com/apis/marginofinsight.com/marginofinsight/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring Margin of Insight by hand means telling the free endpoints from the paid ones and attaching a Stripe Shared Payment Token as a bearer token only where a charge applies. Through Jentic you install once, import the Research API from the API Directory, store the SPT once, and your agent calls it.
- **Permission scoping:** Margin of Insight puts the ticker in the URL path (`/research/{ticker}/...`), so a rule can limit your agent to one company, such as `/research/AAPL/primer`, and the operations you pick. You choose the operations it may call, so the paid fundamental and memo reports are not included unless you add them.
- **Credential handling:** Your Shared Payment Token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'get a company research primer' or 'get a DCF valuation memo', and Jentic returns the matching Margin of Insight operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Alpha Vantage API** — Raw stock prices, fundamentals, and technical indicators
- **Finnhub API** — Market data, company fundamentals, and earnings calendars
- **SEC-API Mapping API** — Maps tickers, CIKs, and company identifiers for SEC filers

## FAQ

### Is there a Margin of Insight MCP server?

You don't need an MCP server to give your agent the Margin of Insight Research API. Jentic connects it directly from the API Directory: import it, store your credential once, and your agent calls it. Research operations are found by intent when needed, so no extra tool definitions sit in the agent's context.

### What authentication does the Margin of Insight Research API use?

Per its OpenAPI spec, the paid fundamental and memo operations take a Stripe Link Shared Payment Token as a bearer token (Authorization: Bearer spt_...), charged per call, with no Margin of Insight account needed. The primer, coverage, coverage request, and SPT discovery endpoints need no auth. Through Jentic the SPT is stored encrypted by your own Jentic One instance and injected at call time.

### How much do Margin of Insight reports cost?

The spec lists the company primer as free, the fundamental analysis at $1.00 per call, and the full investment memo at $2.00 per call, each charged against the Shared Payment Token. Coverage lookups and coverage requests are free.

### Can I limit what my agent is allowed to do with the Margin of Insight Research API?

Yes. Write a rule that allows only GET `/research/{ticker}/primer` and the coverage lookups, so the agent can brief you on any covered company and never triggers a $1.00 or $2.00 charge. Add the fundamental operation later if you want it to buy deeper reports.

### What are the rate limits for the Margin of Insight Research API?

The OpenAPI spec does not state a numeric limit. It documents a rate-limited response with a Retry-After header giving the seconds to wait, so back off for that interval. See https://marginofinsight.com/openapi.json for the current spec.

### Which companies does Margin of Insight cover?

Coverage is limited to US-listed SEC filers. Call GET /coverage for the full list or GET `/coverage/{ticker}` for one company before making a paid call, and use POST `/coverage/request` to queue a company that is not covered yet.

### How do I get a company primer through Jentic?

Add the Margin of Insight Research API to Jentic One from the directory; the primer needs no credential, and you store your SPT once only if the agent will buy paid reports. Your agent searches for 'get a company research primer', calls GET `/research/{ticker}/primer`, and reads the structured JSON. To run it on your own infrastructure, install Jentic One from its GitHub repo.
