API + Agents
The filing-review layer on US public-company strategy, exposed as a public REST API and an MCP-compatible tool surface. Stream issuer profiles, market-review constituents, acquisition evidence, and citation-backed filing reads to terminals, dashboards, and LLM agents.
https://se-cluster.com/api/api/indicesList SE-Cluster review sets with constituent counts, top issuer, methodology, and threshold metadata.
Example Request
curl "https://se-cluster.com/api/indices"
Response
{
"data": [
{
"slug": "active-acquirer",
"name": "SE-Cluster Active Acquirer Index",
"shortName": "Active Acquirer",
"tagline": "Companies actively deploying capital into M&A",
"constituents": 650,
"topIssuer": { "cik": "849869", "name": "Silgan Holdings Inc.", "ticker": "SLGN" },
"constituentsUrl": "/api/indices/active-acquirer/constituents"
}
],
"meta": { "total": 7, "universe": 17886, "totalConstituents": 11645 }
}/api/indices/[slug]Methodology, threshold, distribution metadata, and filing-read context for a single review set.
Parameters
slugstring— Index slug (e.g. active-acquirer, target-probability, distress-watch)Example Request
curl "https://se-cluster.com/api/indices/active-acquirer"
Response
{
"data": {
"slug": "active-acquirer",
"name": "SE-Cluster Active Acquirer Index",
"constituents": 650,
"methodology": [
"Recorded acquisition cadence",
"Disclosed buyer spend",
"Filing recency from 8-K and 10-K evidence"
]
}
}/api/indices/[slug]/constituentsRanked, paginated list of issuer-level constituents for a review set, with evidence-cited rationale.
Parameters
slugstring— Index sluglimitnumber— Max results (default 100, max 500)offsetnumber— Pagination offsetExample Request
curl "https://se-cluster.com/api/indices/active-acquirer/constituents?limit=3"
Response
{
"data": [
{
"rank": 1,
"cik": "849869",
"name": "Silgan Holdings Inc.",
"ticker": "SLGN",
"sector": "Manufacturing",
"rationale": [
"52 recorded acquisitions",
"$5B disclosed buyer spend",
"Filed within 13d"
]
}
],
"meta": { "index": "active-acquirer", "total": 650 }
}/api/companies/[cik]/postureSingle-company SE-Cluster posture: dominant filing-read classification and rationale per axis. Designed for agent and tool-call use.
Parameters
cikstring— SEC Central Index KeyExample Request
curl "https://se-cluster.com/api/companies/849869/posture"
Response
{
"data": {
"cik": "849869",
"name": "Silgan Holdings Inc.",
"ticker": "SLGN",
"posture": { "dominant": "active-acquirer", "label": "Active Acquirer" },
"rationale": [
{
"slug": "active-acquirer",
"shortName": "Active Acquirer",
"qualifies": true,
"rationale": ["52 recorded acquisitions", "$5B disclosed buyer spend"]
}
]
}
}/api/company/[cik]Get company profile, filing posture, recommendations, and acquisition-program context.
Parameters
cikstring— SEC Central Index KeyExample Request
curl "https://se-cluster.com/api/company/0001649338"
Response
{
"data": {
"cik": "0001649338",
"name": "Broadcom Inc.",
"filingCounts": { "10k": 12, "10q": 44, "8k": 138 },
"posture": "active-acquirer",
"recommendations": [...]
}
}Model Context Protocol
MCP server for finance agents
The same endpoints exposed as a thin MCP server. Drop into Claude Desktop, Cursor, or any MCP-compatible agent host and your model gets first-class access to filing-review data, issuer posture, review-set constituents, and primary-source M&A evidence - without web scraping.
Claude Desktop config
{
"mcpServers": {
"secluster": {
"command": "npx",
"args": ["-y", "@secluster/mcp-server"],
"env": { "SECLUSTER_BASE": "https://se-cluster.com" }
}
}
}Tool calls available to your agent
[ "list_behavioral_indices", "get_index_methodology", "rank_index_constituents", "get_company_posture", "get_company_profile", "get_company_profile" ]
Direct REST — TypeScript / Node
const res = await fetch(
"https://se-cluster.com/api/companies/849869/posture",
);
const { data } = await res.json();
console.log(data.posture);
// { dominant: "active-acquirer", label: "Active Acquirer" }Direct REST — Python
import requests
r = requests.get("https://se-cluster.com/api/indices/active-acquirer/constituents",
params={"limit": 5})
for c in r.json()["data"]:
print(c["rank"], c["name"], c["rationale"])Rate Limits
100 requests per minute. Responses include X-RateLimit-Limit and X-RateLimit-Window headers.
Data Format
Monetary values in millions USD. Dates in ISO 8601. Evidence objects include source filing IDs and excerpt text.
Open Access
No authentication required. All data sourced from public SEC EDGAR filings.