oqro
Insider, Congress, 13F and federal contract filings for US stocks, each linked to its source.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
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": {
"oqro": {
"url": "https://oqro.io/api/mcp"
}
}
}Puntos de conexión remotos
https://oqro.io/api/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (15)
🟢search_companies(query)
Find companies OQRO covers (US-listed companies from the S&P 500 down to small caps) by ticker or name. Returns ticker, name, sector and the OQRO company page. Use it first when you are not sure of a ticker.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"description": "Ticker or part of a company name, e.g. 'NVDA' or 'lockheed'."
}
},
"required": [
"query"
],
"additionalProperties": false
}🟢get_company(ticker)
Overview of one covered company: profile, latest daily close and 12-month change next to the S&P 500 (SPY), latest annual revenue and net income as reported to the SEC (quarterly results, free cash flow and debt are in latest_results), latest FINRA short interest, and counts of recent disclosures (insider Form 4/144 and Congress in the last 90 days, fund 13F moves in the last 180 days, federal contract awards in the last 365 days). How to read this: prices are split- and dividend-adjusted daily closes; financials are the company's own XBRL figures with the filing link; short interest is published twice a month. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
}
},
"required": [
"ticker"
],
"additionalProperties": false
}🟢latest_results(ticker)
Latest reported quarter, trailing twelve months, latest fiscal year and balance sheet of one covered company, from the figures it tagged in its own SEC filings (10-Q and 10-K): revenue, operating income, net income, diluted EPS, operating cash flow, capital expenditure, free cash flow, interest expense, stock-based pay, cash, total debt, net debt and total backlog (remaining performance obligation, when tagged). The latest quarter comes with the same quarter a year earlier. How to read this: free cash flow, net debt and trailing totals are calculated by OQRO (formulas are in the result); a single cash-flow quarter is the difference between two filed year-to-date totals; values are in US dollars (EPS per share). Not covered: production rates and deliveries; certification and regulatory approvals; management guidance and call commentary; order books by program (only the total remaining performance obligation when the company tags it); customer concentration and litigation outcomes. The result links the company's latest results announcement for those. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
}
},
"required": [
"ticker"
],
"additionalProperties": false
}🟢pre_mortem(ticker)
The measurable facts a risk review starts from, in one call: cash burn and debt (free cash flow, net debt, interest coverage), the profit trend against a year earlier, dilution (stock-based pay, buybacks, share count), insider buying and selling over 180 days, FINRA short interest, fund moves over 180 days, and the company's own red-flag filings over 12 months (auditor change, restatement, top-officer departure, impairment, material weakness, delisting notice, bankruptcy). A pre-mortem asks "if this investment had failed a year from now, what would the cause have been?": these sections check the numeric causes. Operational causes (production rates and deliveries, certification and regulatory approvals, management guidance and call commentary) are not in OQRO: the result links the latest results announcement and says what to look up elsewhere. How to read this: each section is a fact to check, not a verdict or a forecast; an insider sale has many reasons; short interest is published twice a month. Each row has source_url (the official filing) and oqro_url (the OQRO event page). Cite the source_url when you quote a figure. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
}
},
"required": [
"ticker"
],
"additionalProperties": false
}🟢convergence(ticker, direction, min_sources, limit)
Companies where at least two of three independent groups of disclosers point the same direction right now: insiders (SEC Form 4 open-market trades), funds (13F new or increased positions, or reduced or exited) and members of Congress (reported purchases or sales). Windows by disclosure date: insiders 30 days, Congress 45 days, funds 100 days (13F filings come quarterly). Noise is removed first: only open-market purchases of $10K or more and only sales of $250K or more that no trading plan explains; no grants, tax withholding or option exercises; contracts have no direction and are not counted. How to read this: it counts filings and says nothing about why anyone traded or what happens next. The result includes OQRO's own test of the pattern (past data, small sample): present it with the rows. Selling is routine for large holders, so read buying and selling differently. Each row has source_url (the official filing) and oqro_url (the OQRO event page). Cite the source_url when you quote a figure. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "Optional: only this company. Omit to list the whole market.",
"maxLength": 10
},
"direction": {
"type": "string",
"enum": [
"buying",
"selling"
],
"description": "Omit for both."
},
"min_sources": {
"type": "integer",
"minimum": 2,
"maximum": 3,
"default": 2,
"description": "3 = insiders, funds and Congress all lean the same way."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10,
"description": "Companies to return (max 25)."
}
},
"additionalProperties": false
}🟢insider_trades(ticker, side, kind, days, min_value, ...)
Trades by company officers, directors and 10% owners from SEC Form 4, newest filing first. By default only open-market purchases (code P) and sales (code S). kind="form144" returns Form 144 notices of a planned sale (an intent to sell, not a completed sale); kind="all" adds grants, option exercises, tax withholding, gifts and other codes. How to read this: value = shares x reported price; planned_flag is set only when the filing says the trade was under a pre-arranged Rule 10b5-1 plan (a footnote or the filing's own checkbox); automatic_reason is set instead when a footnote points to something else routine (dividend reinvestment, tax withholding, vesting, an employee stock plan), which is NOT a pre-arranged sale plan; an insider sale has many possible reasons (taxes, diversification). Each row has source_url (the official filing) and oqro_url (the OQRO event page). Cite the source_url when you quote a figure. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
},
"side": {
"type": "string",
"enum": [
"buy",
"sell"
],
"description": "buy = open-market purchases only, sell = open-market sales only. Omit for both."
},
"kind": {
"type": "string",
"enum": [
"open_market",
"form144",
"all"
],
"default": "open_market",
"description": "Which filings to include."
},
"days": {
"type": "integer",
"minimum": 1,
"maximum": 730,
"default": 90,
"description": "Look back this many days by filing date."
},
"min_value": {
"type": "number",
"minimum": 0,
"description": "Minimum transaction value in USD."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Rows to return (max 50)."
}
},
"additionalProperties": false
}🟢congress_trades(ticker, member, side, days, limit)
Stock transactions disclosed by members of Congress in periodic transaction reports (House Clerk and Senate eFD), newest disclosure first. How to read this: amounts are the official ranges (amount_band, e.g. "$15,001 - $50,000"), never an exact value; owner is self, spouse, dependent child or joint only when the filing states it; lag_days is the days between the transaction and the disclosure. OQRO reports what was disclosed and infers no motive. Each row has source_url (the official filing) and oqro_url (the OQRO event page). Cite the source_url when you quote a figure. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
},
"member": {
"type": "string",
"maxLength": 60,
"description": "Part of the member's name, e.g. 'Pelosi'."
},
"side": {
"type": "string",
"enum": [
"buy",
"sell"
],
"description": "buy = purchases, sell = sales and partial sales. Omit for all (also exchanges)."
},
"days": {
"type": "integer",
"minimum": 1,
"maximum": 730,
"default": 180,
"description": "Look back this many days by disclosure date."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Rows to return (max 50)."
}
},
"additionalProperties": false
}🟢fund_moves(ticker, fund, change, limit)
Position changes disclosed in SEC Form 13F by the investment managers OQRO follows (a few well-known funds and the largest managers that report one readable book), newest filing first. Called without a ticker or a fund it lists the well-known funds; a ticker or part of a fund name searches every followed manager. How to read this: a 13F is a quarter-end snapshot filed up to 45 days after the quarter; it has NO trade date, so say "disclosed a new position for Q2 2026", never "bought today". change is new, increased, reduced or exited versus the manager's previous 13F, based on share count. weight_pct is the share of the disclosed 13F portfolio only. value_usd is the reported quarter-end value. Each row has source_url (the official filing) and oqro_url (the OQRO event page). Cite the source_url when you quote a figure. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
},
"fund": {
"type": "string",
"maxLength": 60,
"description": "Part of the manager's name, e.g. 'Berkshire' or 'Bridgewater'."
},
"change": {
"type": "string",
"enum": [
"new",
"increased",
"reduced",
"exited"
],
"description": "Kind of change. Omit for all."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Rows to return (max 50)."
}
},
"additionalProperties": false
}🟢federal_contracts(ticker, days, min_amount, limit)
Prime federal contract awards mapped to covered public companies (USAspending.gov), newest first. How to read this: obligated_usd is the money actually obligated to date; potential_value_usd is a ceiling including all options and is NOT revenue; obligations are usually earned over several years. Grants and loans are excluded. Each row has source_url (the official filing) and oqro_url (the OQRO event page). Cite the source_url when you quote a figure. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
},
"days": {
"type": "integer",
"minimum": 1,
"maximum": 730,
"default": 365,
"description": "Look back this many days."
},
"min_amount": {
"type": "number",
"minimum": 0,
"description": "Minimum obligated amount in USD."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Rows to return (max 50)."
}
},
"additionalProperties": false
}🟢price_history(ticker, days, interval, include_sp500)
Daily, weekly or monthly closing prices for one covered company, with the S&P 500 (SPY) over the same dates, plus the change, the high and low and the drawdown from the high over the period. About two years of history are stored. How to read this: closes are split- and dividend-adjusted, end-of-day values (not intraday); weekly and monthly points are the last close of that week or month; a company added recently may have a shorter history, and the result says so. This describes what the price did and says nothing about why or what happens next. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
},
"days": {
"type": "integer",
"minimum": 5,
"maximum": 750,
"default": 365,
"description": "Look back this many calendar days."
},
"interval": {
"type": "string",
"enum": [
"daily",
"weekly",
"monthly"
],
"description": "Spacing of the points. Default: daily up to 120 days, weekly up to 400, monthly beyond."
},
"include_sp500": {
"type": "boolean",
"default": true,
"description": "Add the S&P 500 close for each point and its change over the period."
}
},
"required": [
"ticker"
],
"additionalProperties": false
}🟢screen(sector, min_market_value, max_market_value, min_change_12m, max_change_12m, ...)
Filter and sort every covered company (about 850) on plain, published numbers: price change over 12 months and against the S&P 500, distance from the 12-month high, market value, last fiscal year's revenue, profit, free cash flow and net debt, short-interest days to cover, and counts of recent disclosures (insider purchases of $10K or more and Congress purchases in the last 90 days, fund 13F new or increased positions in the last 180 days, federal contract awards in the last 90 days). All filters are combined with AND; a company with no figure for a filtered number is left out, never counted as zero. How to read this: it narrows a list by facts and does not rank companies as good or bad. A count of disclosures says nothing about why anyone traded. Free cash flow and net debt are not returned for banks and insurers (they do not mean the same thing there). Figures are the company's own SEC XBRL numbers and adjusted daily closes; the table is rebuilt daily. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"sector": {
"type": "string",
"maxLength": 40,
"description": "GICS sector, e.g. 'Information Technology', 'Health Care', 'Financials', 'Energy'."
},
"min_market_value": {
"type": "number",
"minimum": 0,
"description": "Minimum market value in USD (latest close x shares outstanding on the filing cover)."
},
"max_market_value": {
"type": "number",
"minimum": 0,
"description": "Maximum market value in USD."
},
"min_change_12m": {
"type": "number",
"description": "Minimum price change over 12 months, in percent (negative allowed)."
},
"max_change_12m": {
"type": "number",
"description": "Maximum price change over 12 months, in percent."
},
"min_vs_sp500_12m": {
"type": "number",
"description": "Minimum points ahead of (+) or behind (-) the S&P 500 over 12 months."
},
"max_vs_sp500_12m": {
"type": "number",
"description": "Maximum points ahead of (+) or behind (-) the S&P 500 over 12 months."
},
"within_pct_of_12m_high": {
"type": "number",
"minimum": 0,
"description": "At most this many percent below the 12-month high (5 = within 5% of the high)."
},
"at_least_pct_below_12m_high": {
"type": "number",
"minimum": 0,
"description": "At least this many percent below the 12-month high (30 = down 30% or more from the high)."
},
"min_insider_purchases_90d": {
"type": "integer",
"minimum": 1,
"description": "At least this many open-market insider purchases of $10K or more in the last 90 days."
},
"min_congress_purchases_90d": {
"type": "integer",
"minimum": 1,
"description": "At least this many Congress purchases disclosed in the last 90 days."
},
"min_fund_adds_180d": {
"type": "integer",
"minimum": 1,
"description": "At least this many 13F new or increased fund positions disclosed in the last 180 days."
},
"has_federal_contracts_90d": {
"type": "boolean",
"description": "True: at least one federal contract award in the last 90 days."
},
"profitable": {
"type": "boolean",
"description": "True: positive net income in the last fiscal year."
},
"positive_free_cash_flow": {
"type": "boolean",
"description": "True: operating cash flow minus capex above zero in the last fiscal year (not for banks and insurers)."
},
"net_cash": {
"type": "boolean",
"description": "True: more cash than debt at the latest report (not for banks and insurers)."
},
"min_days_to_cover": {
"type": "number",
"minimum": 0,
"description": "Minimum FINRA short-interest days to cover."
},
"sort_by": {
"type": "string",
"enum": [
"market_value",
"change_12m",
"vs_sp500_12m",
"change_90d",
"vs_12m_high",
"insider_purchase_value_90d",
"insider_purchases_90d",
"congress_purchases_90d",
"fund_adds_180d",
"revenue",
"net_margin",
"free_cash_flow",
"days_to_cover",
"ticker"
],
"default": "market_value",
"description": "Field to sort by."
},
"direction": {
"type": "string",
"enum": [
"asc",
"desc"
],
"default": "desc"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Companies to return (max 50)."
}
},
"additionalProperties": false
}🟢leaderboard(kind, sort, chamber, limit)
Members of Congress or company insiders ranked by how their disclosed stock purchases did against the S&P 500 (SPY) after they were reported: median relative return at 30, 90 and 180 days, the share of purchases ahead of the index at 90 days, and the Mirror (an equal-weight $1,000 placed after each purchase disclosed in the last 12 months, valued at the latest close, next to the same in SPY). Only people with at least 10 purchases old enough to be measured at 90 days are listed. How to read this: Each purchase is measured from the first close after it was reported, against the S&P 500 (SPY), with every purchase weighted equally (Congress amounts are only official ranges). Disclosure lag, survivorship (only tracked companies with prices) and small samples limit what this says. Past results describe the past; this is not investment advice. The table is rebuilt nightly; before its first run the tool says so instead of returning an empty list. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"politician",
"insider"
],
"default": "politician",
"description": "politician = members of Congress (periodic transaction reports), insider = SEC Form 4 open-market purchases."
},
"sort": {
"type": "string",
"enum": [
"best",
"active",
"worst"
],
"default": "best",
"description": "best / worst = by median 90-day relative return, active = by number of purchases."
},
"chamber": {
"type": "string",
"enum": [
"house",
"senate"
],
"description": "Politicians only."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Rows to return (max 50)."
}
},
"additionalProperties": false
}🟢lobbying(ticker, limit)
Federal lobbying spending for one company from Lobbying Disclosure Act quarterly reports (lda.gov): one total per quarter plus the latest individual reports. How to read this: when the company lobbies with its own staff, its in-house report is the quarter total and already includes payments to outside firms; outside firms' income is only summed when there is no in-house report, so nothing is counted twice. Amounts under $5,000 may be blank. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Individual reports to return (max 50). Quarter totals are always included."
}
},
"required": [
"ticker"
],
"additionalProperties": false
}🟢rare_insider_trades(ticker, group, side, days, limit)
Insider open-market trades that stand out against the company's own record: every open-market purchase and sale its insiders filed since 2006, and its own 8-K filings. Each trade carries up to three signals, as plain sentences: the first insider purchase in years, the largest purchase since 2006, several insiders buying within one week (with the earlier weeks it happened), a purchase made long after the last results at a company whose insiders usually buy right after them, a trade within 14 days before results or a weighty 8-K (never counted for a pre-arranged Rule 10b5-1 plan trade), and an insider named in the company's filing announcing their departure. How to read this: these are facts about the record and the calendar, never a statement of motive or of what will happen. group filters by kind: rare_buy, cluster, outside_window, timing, departure. Each row has source_url (the official filing) and oqro_url (the OQRO event page). Cite the source_url when you quote a figure. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
},
"group": {
"type": "string",
"enum": [
"rare_buy",
"cluster",
"outside_window",
"timing",
"departure"
],
"description": "Only trades with a signal of this kind."
},
"side": {
"type": "string",
"enum": [
"buy",
"sell"
],
"description": "buy = purchases, sell = sales (from $1M). Omit for both."
},
"days": {
"type": "integer",
"minimum": 1,
"maximum": 365,
"default": 30,
"description": "Look back this many days by filing date."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Rows to return (max 50)."
}
},
"additionalProperties": false
}🟢insider_record(ticker, person)
Open-market insider purchases and sales per year since 2006 (Forms 4 and 5: the SEC's insider transactions data sets up to Sep 2024, every filing since), for one company (ticker) or one person (person, a name as filed, e.g. "Dimon James"). For a person: a one-sentence summary of their record and every covered company where they traded. For a company: how often its insiders buy within 30 days after a results announcement. How to read this: counts and totals of what was filed, by year; a trade filed twice counts once; dollar totals use the reported price. These are public disclosures, not investment advice and not a signal.
Esquema de entrada
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "US stock ticker covered by OQRO, e.g. AAPL.",
"maxLength": 10
},
"person": {
"type": "string",
"maxLength": 80,
"description": "A person's name as filed (last name first works best), e.g. Dimon James."
}
},
"additionalProperties": false
}Comunidad
Evidencia