FundedIQ
New: API & MCP

Funding data your agent can query without a scraper.

60,745 funded companies and 83,046 funding rounds covering rounds from 2020-02-02 to 2026-08-21, refreshed weekly. Reachable from your own code over a REST API, or straight from Claude, Cursor or any MCP client with no code at all. Same filters, same fields, same meter.

Search costs one credit

A call returns up to 100 companies and costs the same as a call that returns one. A search that matches nothing costs nothing at all.

Unlock costs one credit a company

Investors, every round, founders with emails and LinkedIn, up to 100 companies per call. Already unlocked this month? Free.

One balance, everywhere

2,000 credits a month on Pro, shared across the app, exports, the API and the MCP server. Nothing is metered twice.

Three steps to a first call

  1. Step 1

    Create a key

    In your account, under API keys. It is shown once, starts with fiq_sk_, and you can revoke it at any time. A revoked key stops working on its very next request.

  2. Step 2

    Make a call

    Every US company that raised since 1 August and has a founder contact on file, a hundred at a time, for one credit.

    Terminal
    curl -G https://fundediq.co/api/v1/companies \
      -H "Authorization: Bearer $FUNDEDIQ_API_KEY" \
      --data-urlencode "countries=United States" \
      --data-urlencode "dateFrom=2026-08-01" \
      --data-urlencode "hasContacts=true" \
      --data-urlencode "pageSize=100"
  3. Step 3

    Or skip the code and connect an agent

    The MCP server is hosted, so there is nothing to install and no OAuth flow to complete. One command in Claude Code, and four tools appear.

    Terminal
    claude mcp add --transport http fundediq https://fundediq.co/api/mcp \
      --header "Authorization: Bearer fiq_sk_YOUR_KEY"

    Using Cursor, VS Code or Claude Desktop instead? Config for each.

Hand the whole thing to your agent

If your agent cannot speak MCP, it can still read. This is the complete reference: endpoints, parameters, response fields, error codes and the credit model, written for a model rather than a person. Copy it into a system prompt, or point the agent at /llms-full.txt and let it fetch the same text itself.

Instructions for your agent
# FundedIQ API and MCP server

FundedIQ is a database of recently funded startups: the company, its funding rounds, its investors, and its founders' contact details. 60,745 funded companies and 83,046 funding rounds covering rounds from 2020-02-02 to 2026-08-21, refreshed weekly.

## Getting a key

An API key needs a Pro subscription. Create one at https://fundediq.co/account/#api. The key is shown once and starts with `fiq_sk_`. Send it as `Authorization: Bearer <key>` on every request; it is never accepted in a query string.

## Credits

Pro includes 2,000 credits a month. They do not roll over.

- `GET /account` and `GET /filters`: free.
- `GET|POST /companies` (search): 1 credit per call, regardless of how many rows come back. A search that matches nothing is free. Ask for a large `pageSize` (up to 100) rather than paging one row at a time.
- `POST /companies/unlock`: 1 credit per company, and 0 for a company already unlocked in the current billing period, including one unlocked in the FundedIQ web app.

## Recommended workflow

1. `GET /filters` (free) for the exact filter spellings.
2. `GET /companies` with those filters to find candidates.
3. Read `investorCount` and `contactCount` on each result to decide which records are worth unlocking.
4. `POST /companies/unlock` with up to 100 domains at once.

## Conventions

- Base URL: `https://fundediq.co/api/v1`
- All amounts are whole US dollars. All dates are ISO `YYYY-MM-DD`.
- `domain` is the company's bare hostname and is the stable identifier across every endpoint.
- List filters are expressed by REPEATING the parameter (`?industries=A&industries=B`). Values are never comma-split, because many industry and country values contain commas.
- Errors are `{ "error": { "code": "...", "message": "..." } }`. Branch on `code`, show `message`.
- Rate limit: 60 requests per minute per key. A 429 carries `Retry-After`.
- Every response carries `X-Credits-Charged`, `X-Credits-Balance`, `X-RateLimit-Limit` and `X-RateLimit-Remaining`.

