{
  "markdown": "# @signal8ai/mcp\n\nMCP (Model Context Protocol) server for [Signal8](https://signal8.ai) -- AI-extracted SEC filing intelligence data.\n\nGives AI agents like Claude, Cursor, and other MCP-compatible tools direct access to:\n\n- **Company fundamentals** (quotes, financials, earnings, float, executives, peers, news)\n- **Dilution risk scoring** (0-100 Dilution Pressure Score with 5-dimension assessment)\n- **SEC filing extractions** (warrants, convertibles, shelf registrations, and 10 more types)\n- **Instrument lifecycle tracking** (warrants, convertibles, ATMs with XBRL reconciliation)\n- **Intelligence** (counterparties, counsel, insiders, institutions, ROFR triggers, cluster buys)\n- **Cross-company intelligence** (top AUM institutions, cross-company counsel & insider patterns)\n- **Compliance monitoring** (Nasdaq/NYSE deficiency detection, listing classification)\n- **Company screening** (dilution-aware filters with 30+ fields)\n- **ETF analysis** (holdings, sectors, countries, performance, comparables)\n\n## Installation\n\n```bash\nnpm install -g @signal8ai/mcp\n# or use npx (no install needed)\nnpx @signal8ai/mcp\n```\n\n## Setup\n\n### 1. Get your API key\n\nSign up at [signal8.ai/mcp](https://signal8.ai/mcp) and create a key at [signal8.ai/settings/api-keys](https://signal8.ai/settings/api-keys) to get your API key.\n\n### 2. Configure your MCP client\n\n#### Claude Desktop\n\nAdd to your Claude Desktop config file:\n\n**macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`\n**Windows:** `%APPDATA%\\Claude\\claude_desktop_config.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"signal8\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@signal8ai/mcp\"],\n      \"env\": {\n        \"SIGNAL8_API_KEY\": \"sk_live_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n#### Cursor\n\nAdd to `.cursor/mcp.json` in your project root:\n\n```json\n{\n  \"mcpServers\": {\n    \"signal8\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@signal8ai/mcp\"],\n      \"env\": {\n        \"SIGNAL8_API_KEY\": \"sk_live_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n#### Other MCP Clients\n\nSet the `SIGNAL8_API_KEY` environment variable and run:\n\n```bash\nSIGNAL8_API_KEY=sk_live_your_key_here npx @signal8ai/mcp\n```\n\n## Available Tools (86)\n\nThe server exposes **86 live tools** at runtime. The reference tables below are\na representative catalog grouped by domain; several documented tools and whole\ncategories (e.g. Extractions and Dilution) are currently disabled and are not\nregistered live, so individual section counts below may exceed what is actually\nexposed.\n\n### Companies (3 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `search_companies` | Search companies by name or ticker | 1 |\n| `get_company_profile` | Full company profile (description, market cap, sector) | 1 |\n| `get_company_bundle` | Consolidated data bundle in one call | 25 |\n\n### Company Data (13 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_quote` | Real-time stock quote (price, change, volume) | 1 |\n| `get_market_metrics` | Volume averages, volatility, SMAs, trend direction | 3 |\n| `get_short_interest` | Short interest data and days-to-cover | 3 |\n| `get_float` | Float composition, shares outstanding, ownership % | 3 |\n| `get_financials` | Income statement, balance sheet, cash flow | 5 |\n| `get_earnings` | Earnings history with EPS surprises | 3 |\n| `get_executives` | Executive team roster and compensation | 1 |\n| `get_peers` | Peer/comparable companies | 1 |\n| `get_transcripts` | Earnings call transcripts | 3 |\n| `get_news` | Latest company news headlines | 1 |\n| `get_analyst_consensus` | Analyst ratings and price targets | 3 |\n| `get_material_events` | Material corporate events (8-K filings) | 3 |\n| `get_clinical_trials` | Clinical trial pipeline (biotech/pharma) | 3 |\n\n### Market — Cross-Ticker (6 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_quotes_batch` | Batch real-time quotes for up to 200 tickers (POST) | max(1, ceil(N/10)) |\n| `get_quotes_universe` | Quotes for an entire index universe (sp500/ndx/dji) | 5 |\n| `get_index_snapshot` | Bulk ticker snapshots (price, day change, % change) | 1 |\n| `get_sector_etf_snapshot` | Snapshot of the 11 SPDR sector ETFs with sector labels | 2 |\n| `get_top_movers` | Top gainers / losers / most-active by volume (with optional `session` window) | 2 |\n| `get_market_breadth` | Advance/decline, % above SMA50/200, 52-week high/low counts | 2 |\n\n### Calendar (5 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_earnings_calendar` | Upcoming/recent earnings releases between two dates | 3 |\n| `get_economic_calendar` | Macro/economic events (CPI, FOMC, jobs, GDP) by date and country | 3 |\n| `get_filing_calendar` | 10-K / 10-Q SEC filing-deadline calendar by universe | 5 |\n| `get_lockup_expirations` | Upcoming IPO/secondary lockup expirations | 5 |\n| `get_recent_material_filings` | Recent material 8-K filings by index universe and item codes | 5 |\n\n### Extractions (4 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_extractions` | AI-extracted SEC filing data (13 types) | 5 |\n| `get_filing_extractions` | Extractions for a specific SEC filing | 5 |\n| `get_extraction_dashboard` | Cross-company extraction analytics | 50 |\n| `get_extraction_by_type` | Filter extractions by type (warrants, convertibles, etc.) | 5 |\n\n### Dilution (5 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_dilution_risk` | Dilution Pressure Score (0-100) with 5-dimension assessment | 5 |\n| `get_dilution_performance` | Post-dilution stock performance at +1d/+7d/+30d/+90d | 10 |\n| `get_instruments` | Active warrants, convertibles, ATMs, shelf registrations | 5 |\n| `get_instrument_detail` | Deep dive on a single instrument | 5 |\n| `get_baby_shelf` | IB6 baby shelf remaining capacity | 10 |\n\n### Intelligence — Per-Company (12 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_counterparties` | Entity-resolved counterparty relationships | 10 |\n| `get_counsel` | Legal counsel engagements with role taxonomy | 10 |\n| `get_insiders` | Insider trading discovery and patterns | 10 |\n| `get_ownership` | Unified ownership (Form 4 + 13F + 13D/G) | 10 |\n| `get_rofr_triggers` | ROFR exercise trigger detection | 10 |\n| `get_institutions` | Institutional holders from 13F filings | 10 |\n| `get_institution_detail` | Detailed info for a specific institution (by CIK) | 10 |\n| `get_institution_holdings` | Full portfolio holdings for an institution | 10 |\n| `get_banks` | Investment bank relationships from SEC filings | 10 |\n| `get_legal_counsels` | Legal counsel relationships with partner names | 10 |\n| `get_insider_transactions` | Detailed Form 4 transaction history | 5 |\n| `get_insider_cluster_buys` | Cluster buying pattern detection (3+ insiders in 14 days) | 10 |\n\n### Intelligence — Cross-Company (3 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_institution_top_aum` | Top institutional holders by AUM across all companies | 25 |\n| `get_counsel_cross_company` | Law firm engagements across multiple companies | 25 |\n| `get_insider_cross_company` | Insider trading patterns across multiple companies | 25 |\n\n### Compliance (4 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_compliance` | Full compliance evaluation | 25 |\n| `get_deficiencies` | Listing deficiency detection | 10 |\n| `get_compliance_alerts` | Active compliance alerts | 5 |\n| `get_listing_classification` | Exchange listing classification | 10 |\n\n### Screener (2 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_screener_fields` | Discover available screening filters | 1 |\n| `screen_companies` | Dilution-aware company screener | 25 |\n\n### Events & ATM (2 tools)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_events` | Unified corporate events | 5 |\n| `get_atm_activity` | ATM program monitoring | 5 |\n\n### ETF (1 tool)\n\n| Tool | Description | Credits |\n|------|-------------|---------|\n| `get_etf_bundle` | Aggregated ETF data (profile, holdings, sectors, performance) | 25 |\n\n## Market Intelligence — Tool Reference\n\nCross-ticker market and calendar tools that operate over the entire universe rather than a single company. The single-ticker `get_quote` tool is included here for completeness; the rest were added in the Market Intelligence rollout.\n\n---\n\n### `get_quote`\n\nReal-time quote for a single ticker (price, change, volume, day range).\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| ticker | string | yes | Ticker symbol (e.g. `AAPL`) |\n\n**Sample output (regular trading hours, 9:30am–4:00pm ET):**\n\n```json\n{\n  \"data\": {\n    \"ticker\": \"AAPL\",\n    \"currentPrice\": 178.42,\n    \"change\": 2.15,\n    \"changePercent\": 1.22,\n    \"high\": 179.10,\n    \"low\": 176.80,\n    \"open\": 177.05,\n    \"previousClose\": 176.27,\n    \"preMarketPrice\": null,\n    \"preMarketChangePercent\": null,\n    \"afterHoursPrice\": null,\n    \"afterHoursChangePercent\": null,\n    \"timestamp\": 1714492800\n  }\n}\n```\n\n**Sample output (extended hours — pre-market or after-hours):**\n\n```json\n{\n  \"data\": {\n    \"ticker\": \"AAPL\",\n    \"currentPrice\": 178.42,\n    \"change\": 2.15,\n    \"changePercent\": 1.22,\n    \"high\": 179.10,\n    \"low\": 176.80,\n    \"open\": 177.05,\n    \"previousClose\": 176.27,\n    \"preMarketPrice\": 179.05,\n    \"preMarketChangePercent\": 0.35,\n    \"afterHoursPrice\": 178.90,\n    \"afterHoursChangePercent\": 0.27,\n    \"timestamp\": 1714492800\n  }\n}\n```\n\n> **Extended-hours windows (US equities, ET):** pre-market 4:00am–9:30am, after-hours 4:00pm–8:00pm. Outside those windows `preMarketPrice`, `preMarketChangePercent`, `afterHoursPrice`, and `afterHoursChangePercent` are `null`. In practice only one pair is populated at a time depending on the current window — the second example shows both populated for illustration.\n\n**Use case:** \"What is AAPL trading at right now?\"\n\n---\n\n### `get_quotes_batch`\n\nFetch real-time quotes for up to 200 tickers in one call. Backed by `POST /api/v1/public/market/quotes`. Tickers absent from the upstream feed map to `null`.\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| tickers | string[] | yes | 1–200 ticker symbols |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"count\": 3,\n    \"quotes\": {\n      \"AAPL\": { \"ticker\": \"AAPL\", \"currentPrice\": 178.42, \"changePercent\": 1.22 },\n      \"MSFT\": { \"ticker\": \"MSFT\", \"currentPrice\": 412.10, \"changePercent\": 0.41 },\n      \"NVDA\": null\n    }\n  }\n}\n```\n\n**Use case:** \"Pull live quotes for my entire 50-ticker watchlist in one call.\"\n\n---\n\n### `get_quotes_universe`\n\nQuotes for all constituents of a known index universe (S&P 500, Nasdaq 100, or Dow 30).\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| universe | enum | yes | One of `sp500`, `ndx`, `dji` |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"universe\": \"dji\",\n    \"count\": 30,\n    \"quotes\": {\n      \"AAPL\": { \"currentPrice\": 178.42, \"changePercent\": 1.22 },\n      \"MSFT\": { \"currentPrice\": 412.10, \"changePercent\": 0.41 }\n    }\n  }\n}\n```\n\n**Use case:** \"Give me a live snapshot of every Dow 30 component.\"\n\n---\n\n### `get_index_snapshot`\n\nBulk daily snapshot (OHLC, volume, % change) for an explicit ticker list (max 50) or the full tracked universe when omitted.\n\n**Inputs:** _none required_ (optional `tickers` query when called via REST)\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"count\": 2,\n    \"snapshots\": [\n      { \"ticker\": \"SPY\", \"close\": 512.34, \"changePercent\": 0.42, \"volume\": 78321000 },\n      { \"ticker\": \"QQQ\", \"close\": 438.21, \"changePercent\": 0.55, \"volume\": 41902000 }\n    ]\n  }\n}\n```\n\n**Use case:** \"Show me a one-shot snapshot of where the index ETFs closed.\"\n\n---\n\n### `get_sector_etf_snapshot`\n\nSnapshot of the 11 SPDR sector ETFs (XLK, XLF, XLV, XLY, XLP, XLE, XLI, XLB, XLRE, XLU, XLC) with a `sector` label per row. Useful for sector-rotation views.\n\n**Inputs:** _none_\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"count\": 11,\n    \"sectors\": [\n      { \"ticker\": \"XLK\", \"sector\": \"Technology\", \"close\": 218.40, \"changePercent\": 0.85 },\n      { \"ticker\": \"XLF\", \"sector\": \"Financials\", \"close\": 41.23, \"changePercent\": -0.12 }\n    ]\n  }\n}\n```\n\n**Use case:** \"Which sectors are leading and lagging today?\"\n\n---\n\n### `get_top_movers`\n\nTop market movers by direction (gainers, losers, or most-active by volume), computed from `ticker_snapshots`. Excludes warrants/units/ETFs/funds.\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| direction | enum | yes | `gainers`, `losers`, or `active` |\n| limit | integer | no | 1–100 (backend default applied when omitted) |\n| session | enum | no | `premarket` (4:00–9:30 AM ET), `regular` (default; close-to-close), or `afterhours` (4:00–8:00 PM ET). Use premarket/afterhours when posting outside RTH so rankings reflect the live window. |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"direction\": \"gainers\",\n    \"session\": \"regular\",\n    \"count\": 2,\n    \"movers\": [\n      { \"rank\": 1, \"ticker\": \"XYZ\", \"name\": \"Acme Corp\", \"price\": 12.34, \"changePercent\": 42.1, \"volume\": 12000000, \"marketCap\": 350000000, \"isETF\": false },\n      { \"rank\": 2, \"ticker\": \"ABC\", \"name\": \"ABC Inc\", \"price\": 5.62, \"changePercent\": 31.8, \"volume\": 8400000, \"marketCap\": 120000000, \"isETF\": false }\n    ]\n  }\n}\n```\n\n**Use case:** \"What are today's top 10 gainers?\"\n\n---\n\n### `get_market_breadth`\n\nMarket breadth aggregates (advance/decline counts and ratio, % of constituents trading above their 50DMA / 200DMA, and counts of new 52-week highs/lows) for a chosen universe. Point-in-time only — no historical breadth.\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| universe | enum | no | `sp500` (default), `ndx`, or `all` |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"universe\": \"sp500\",\n    \"asOf\": \"2026-04-30T20:00:00.000Z\",\n    \"advancers\": 312,\n    \"decliners\": 175,\n    \"unchanged\": 16,\n    \"advanceDeclineRatio\": 1.7828571428571428,\n    \"pctAbove50DMA\": 0.642,\n    \"pctAbove200DMA\": 0.561,\n    \"new52wHighs\": 18,\n    \"new52wLows\": 4\n  }\n}\n```\n\n**Use case:** \"How many S&P 500 names are above their 200DMA right now?\" or \"Add a one-line market-state header to today's commentary tweet.\"\n\n---\n\n### `get_earnings_calendar`\n\nForward-looking and recent earnings releases between two dates. Optionally filter to a list of tickers.\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| from | string (YYYY-MM-DD) | yes | Window start |\n| to | string (YYYY-MM-DD) | yes | Window end |\n| tickers | string[] | no | Optional ticker filter |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"events\": [\n      { \"ticker\": \"AAPL\", \"date\": \"2026-05-02\", \"time\": \"AMC\", \"epsEstimate\": 1.50, \"revenueEstimate\": 90100000000 }\n    ],\n    \"total\": 1,\n    \"limit\": 50,\n    \"offset\": 0\n  }\n}\n```\n\n**Use case:** \"Which mega-caps report earnings next week?\"\n\n---\n\n### `get_economic_calendar`\n\nMacroeconomic events (CPI, FOMC, NFP, GDP, etc.) between two dates, filtered by country and impact level.\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| from | string (YYYY-MM-DD) | yes | Window start |\n| to | string (YYYY-MM-DD) | yes | Window end |\n| country | string (ISO-2) | no | Defaults to `US` |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"events\": [\n      { \"date\": \"2026-05-07\", \"country\": \"US\", \"event\": \"FOMC Rate Decision\", \"impact\": \"High\", \"actual\": null, \"forecast\": \"5.25%\", \"previous\": \"5.25%\" }\n    ],\n    \"total\": 1\n  }\n}\n```\n\n**Use case:** \"What high-impact US events land this week?\"\n\n---\n\n### `get_filing_calendar`\n\nForward-looking 10-K / 10-Q SEC filing-deadline calendar by index universe. Deadlines computed from each company's last-reported period end + filer-status offset.\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| from | string (YYYY-MM-DD) | no | Default today |\n| to | string (YYYY-MM-DD) | no | Default today + 45d |\n| universe | enum | no | `sp500`, `ndx`, `dji`, or `all` (default) |\n| formTypes | string[] | no | Subset of `[\"10-K\", \"10-Q\"]` |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"rows\": [\n      {\n        \"ticker\": \"AAPL\", \"companyName\": \"Apple Inc.\",\n        \"formType\": \"10-Q\", \"periodEnd\": \"2026-03-29\",\n        \"deadline\": \"2026-05-13\", \"daysUntilDeadline\": 13,\n        \"filerStatus\": \"large_accelerated\"\n      }\n    ],\n    \"count\": 1,\n    \"window\": { \"from\": \"2026-04-30\", \"to\": \"2026-06-14\" },\n    \"universe\": \"sp500\",\n    \"formTypes\": [\"10-K\", \"10-Q\"]\n  }\n}\n```\n\n**Use case:** \"Which S&P 500 names have a 10-Q deadline in the next two weeks?\"\n\n---\n\n### `get_lockup_expirations`\n\nUpcoming IPO/secondary lockup expirations within a date window. Derived from underwriting-terms extractions (S-1 / F-1 / 424B*) — coverage is partial; check `meta.coveragePercent`.\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| from | string (YYYY-MM-DD) | no | Default today |\n| to | string (YYYY-MM-DD) | no | Default today + 90d |\n| universe | enum | no | `sp500`, `ndx`, `dji`, or `all` (default) |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"rows\": [\n      {\n        \"ticker\": \"NEWCO\", \"companyName\": \"NewCo Inc.\",\n        \"lockupEndDate\": \"2026-05-21\", \"daysUntilExpiry\": 21,\n        \"originalFilingType\": \"S-1\", \"sharesUnlocking\": 24500000,\n        \"sourceFilingUrl\": \"https://sec.gov/...\"\n      }\n    ],\n    \"meta\": {\n      \"coveragePercent\": 38.4,\n      \"totalCandidates\": 412,\n      \"parsedCount\": 158,\n      \"windowStart\": \"2026-04-30\",\n      \"windowEnd\": \"2026-07-29\",\n      \"universe\": \"all\"\n    }\n  }\n}\n```\n\n**Use case:** \"Any IPO lockup expirations coming up in the next 30 days?\"\n\n---\n\n### `get_recent_material_filings`\n\nRecent 8-K filings flagged as materially significant within a named index universe, optionally filtered by item codes (e.g. 1.01 material agreement, 5.02 leadership change). Lookback fixed at 7 days.\n\n**Inputs:**\n\n| Name | Type | Required | Description |\n|------|------|----------|-------------|\n| universe | enum | yes | `sp500`, `ndx`, or `dji` |\n| items | string[] | no | 8-K item codes (e.g. `[\"1.01\", \"2.01\"]`) |\n| limit | integer | no | 1–200 (default 50) |\n\n**Sample output:**\n\n```json\n{\n  \"data\": {\n    \"universe\": \"sp500\",\n    \"items\": [\"1.01\", \"5.02\"],\n    \"count\": 1,\n    \"filings\": [\n      {\n        \"ticker\": \"AAPL\", \"companyName\": \"Apple Inc.\",\n        \"filingDate\": \"2026-04-29T20:15:00Z\", \"formType\": \"8-K\",\n        \"items\": [\"1.01\"], \"filingUrl\": \"https://sec.gov/...\",\n        \"summary\": \"Material definitive agreement entered into...\"\n      }\n    ]\n  }\n}\n```\n\n**Use case:** \"Any S&P 500 leadership-change 8-Ks filed this week?\"\n\n---\n\n## Resources\n\n| Resource | URI | Description |\n|----------|-----|-------------|\n| Company Profile | `signal8://companies/{ticker}/profile` | Enriched company profile by ticker |\n| Extraction Types | `signal8://extraction-types` | List of all 13 SEC filing extraction types |\n\n## Prompts (4)\n\n| Prompt | Arguments | Description |\n|--------|-----------|-------------|\n| `analyze_dilution_risk` | `ticker` (string) | 6-step dilution risk analysis workflow |\n| `company_due_diligence` | `ticker` (string) | 10-step comprehensive due diligence research |\n| `screening_workflow` | `sector?`, `marketCapMax?` (string) | 5-step discover-screen-analyze workflow |\n| `institutional_analysis` | `ticker` (string) | 6-step institutional ownership & smart money analysis |\n\n## Hosted Endpoint\n\nFor web-based MCP clients, use the hosted Streamable HTTP endpoint:\n\n```\nPOST https://mcp.signal8.ai/mcp\nAuthorization: Bearer sk_live_your_key_here\nContent-Type: application/json\n```\n\nThis Streamable HTTP endpoint works today with MCP clients that support custom\nbearer-token headers (e.g. Claude Code CLI's `--transport http` connector,\nCursor, and VS Code's MCP support). OAuth-based discovery for the Claude.ai\nDesktop/web custom connector is **coming soon** — until then, use the local\nstdio config (npx) shown above, or pass the `Authorization` header directly\nwhere your client allows it.\n\n## Environment Variables\n\n| Variable | Required | Description |\n|----------|----------|-------------|\n| `SIGNAL8_API_KEY` | Yes | Your Signal8 API key (starts with `sk_live_` or `sk_test_`) |\n| `SIGNAL8_API_URL` | No | API base URL (default: `https://api.signal8.ai/api/v1/public`) |\n\n## Pricing\n\nEach tool call consumes credits based on the endpoint it accesses. See credit costs in the tools table above. Get your free tier (100 credits/day) at [signal8.ai](https://signal8.ai).\n\n## Programmatic Usage\n\n```typescript\nimport { createMcpServer, Signal8ApiClient } from '@signal8ai/mcp';\n\nconst client = new Signal8ApiClient({\n  baseUrl: 'https://api.signal8.ai/api/v1/public',\n  apiKey: 'sk_live_xxx',\n});\n\nconst server = createMcpServer(client);\n// Connect to any MCP transport...\n```\n\n## License\n\nMIT -- see the [LICENSE](./LICENSE) file. Copyright (c) 2025-2026 Signal8 AI, Inc.\n\nUse of the hosted Signal8 API and data is additionally governed by the Signal8\n[Terms of Service](https://signal8.ai/terms).\n",
  "bytes": 21321,
  "sha": "d722bdbcadd0d88492b7874c38b334df1363eceb1f4d91079fcec05d30ff99d1",
  "repo_slug": "signal8ai/signal8-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_ai_signal8_mcp_85200304/readme"
}