---
title: "List MCP servers"
method: GET
path: "/api/v1/org-mcp-servers"
tags: ["authed"]
---

# List MCP servers

`GET /api/v1/org-mcp-servers`

## Request

- Base URL: `https://api.teaflask.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.teaflask.com/api/v1/org-mcp-servers`
- Auth: none declared

The organization's MCP servers, newest first. A full page means more
may exist.

## Query parameters

- `include_removed` boolean: Include removed servers too.
- `before_created_at` string, date-time, nullable: With before_id: the last row of the previous page's created_at, to read the next page.
- `before_id` string, uuid, nullable: With the sort cursor: the last row of the previous page's id.
- `limit` integer: The most servers to return.

## Response `200`

Successful Response

- OrgMcpServersPage
  - `available` boolean, required: Always true: MCP servers are available to every organization.
  - `servers` OrgMcpServerResponse[], required: The page of servers.
    - `id` string, uuid, required: The server's id.
    - `handle` string, required: The server's short name in agent tool names; it never changes.
    - `display_name` string, required: The server's name in the dashboard.
    - `host` string, required: The host name of the server's address.
    - `state` 'active' | 'needs_reconnect' | 'failed', required
    - `last_error` string, nullable, required: Why the server last failed to connect, or null.
    - `sign_in` 'oauth' | 'token' | 'none', required
    - `signed_in_by` OrgMcpServerSignedInBy, required
      - `id` string, uuid, required: The person's id.
      - `name` string, required: The person's name, or their email without one.
    - `header_names` string[], required: The names of the headers carrying its access token.
    - `tool_count` integer, required: How many tools the server lists now.
    - `new_tool_count` integer, required: How many of those arrived after the server was added.
    - `skipped_tools` OrgMcpServerSkippedTool[], required: Tools the server lists that agents can't use, and why.
      - `name` string, required: The tool's name on the server.
      - `reason` string, required: Why agents can't use this tool.
    - `first_listed_at` string, date-time, required: When the server was added.
    - `tools_refreshed_at` string, date-time, required: When its tool list was last read.
    - `removed_at` string, date-time, nullable, required: When the server was removed, or null while it is live.
    - `created_at` string, date-time, required: When the server was created.
    - `version` integer, required: Pass back as expected_version when renaming the server.

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not found
- `405`: Method not allowed
- `422`: Validation error
- `500`: Internal server error

---

[API](https://skmtc.dev/teaflask/apis/teaflask-api.md) - [All operations](https://skmtc.dev/teaflask/apis/teaflask-api/llms.txt) - [OpenAPI document](https://skmtc.dev/teaflask/apis/teaflask-api/revisions/d23e9286b847?raw)
