Skip to main content
GET
/
servers
JavaScript
import Smithery from '@smithery/api';

const client = new Smithery({
  apiKey: process.env['SMITHERY_API_KEY'], // This is the default and can be omitted
});

// Automatically fetches more pages as needed.
for await (const serverListResponse of client.servers.list()) {
  console.log(serverListResponse.id);
}
{
  "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://smithery.ai/server/smithery/hello-world",
      "owner": "user_abc123"
    }
  ],
  "pagination": {
    "currentPage": 1,
    "pageSize": 10,
    "totalPages": 5,
    "totalCount": 42
  }
}

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.

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 connected GitHub repository owner.

repoName
string

Filter by connected GitHub repository name.

Response

Successful response

servers
object[]
required
pagination
object
required