Skip to main content
GET
/
servers
List all servers
curl --request GET \
  --url https://api.smithery.ai/servers \
  --header 'Authorization: Bearer <token>'
{
  "servers": [
    {
      "id": "abc123",
      "qualifiedName": "smithery/hello-world",
      "namespace": "smithery-ai",
      "slug": "hello-world",
      "displayName": "Hello World",
      "description": "A simple hello world server",
      "iconUrl": "https://example.com/icon.png",
      "verified": true,
      "useCount": 42,
      "remote": true,
      "isDeployed": true,
      "createdAt": "2024-01-01T00:00:00.000Z",
      "homepage": "https://example.com",
      "bySmithery": false,
      "owner": "user_abc123",
      "score": 0.016
    }
  ],
  "pagination": {
    "currentPage": 1,
    "pageSize": 10,
    "totalPages": 5,
    "totalCount": 42
  }
}

Documentation Index

Fetch the complete documentation index at: https://smithery.ai/docs/llms.txt

Use this file to discover all available pages before exploring further.

Search Servers

The registry is a list of MCP servers that are available to use. You can search for MCP servers by name, description, or tags. To get started, all you need is a Smithery API Key. You can get one at smithery.ai/account/api-keys.

Authorizations

Authorization
string
header
required

Smithery API key as Bearer token

Query Parameters

q
string

Search query for full-text and semantic search across server names and descriptions.

page
integer

Page number (1-indexed).

Required range: 1 <= x <= 9007199254740991
pageSize
integer

Number of results per page (default 10, max 100).

Required range: 1 <= x <= 100
topK
integer

Maximum number of candidate results to consider from the search index before pagination.

Required range: 10 <= x <= 500
fields
string

Comma-separated list of fields to include in response

ids
string<uuid>[]

Filter by specific server IDs.

Pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
qualifiedName
string

Exact match on the server's qualified name (e.g. "smithery/hello-world"). Deprecated: use GET /servers/:namespace/:server instead.

namespace
string

Filter by the namespace that owns the server.

remote
enum<string>

Filter by remote status. Remote servers are accessed via URL; non-remote servers run locally via stdio.

Available options:
0,
1,
true,
false
isDeployed
enum<string>

Filter by deployment status. Deployed servers are hosted on Smithery infrastructure.

Available options:
0,
1,
true,
false
verified
enum<string>

Filter to only verified servers.

Available options:
0,
1,
true,
false
ownerId
string

Filter by the server owner's user ID.

repoOwner
string

Filter by GitHub repository owner from repository_url.

repoName
string

Filter by GitHub repository name from repository_url.

seed
integer

Random seed for deterministic pagination. When provided, results use a stable sort order that is consistent across pages for the same seed value.

Required range: -9007199254740991 <= x <= 9007199254740991

Response

Successful response

servers
object[]
required
pagination
object
required