Metadata-Version: 2.4
Name: ceointerviews-mcp
Version: 0.1.0
Summary: MCP server for CEOInterviews — search 20,000+ executives, 1M+ quotes, and full verified interview transcripts via the Model Context Protocol
Project-URL: Homepage, https://ceointerviews.ai
Project-URL: Documentation, https://ceointerviews.ai/api_docs/
Project-URL: Repository, https://github.com/ceointerviews/ceointerviews-mcp
Project-URL: MCP Server, https://ceointerviews.ai/mcp
Project-URL: Get API Key, https://mcp.ceointerviews.ai
Author-email: CEOInterviews <support@ceointerviews.ai>
License-Expression: MIT
License-File: LICENSE
Keywords: ai-agents,ceo,executive,finance,mcp,model-context-protocol,quotes,transcripts
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Office/Business :: Financial
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Requires-Dist: httpx>=0.27
Requires-Dist: mcp[cli]>=1.9.0
Requires-Dist: pydantic>=2.0
Description-Content-Type: text/markdown

<div align="center">

# CEOInterviews MCP

### Give your AI agent the world's largest verified database of executive interviews.

**20,000+ executives · 1,000,000+ quotes · full transcripts · 4 MCP tools · 30-second install**

[![PyPI](https://img.shields.io/pypi/v/ceointerviews-mcp.svg?color=3b82f6)](https://pypi.org/project/ceointerviews-mcp/)
[![Python](https://img.shields.io/pypi/pyversions/ceointerviews-mcp.svg?color=3b82f6)](https://pypi.org/project/ceointerviews-mcp/)
[![MCP](https://img.shields.io/badge/MCP-compatible-8b5cf6)](https://modelcontextprotocol.io)
[![License: MIT](https://img.shields.io/badge/license-MIT-3b82f6.svg)](LICENSE)
[![Get API Key](https://img.shields.io/badge/Get%20API%20Key-mcp.ceointerviews.ai-22c55e)](https://mcp.ceointerviews.ai)

</div>

---

## Why this exists

Ask any AI agent *"what has Jensen Huang said about AI infrastructure?"* and you'll get **hallucinated quotes**, misattributed soundbites, and links to SEO-spam blogs. The web is full of fake CEO quotes — and LLMs eat them all.

CEOInterviews fixes this. Every transcript is **AI- and human-verified** to the original primary source: the actual interview, podcast, earnings call, or press conference. No fabrications. No misattributions. No "as an AI language model, here's a plausible-sounding quote."

<div align="center">

| ❌ Other "executive quote" datasets | ✅ CEOInterviews |
|:---:|:---:|
| <img src="https://ceointerviews.ai/static/images/examples/example_elon_failed_2.png" width="380" alt="Low-quality unverified source"> | <img src="https://ceointerviews.ai/static/images/examples/example_elon_verified.png" width="380" alt="CEOInterviews AI-verified source"> |
| Unverified blog repost · No source URL · Misattributed quotes | **AI + human verified** · Original primary source · Speaker-authenticated |

</div>

This MCP server exposes that database to **Claude, ChatGPT, Cursor, Windsurf**, and any MCP-compatible agent — through 4 simple tools. Connect it once and your agent gains a research analyst with a perfect memory of what every CEO, CFO, central banker, and AI founder has actually said on the record.

---

## 30-second install

```bash
claude mcp add --transport http --scope user ceointerviews https://ceointerviews.ai/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"
```

That's it. Open Claude Code, type `/mcp`, and you're connected. [Grab a free API key →](https://mcp.ceointerviews.ai)

> Don't use Claude Code? Scroll to [Connect any MCP client](#connect-any-mcp-client) — Cursor, Windsurf, Claude Desktop, ChatGPT Agents, and raw HTTP all work.

---

## The "aha" moment

Open your agent and ask any of these out loud:

<table>
<tr>
<td width="120" align="center"><img src="https://ceointerviews.ai/static/images/examples/jensen_huang_time_interview.jpg" width="100"></td>
<td>

> **"What has Jensen Huang said about AI infrastructure spending in the last 6 months?"**

The agent calls `get_transcripts(entity_name="Jensen Huang", keyword="AI infrastructure", filter_after_dt="...")` and pulls back the actual NVIDIA earnings call transcripts and TIME interview, with source URLs and timestamps.

</td>
</tr>
<tr>
<td width="120" align="center"><img src="https://ceointerviews.ai/static/images/examples/sam_altman_stargate_bloomberg.jpg" width="100"></td>
<td>

> **"Summarize Sam Altman's recent comments on Stargate and the $500B AI infra build-out."**

Pulls Bloomberg interviews, OpenAI press conferences, and podcast appearances. Every claim is sourced — no hallucinations.

</td>
</tr>
<tr>
<td width="120" align="center"><img src="https://ceointerviews.ai/static/images/examples/jerome_powell_ecb_forum.jpg" width="100"></td>
<td>

> **"What did Jerome Powell say about inflation and tariffs at the ECB forum?"**

Hits `search_quotes(entity_name="Jerome Powell", keyword="inflation tariffs", is_financial_policy=true)`. Returns the verified soundbites with the FOMC press conference URL.

</td>
</tr>
<tr>
<td width="120" align="center"><img src="https://ceointerviews.ai/static/images/examples/elon_musk_nikhil_kamath.jpg" width="100"></td>
<td>

> **"Find controversial statements from Elon Musk about tariffs."**

`search_quotes(entity_name="Elon Musk", keyword="tariffs", is_controversial=true)`. Speaker-verified, primary source.

</td>
</tr>
</table>

This is what every "research GPT" promises and almost none deliver. The data layer has to actually exist — and be clean — first.

---

## What you get

| | |
|---|---|
| 📈 **20,000+ executives** | Every CEO, CFO, CTO across S&P 500, S&P 1500, NASDAQ 100, and global markets |
| 💬 **1,000,000+ quotes** | Tagged for *notable*, *controversial*, *financial-policy* sentiment |
| 📜 **Full interview transcripts** | Earnings calls, podcasts, conferences, press appearances — with source URLs and timestamps |
| 🇺🇸 🇨🇳 🇪🇺 **Global coverage** | US, China, and Europe-based companies. Public officials and Federal Reserve members. AI startup founders (OpenAI, Anthropic, Mistral, and hundreds more) |
| 🤖 + 👤 **AI + human verified** | Every transcript is checked for speaker authenticity. Source URLs and publication dates always included |
| ⚡ **Streamable HTTP MCP** | Hosted endpoint, Bearer token auth, no server to run |

---

## Pricing

**$5 per 1,000 results.** $0.005 per result. Billed weekly via Stripe. No monthly minimum, no commitment, no rate-limit gotchas.

[**Get your API key →**](https://mcp.ceointerviews.ai)

---

## Connect any MCP client

| | |
|---|---|
| **Server URL** | `https://ceointerviews.ai/mcp` |
| **Protocol** | Streamable HTTP (MCP) |
| **Auth** | `Authorization: Bearer YOUR_API_KEY` |

### Claude Code (CLI + VSCode extension)

```bash
claude mcp add --transport http --scope user ceointerviews https://ceointerviews.ai/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"
```

In VSCode, open the integrated terminal (Ctrl+backtick / Cmd+backtick) and run the same command. Then type `/mcp` in the Claude Code chat to verify.

### Claude Desktop / Cursor / Windsurf

Paste this into your client's MCP config:

```json
{
  "mcpServers": {
    "ceointerviews": {
      "type": "http",
      "url": "https://ceointerviews.ai/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}
```

| Client | Where to paste |
|--------|---------------|
| **Claude Desktop** | Settings → Developer → Edit Config → `claude_desktop_config.json` |
| **Cursor** | Settings → MCP → Add Server |
| **Windsurf** | Settings → MCP → Add Server |
| **Claude Code (manual)** | Add to top-level `mcpServers` in `~/.claude.json` |

### Anything else

Point your MCP client at the Streamable HTTP endpoint:

```
URL:    https://ceointerviews.ai/mcp
Auth:   Authorization: Bearer YOUR_API_KEY
```

---

## The 4 tools

### 🎯 `get_transcripts` — your primary research tool

Returns full verified interview transcripts. Use this **first** for any question about what an executive has said.

| Parameter | Type | Description |
|-----------|------|-------------|
| `entity_name` | string | Executive name, fuzzy matched (e.g. `"Tim Cook"`) |
| `entity_id` | int | Exact entity ID from `search_executives` |
| `company_name` | string | Company name or ticker, fuzzy matched |
| `company_id` | int | Exact company ID |
| `keyword` | string | Search within transcript text (requires entity or company filter) |
| `filter_after_dt` | string | Only items after this date (ISO 8601) |
| `filter_before_dt` | string | Only items before this date (ISO 8601) |
| `page_num` | int | Page number (default 1) |
| `page_size` | int | Results per page, 1–500 (default 5). Keep small (5–7) — transcripts are large |

### 🧑‍💼 `search_executives`

Find people. Returns name, title, institution, bio, and company metadata.

| Parameter | Type | Description |
|-----------|------|-------------|
| `keyword` | string | Fuzzy search across name, title, company name, and ticker. Multi-term in any order: `"Tim Cook"`, `"AAPL"`, `"CEO Tesla"`, `"devinder kumar amd"` |
| `company_name` | string | Filter by company name or ticker |
| `gender` | string | `M`, `F`, or `O` |
| `is_snp500` | bool | Only S&P 500 company executives |
| `is_nasdaq` | bool | Only NASDAQ-listed company executives |
| `is_snp1500` | bool | Only S&P 1500 company executives |
| `is_nasdaq100` | bool | Only NASDAQ 100 company executives |
| `is_ai_startup` | bool | Only AI startup executives |
| `is_top_startup` | bool | Only top startup executives |
| `is_usa_based` | bool | Only US-based company executives |
| `is_china_based` | bool | Only China-based company executives |
| `is_europe_based` | bool | Only Europe-based company executives |
| `is_public_company` | bool | Only publicly traded company executives |
| `page_num` | int | Page number (default 1) |
| `page_size` | int | Results per page, 1–500 (default 10) |

### 💬 `search_quotes`

Supplementary tool for short notable quotes. Use only when the user explicitly asks for soundbites or exact wording — for general research, prefer `get_transcripts`.

| Parameter | Type | Description |
|-----------|------|-------------|
| `entity_name` | string | Executive name, fuzzy matched |
| `entity_id` | int | Exact entity ID |
| `company_name` | string | Company name or ticker, fuzzy matched |
| `company_id` | int | Exact company ID |
| `keyword` | string | Search within quote text |
| `is_notable` | bool | Only notable/important quotes |
| `is_controversial` | bool | Only controversial quotes |
| `is_financial_policy` | bool | Only financial/policy-related quotes |
| `filter_after_dt` | string | Only quotes after this date (ISO 8601) |
| `filter_before_dt` | string | Only quotes before this date (ISO 8601) |
| `page_num` | int | Page number (default 1) |
| `page_size` | int | Results per page, 1–500 (default 10) |

### 🏢 `search_companies`

Look up companies and their classification flags.

| Parameter | Type | Description |
|-----------|------|-------------|
| `keyword` | string | Company name or stock ticker |
| `is_snp500` | bool | Only S&P 500 companies |
| `is_nasdaq` | bool | Only NASDAQ-listed companies |
| `is_snp1500` | bool | Only S&P 1500 companies |
| `is_nasdaq100` | bool | Only NASDAQ 100 companies |
| `is_ai_startup` | bool | Only AI startups |
| `is_top_startup` | bool | Only top startups |
| `is_usa_based` | bool | Only US-based companies |
| `is_china_based` | bool | Only China-based companies |
| `is_europe_based` | bool | Only Europe-based companies |
| `is_public_company` | bool | Only publicly traded companies |
| `page_num` | int | Page number (default 1) |
| `page_size` | int | Results per page, 1–500 (default 10) |

---

## Self-hosting (optional)

Most users should connect directly to the hosted server at `https://ceointerviews.ai/mcp`. Self-hosting only buys you the ability to run the MCP transport on your own infra — you'll still need a valid API key to call the upstream CEOInterviews REST API.

### From PyPI

```bash
pip install ceointerviews-mcp
export CEOINTERVIEWS_API_KEY="your_api_key_here"
ceointerviews-mcp
```

### From source

```bash
git clone https://github.com/ceointerviews/ceointerviews-mcp.git
cd ceointerviews-mcp
python -m venv venv && source venv/bin/activate
pip install -e .
cp .env.example .env  # then fill in your API key
ceointerviews-mcp
```

### Docker

```bash
docker build -t ceointerviews-mcp .
docker run -e CEOINTERVIEWS_API_KEY=your_key -p 8001:8001 ceointerviews-mcp
```

### Environment variables

| Variable | Default | Description |
|----------|---------|-------------|
| `CEOINTERVIEWS_API_KEY` | *(none)* | Your CEOInterviews API key |
| `CEOINTERVIEWS_API_BASE` | `https://ceointerviews.ai` | API base URL |
| `CEOINTERVIEWS_MCP_HOST` | `0.0.0.0` | Server bind address |
| `CEOINTERVIEWS_MCP_PORT` | `8001` | Server port |

---

## Links

- 🌐 [CEOInterviews.ai](https://ceointerviews.ai) — main site
- 🔑 [Get an API key](https://mcp.ceointerviews.ai) — MCP landing page
- 📚 [REST API docs](https://ceointerviews.ai/api_docs/) — full REST reference
- 📄 [OpenAPI spec](https://ceointerviews.ai/openapi.yaml) — machine-readable
- 🤖 [Model Context Protocol](https://modelcontextprotocol.io) — what's a MCP?

---

<div align="center">

**Built for the agents that have to be right.**

[Get an API key](https://mcp.ceointerviews.ai) · [Star on GitHub](https://github.com/codelucas/ceointerviews-mcp) · MIT licensed

</div>
