---
title: "Every approved listing in one array"
method: GET
path: "/api/index.json"
tags: ["directory"]
---

# Every approved listing in one array

`GET /api/index.json`

## Request

- Base URL: `https://mcp.tc`
- URL: `https://mcp.tc/api/index.json`
- Auth: none required

The data behind the site's search. Short keys keep it small (about 175 KB, 50 KB gzipped).

## Response `200`

The whole index.

- IndexEntry[]
  - `s` string, required: Slug: the listing is at /i/{s}.
  - `n` string, required: Name.
  - `v` string, required: Vendor, or an empty string.
  - `t` string, required: Tagline (English).
  - `c` string, required: Category slug, as in /c/{slug}.
  - `k` 'remote' | 'local', required
  - `a` 'none' | 'optional' | 'oauth' | 'api_key' | 'unknown', required
  - `g` string[], required: Tags.
  - `i` string: Icon path (/media/icons/…, WebP or PNG). Missing when none.
  - `f` 1: Present when the listing has the checkmark.

## Other responses

- `304`: Not Modified: If-None-Match matched the ETag.

---

[API](https://skmtc.dev/mcp/apis/mcp-tc-api.md) · [All operations](https://skmtc.dev/mcp/apis/mcp-tc-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mcp/apis/mcp-tc-api/revisions/5642f5c9f02e?raw)