## Endpoints

### GET /account

Plan, subscription status, remaining credits, when the credit period resets, and what each call costs. Call it before a large batch instead of discovering the balance by running out.

Cost: Free

```bash
curl https://fundediq.co/api/v1/account \
  -H "Authorization: Bearer $FUNDEDIQ_API_KEY"
```

Response:

```json
{
  "data": {
    "email": "you@example.com",
    "plan": "pro",
    "status": "active",
    "onTrial": false,
    "credits": {
      "total": 2000,
      "used": 61,
      "remaining": 1939
    },
    "periodEnd": "2026-09-17T00:00:00+00:00",
    "trialEnd": null,
    "endsAt": null,
    "rates": {
      "search": 1,
      "unlockPerCompany": 1,
      "filters": 0,
      "account": 0
    }
  }
}
```

### GET /filters

Every value the industry, country, city, round-type and employee-band filters accept, with the number of companies behind each. Filters match exact strings, so read them here rather than guessing: a guessed spelling returns an empty result that looks exactly like a real one.

Cost: Free

```bash
curl https://fundediq.co/api/v1/filters \
  -H "Authorization: Bearer $FUNDEDIQ_API_KEY"
```

Response:

```json
{
  "data": {
    "industries": [
      {
        "value": "Artificial Intelligence, Machine Learning",
        "companyCount": 4812
      },
      {
        "value": "SaaS",
        "companyCount": 3990
      }
    ],
    "countries": [
      {
        "value": "United States",
        "companyCount": 31204
      }
    ],
    "cities": [
      {
        "value": "San Francisco",
        "companyCount": 4771
      }
    ],
    "rounds": [
      {
        "value": "Seed",
        "companyCount": 18033
      }
    ],
    "sizes": [
      {
        "value": "11-50",
        "companyCount": 21447
      }
    ]
  }
}
```

### GET /companies

Filter the database and get company profiles back, with the latest round and counts of how many investors and founder contacts each company has. Those counts are what let an agent decide what is worth unlocking before it spends anything.

Cost: 1 credit per call, whatever the page size. A search that matches nothing is free.

Parameters:

- `q` (string): Keyword search over company name and description.
- `industries` (string[]): Exact industry values. Repeat the parameter for several. Values may themselves contain commas, so they are never comma-split.
- `countries` (string[]): Exact country values.
- `cities` (string[]): Exact city values.
- `rounds` (string[]): Latest round type.
- `sizes` (string[]): Employee band.
- `dateFrom` (date): Earliest latest-round date (YYYY-MM-DD).
- `dateTo` (date): Latest latest-round date (YYYY-MM-DD).
- `amountMin` (integer): Minimum total raised, in whole US dollars.
- `amountMax` (integer): Maximum total raised, in whole US dollars.
- `foundedFrom` (integer): Founded in this year or later.
- `hasContacts` (boolean): Only companies with at least one founder contact on file.
- `hasInvestors` (boolean): Only companies with at least one named investor on file.
- `sort` (enum): recent (default), oldest, amount_desc, total_desc, company_asc.
- `page` (integer): 1-based page number.
- `pageSize` (integer): Rows per page, up to 100. Default 50. A call costs the same at 1 row as at 100, so ask for more rows rather than more pages.
- `includeFacets` (boolean): Also return value counts per filter dimension.

```bash
curl -G https://fundediq.co/api/v1/companies \
  -H "Authorization: Bearer $FUNDEDIQ_API_KEY" \
  --data-urlencode "countries=United States" \
  --data-urlencode "dateFrom=2026-08-01" \
  --data-urlencode "hasContacts=true" \
  --data-urlencode "pageSize=100"
```

Response:

