---
title: "Get External MCP Server"
method: POST
path: "/external-mcp-server/{id}/get-item"
tags: ["External MCP Server"]
---

# Get External MCP Server

`POST /external-mcp-server/{id}/get-item`

## Request

- Base URL: `https://oneuptime.com/api`
- URL: `https://oneuptime.com/api/external-mcp-server/{id}/get-item`
- Auth: API key in header `APIKey`
- TypeScript: <https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/docs/external-mcp-server/:id/get-item/post.ts> (a function with typed inputs; its response is checked against the schema)

Endpoint to retrieve a single External MCP Server by ID

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `select` ExternalMcpServerSelectSchema: Select schema for ExternalMcpServer. Set fields to true to include them in the response.
    - `_id` boolean
    - `createdAt` boolean
    - `updatedAt` boolean
    - `deletedAt` boolean
    - `projectId` boolean
    - `name` boolean
    - `description` boolean
    - `url` boolean
    - `authType` boolean
    - `headerNames` boolean
    - `oauthTokenUrl` boolean
    - `oauthClientId` boolean
    - `oauthScope` boolean
    - `oauthAudience` boolean
    - `isEnabled` boolean
    - `transport` boolean
    - `serverName` boolean
    - `serverVersion` boolean
    - `protocolVersion` boolean
    - `tools` boolean
    - `lastCheckedAt` boolean
    - `lastConnectedAt` boolean
    - `lastError` boolean
    - `createdByUserId` boolean

## Response `200`

Successful response

- object
  - `data` ExternalMcpServer
    - `_id` string, uuid: ID of this object. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `createdAt` object: Date and Time when the object was created. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `updatedAt` object: Date and Time when the object was updated. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `deletedAt` object: Date and Time when the object was deleted. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `version` number: Object version
    - `projectId` string, uuid, required: ID of the project this MCP server belongs to. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `name` string, required: A name for the server, such as AWS or Azure. OneUptime AI and the people reading what it did see the server by this name. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `description` string: What the server is for, such as 'Our production AWS account, read-only'. OneUptime AI reads it to choose the right server. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `url` string, required: The server's MCP address, such as https://mcp.example.com/mcp. Streamable HTTP and SSE servers both work: OneUptime finds out which when it connects. Never put a token in it: use Authentication. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `authType` 'None' | 'BearerToken' | 'Headers' | 'OAuthClientCredentials', required: How OneUptime signs in to the server: None, BearerToken (an API token), Headers (headers of the server's own, such as X-API-Key) or OAuthClientCredentials (a token from an OAuth token URL, with a client ID and secret). Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `headerNames` string: The names of the headers the server signs in with, without their values. Worked out from the headers on every read. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `oauthTokenUrl` string: For OAuthClientCredentials: the OAuth token endpoint, such as https://login.microsoftonline.com/<tenant>/oauth2/v2.0/token. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `oauthClientId` string: For OAuthClientCredentials: the OAuth client ID. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `oauthScope` string: For OAuthClientCredentials: the scope to ask for, such as api://<application-id>/.default. Leave empty when the token URL needs none. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `oauthAudience` string: For OAuthClientCredentials: the audience to ask for, when the token URL needs one (Auth0 does). Leave empty otherwise. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `isEnabled` boolean, required: Whether OneUptime AI may use this server. A server that is off is never used, whatever a rule names. Permissions - Create: [Project Owner, Project Admin], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [Project Owner, Project Admin]
    - `transport` 'StreamableHttp' | 'Sse': How the server talks, as OneUptime found out when it last connected: StreamableHttp or Sse. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `serverName` string: What the server called itself when OneUptime last connected. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `serverVersion` string: The version the server gave when OneUptime last connected, if any. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `protocolVersion` string: The MCP protocol version the server agreed on when OneUptime last connected. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `tools` object: The tools the server offered when OneUptime last connected: each one's name, description and whether the server marks it read-only. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `lastCheckedAt` object: When OneUptime last tried to connect to the server. Empty means never. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `lastConnectedAt` object: When OneUptime last connected to the server and read its tools. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `lastError` string: Why the last connection failed, with secrets removed. Cleared by the next connection that works. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]
    - `createdByUserId` string, uuid: ID of the user who added this MCP server. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer], Update: [No access - you don't have permission for this operation]

## Other responses

- `400`: Bad request. This response indicates that the request was malformed or contained invalid data.
- `401`: Unauthorized. This response indicates that the request requires user authentication.
- `402`: Payment Required. This response indicates that the request requires payment or a valid subscription.
- `403`: Forbidden. This response indicates that the server understood the request, but refuses to authorize it.
- `404`: Not found. The record does not exist, belongs to another project, or is one you may not read - the same answer for each.
- `405`: Project not found. This response indicates that the requested project does not exist or is not accessible.
- `408`: Request Timeout. This response indicates that the server timed out waiting for the request.
- `415`: Unable to reach server. This response indicates that the server is currently unreachable or down.
- `422`: Not authorized. This response indicates that the user does not have permission to access the requested resource.
- `500`: Internal Server Error. This response indicates that the server encountered an unexpected condition that prevented it from fulfilling the request.

---

[API](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification.md) - [All operations](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/llms.txt) - [OpenAPI document](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/revisions/ba3307d00304?raw)
