# searchETFs

Search for ETFs by name, AUM, expense ratio, holdings, or country. Results are sorted by AUM descending and paginated 50 per page. At least one filter parameter is required. Available to Business, Professional, or annual subscribers only.

Agent View of the PolicyLayer registry record for `searchETFs`. HTML page: https://policylayer.com/tools/com-api-ninjas-mcp/searchetfs

## Facts

- Tool: `searchETFs`
- Server: API Ninjas (`https://mcp.api-ninjas.com/mcp`) — https://policylayer.com/tools/com-api-ninjas-mcp.md
- Homepage: https://github.com/https://mcp.api-ninjas.com/mcp
- Risk category: Read (Low risk)
- Registry record: grade D, identity unverified
- Server auth posture: open
- Server rate-limited: no
- Parameters: 8
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `name` | string | no | Fund name to search for (e.g. vanguard 500 matches Vanguard S&P 500 ETF). Case-insensitive. Each word must match the start of a word in the fund name, in any or |
| `offset` | integer | no | Number of results to skip for pagination. Page size is 50. |
| `country` | string | no | Filter by ISO listing-country code -- the exchange the ETF trades on (e.g. US, GB, JP), not the fund's domicile. |
| `max_aum` | number | no | Maximum assets under management in USD. |
| `min_aum` | number | no | Minimum assets under management in USD. |
| `holdings` | string | no | Comma-separated list of ticker symbols. Only ETFs that hold every listed ticker will be returned (AND match). Example: AAPL,MSFT. |
| `max_expense_ratio` | number | no | Maximum annual expense ratio as a percentage. |
| `min_expense_ratio` | number | no | Minimum annual expense ratio as a percentage (e.g. 0.1 for 0.1%). |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "searchETFs",
    "arguments": {}
  }
}
```

## Why searchETFs is rated Low

Even though searchETFs only reads data, uncontrolled read access leaks sensitive information and racks up API costs: an agent caught in a retry loop can make thousands of calls a minute without anyone noticing.

## Use case

AI agents call searchETFs to retrieve information from API Ninjas without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches API Ninjas:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "searchETFs": {}
  }
}
```

## Other tools on API Ninjas (243)

- `parseUserAgent` — Execute — https://policylayer.com/tools/com-api-ninjas-mcp/parseuseragent.md
- `airportDistance` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/airportdistance.md
- `airportSuggest` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/airportsuggest.md
- `analyzeSentiment` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/analyzesentiment.md
- `binLookup` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/binlookup.md
- `calculateCaloriesBurned` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/calculatecaloriesburned.md
- `calculateIncomeTax` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/calculateincometax.md
- `calculateMortgage` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/calculatemortgage.md
- `calculateSalesTax` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/calculatesalestax.md
- `checkDisposableEmail` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/checkdisposableemail.md
- `classifyNaics` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/classifynaics.md
- `closestAirport` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/closestairport.md
- `computeTextSimilarity` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/computetextsimilarity.md
- `detectFaces` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/detectfaces.md
- `detectLanguage` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/detectlanguage.md
- `detectObjects` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/detectobjects.md
- `encodeText` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/encodetext.md
- `extractTextFromImage` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/extracttextfromimage.md
- `filterProfanity` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/filterprofanity.md
- `findSwiftCodes` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/findswiftcodes.md
- `Get_a_list_of_planets` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/get-a-list-of-planets.md
- `Get_a_list_of_stars` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/get-a-list-of-stars.md
- `Get_ZIP_Code_details` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/get-zip-code-details.md
- `getAdvice` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/getadvice.md
- `getAircraft` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/getaircraft.md
- `getAirlines` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/getairlines.md
- `getAirports` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/getairports.md
- `getAirportsList` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/getairportslist.md
- `getAirQuality` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/getairquality.md
- `getAllCatNames` — Read — https://policylayer.com/tools/com-api-ninjas-mcp/getallcatnames.md
- …and 213 more: https://policylayer.com/tools/com-api-ninjas-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=com-api-ninjas-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/com-api-ninjas-mcp