```json
{
  "data": [
    {
      "domain": "northwind.io",
      "company": "Northwind",
      "description": "Freight routing for mid-market shippers.",
      "industry": "Logistics",
      "country": "United States",
      "state": "California",
      "city": "San Francisco",
      "employeeRange": "11-50",
      "foundedYear": 2021,
      "totalRaisedUsd": 18500000,
      "roundCount": 2,
      "latestRound": {
        "date": "2026-08-17",
        "type": "Series A",
        "amountUsd": 14000000
      },
      "investorCount": 3,
      "contactCount": 2,
      "url": "https://fundediq.co/northwind-northwind-io-funding/",
      "locked": [
        "investors",
        "contacts",
        "rounds",
        "linkedin",
        "monthlyVisits",
        "jobOpenings",
        "itSpendUsd"
      ]
    }
  ],
  "meta": {
    "total": 1284,
    "page": 1,
    "pageSize": 100,
    "returned": 100,
    "hasMore": true,
    "credits": {
      "charged": 1,
      "balance": 1938
    }
  }
}
```

### POST /companies/unlock

Investor names, every funding round with its announcement URL, founders and executives with emails and LinkedIn, company LinkedIn, monthly traffic, open roles and IT spend, for up to 100 companies in one call. A company already unlocked in the current billing period is free, including one unlocked in the web app.

Cost: 1 credit per company. 0 for a company already unlocked this period.

Parameters:

- `domains` (string[]): Up to 100 company domains, as returned in the `domain` field of a search result. A full URL is accepted and normalised to its host.

```bash
curl -X POST https://fundediq.co/api/v1/companies/unlock \
  -H "Authorization: Bearer $FUNDEDIQ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domains": ["northwind.io"]}'
```

Response:

```json
{
  "data": [
    {
      "domain": "northwind.io",
      "company": "Northwind",
      "description": "Freight routing for mid-market shippers.",
      "industry": "Logistics",
      "country": "United States",
      "state": "California",
      "city": "San Francisco",
      "employeeRange": "11-50",
      "foundedYear": 2021,
      "totalRaisedUsd": 18500000,
      "roundCount": 2,
      "latestRound": {
        "date": "2026-08-17",
        "type": "Series A",
        "amountUsd": 14000000
      },
      "investorCount": 3,
      "contactCount": 2,
      "url": "https://fundediq.co/northwind-northwind-io-funding/",
      "investors": [
        "Union Square Ventures",
        "Bessemer",
        "Craft"
      ],
      "rounds": [
        {
          "date": "2026-08-17",
          "type": "Series A",
          "amountUsd": 14000000,
          "announcementUrl": "https://www.crunchbase.com/funding_round/example"
        },
        {
          "date": "2024-03-05",
          "type": "Seed",
          "amountUsd": 4500000,
          "announcementUrl": null
        }
      ],
      "contacts": [
        {
          "name": "Dana",
          "title": "Co-founder & CEO",
          "email": "dana@northwind.io",
          "emailConfidence": "verified",
          "linkedin": "https://www.linkedin.com/in/example"
        }
      ],
      "linkedin": "https://www.linkedin.com/company/example",
      "monthlyVisits": 41200,
      "monthlyVisitsGrowthPct": 12.4,
      "jobOpenings": 6,
      "itSpendUsd": null
    }
  ],
  "meta": {
    "requested": 1,
    "unlocked": 1,
    "notFound": [],
    "credits": {
      "charged": 1,
      "alreadyHeld": 0,
      "balance": 1937
    }
  }
}
```

## Errors

- `missing_api_key` (401): No `Authorization: Bearer` header (and no `X-API-Key`). Send the key as a header. It is never read from the query string, which would put a credential in CDN logs and referrers.
- `invalid_api_key` (401): The key does not exist, or has been revoked. Create a new one in your account. Revoked and unknown keys are deliberately indistinguishable.
- `pro_required` (403): The key belongs to an Alerts account. The API and MCP server are Pro features.
- `no_subscription` (403): The subscription behind this key has lapsed. Restart it from the account screen; the same key resumes working.
- `insufficient_credits` (402): The call costs more credits than the balance. Nothing was charged. The body carries `needed` and `balance`. Credits reset monthly; `GET /account` says when.
- `not_found` (404): None of the domains sent to `/companies/unlock` are in the dataset. Nothing was charged. Use the `domain` value from a search result rather than one you constructed.
- `too_many_domains` (400): More than 100 domains in one unlock call. Split the batch. Nothing was charged.
- `rate_limited` (429): More than 60 requests in a minute on one key. Wait the number of seconds in the `Retry-After` header. The limit is per key, so a second key does not raise it.

## MCP server

`https://fundediq.co/api/mcp`. Streamable HTTP, stateless, no OAuth. Authenticate with the same `Authorization: Bearer fiq_sk_…` header. It exposes four tools that are the endpoints above, metered identically: `search_funded_startups`, `unlock_companies`, `list_filter_values`, `get_account`.

### Claude Code

Run this in your terminal, in any project.

```bash
claude mcp add --transport http fundediq https://fundediq.co/api/mcp \
  --header "Authorization: Bearer fiq_sk_YOUR_KEY"
```

### Claude Desktop

claude_desktop_config.json (Settings → Developer → Edit Config).

```json
{
  "mcpServers": {
    "fundediq": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://fundediq.co/api/mcp",
        "--header",
        "Authorization: Bearer fiq_sk_YOUR_KEY"
      ]
    }
  }
}
```

### Cursor

~/.cursor/mcp.json for every project, or .cursor/mcp.json for one.

```json
{
  "mcpServers": {
    "fundediq": {
      "url": "https://fundediq.co/api/mcp",
      "headers": {
        "Authorization": "Bearer fiq_sk_YOUR_KEY"
      }
    }
  }
}
```

### VS Code (Copilot)

.vscode/mcp.json in your workspace.

```json
{
  "servers": {
    "fundediq": {
      "type": "http",
      "url": "https://fundediq.co/api/mcp",
      "headers": {
        "Authorization": "Bearer fiq_sk_YOUR_KEY"
      }
    }
  }
}
```

### Any other MCP client

Streamable HTTP, stateless, static bearer token. No OAuth flow to complete.

```json
{
  "name": "fundediq",
  "transport": "http",
  "url": "https://fundediq.co/api/mcp",
  "headers": {
    "Authorization": "Bearer fiq_sk_YOUR_KEY"
  }
}
```

Machine-readable schema: /openapi.json (OpenAPI 3.1) · Site index for crawlers: /llms.txt

What you can call

Endpoint What it does Cost
GET /account Account and credit balance Free
GET /filters Filter values Free
GET /companies Search companies 1 credit per call, whatever the page size. A search that matches nothing is free.
POST /companies/unlock Unlock full records 1 credit per company. 0 for a company already unlocked this period.

Full parameters and responses in the REST API reference.

Questions

What does a credit buy?

One search call, or one company unlocked, or one row exported. The three cost the same, deliberately, so the meter needs no explaining. Pro includes 2,000 credits a month. Reading the filter vocabulary and checking your own balance are free, and a search that matches nothing is free.

Do the API and the app share credits?

Yes, and they share unlocks too. A company you unlocked in the web app this month costs nothing to fetch over the API, and vice versa. There is one balance and one definition of what a credit buys.

Is the MCP server different data from the REST API?

No. The MCP tools call the same code the REST endpoints call, with the same filters, the same field names and the same meter. An agent that prototypes over MCP and ships over HTTP will not find its filters mean something different in production.

What are the rate limits?

60 requests per minute per key. A 429 carries a Retry-After header. The limit is per key, so a second key does not raise it. If you need more, the honest answer is to ask for more rows per call: one search returns up to 100 companies for one credit, and one unlock covers up to 100 companies.

Which plan do I need?

Pro, at $99 a month or $699 a year, with a 14-day trial. The API and MCP server work during the trial, capped by the trial's credit allowance, because an API you cannot call is an API you cannot evaluate.

Can I resell or redistribute the data?

No. Access is for your own prospecting, research and internal tooling. The credit meter exists so the whole dataset cannot be bulk-extracted, and the terms follow the same line.

Point your agent at the funding data

Pro is $99 a month with 2,000 credits, a 14-day trial, and the API and MCP server switched on from the first day.

Start your trial