Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Xcelsior GPU Cloud

by aabiroversion 2.0.1i★ –iComputer or cloud
Registry nameio.github.aabiro/xcelsior

Install

Overview

Description from the maker (original English)

Rent GPUs, launch spot instances and run serverless inference on the Xcelsior marketplace.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Computer or cloud
  • Transport: stdio, Streamable HTTP
  • Category: Other
  • You need to fill in: XCELSIOR_ACCESS_TOKEN

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 3 of 3 passed
  • Runs on the maker’s server: what you ask it goes through their server.
  • You fill in yourself: XCELSIOR_ACCESS_TOKEN, XCELSIOR_API_URL

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • Runs in the cloudNothing to install; it connects over the internet
  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Works in Claude on the web, desktop and mobile:

  1. Open Settings → Connectors
  2. Press Add custom connector
  3. Paste the address below and press Add
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Add2https://…3
https://mcp.xcelsior.ca/mcp

Or run it on your computer

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "xcelsior": {
      "command": "npx",
      "args": [
        "-y",
        "@xcelsior-gpu/mcp"
      ],
      "env": {
        "XCELSIOR_ACCESS_TOKEN": "your-value",
        "XCELSIOR_API_URL": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add --transport http xcelsior https://mcp.xcelsior.ca/mcp

Or run it on your computer

claude mcp add xcelsior --env XCELSIOR_ACCESS_TOKEN=your-value --env XCELSIOR_API_URL=your-value -- npx -y @xcelsior-gpu/mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "xcelsior": {
      "url": "https://mcp.xcelsior.ca/mcp"
    }
  }
}

Or run it on your computer

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "xcelsior": {
      "command": "npx",
      "args": [
        "-y",
        "@xcelsior-gpu/mcp"
      ],
      "env": {
        "XCELSIOR_ACCESS_TOKEN": "your-value",
        "XCELSIOR_API_URL": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "xcelsior": {
      "type": "http",
      "url": "https://mcp.xcelsior.ca/mcp"
    }
  }
}

Or run it on your computer

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "xcelsior": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@xcelsior-gpu/mcp"
      ],
      "env": {
        "XCELSIOR_ACCESS_TOKEN": "your-value",
        "XCELSIOR_API_URL": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

ChatGPT connects only to servers on the internet:

  1. Open ChatGPT on the web → Settings → Connectors (Apps)
  2. Press Create or Add (some plans need Developer mode under Advanced first)
  3. Paste the address below, give it a name and save
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Create2https://…3
https://mcp.xcelsior.ca/mcp

Menu names can differ slightly by plan and over time.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • XCELSIOR_ACCESS_TOKEN secret required env
    OAuth access token from https://xcelsior.ca/dashboard/mcp
  • XCELSIOR_API_URL env
    Xcelsior API base URL

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

The server asks you to sign in before it lists its tools.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account aabiro, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • ✓ Pass

    Endpoint responds

    Responded in 550 ms (HTTP 401)

  • ✓ Pass

    Sign-in with OAuth

    Declares OAuth sign-in, so your AI app can take you to log in

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Compared with others in Otheri

  • More stars than 0% of the other 32568 servers in this category
  • Published to the registry more recently than 95% of the other 32568 servers in this category
  • Basic checks equal to or better than 100% of the other 32568 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Xcelsior GPU Cloud safe?

It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: XCELSIOR_ACCESS_TOKEN

Does it run on my computer or in the cloud?

Either way works: install it on your computer or connect to the cloud version.

Is it still maintained?

The GitHub repo last changed –, and the latest version (2.0.1) reached the registry yesterday.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, FlyDocs

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

by formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Runs in the cloud★ 211Updated yesterday
Install

FlyDocs

by flydocs.ai

Spec-driven development workflow: your agent works issues, sessions and the status lifecycle.

Runs on your computerUpdated today
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Xcelsior MCP Server

Hosted Model Context Protocol server for the Xcelsior GPU platform.

Requires Node.js ^20.20.0 or >=22.22.0 (the pinned PostHog MCP beta no longer supports Node 18).

Quick start (local)

cd mcp

npm ci XCELSIOR_MCP_API_URL=http://127.0.0.1:8000 npm run dev

Liveness: GET http://localhost:8770/health Readiness: GET http://localhost:8770/readyz MCP endpoint: http://localhost:8770/mcp

Compare source declarations with production
npx tsx scripts/check-live-surface.ts /path/to/private/token-file

The file contains a bearer token or an agent-key JSON response. The checker authenticates, lists tools, and compares names, annotations and output-schema presence with the customer registry in this checkout. It never invokes a tool handler or prints the token. This gives monorepo-aware coverage when a source scanner cannot discover the registrations; it does not prove handler behavior.

Connecting

The canonical connector URL is `https://mcp.xcelsior.ca/mcp`.

Default path — OAuth consent (what humans use)

Paste that URL into Claude, ChatGPT, Grok, Copilot Studio, Cursor, or VS Code and press connect. The client discovers everything it needs on its own:

  1. It calls /mcp with no credentials and gets 401 plus WWW-Authenticate: Bearer realm="xcelsior", resource_metadata="…".
  2. It fetches /.well-known/oauth-protected-resource, which names the authorization server and the exact resource identifier.
  3. It identifies itself — by CIMD (preferred: client_id is an HTTPS URL serving the client's own metadata), by RFC 7591 dynamic registration at /oauth/register, or with the pre-provisioned public client xcelsior-connector.
  4. You sign in and approve the requested scopes on Xcelsior's own consent screen. Approval is remembered per client, per scope set, per resource, and is revocable in Settings → AI Agents.
  5. It exchanges the code with S256 PKCE at /oauth/token (application/x-www-form-urlencoded) for a ~1h access token bound to https://mcp.xcelsior.ca/mcp, plus a 30-day refresh token.

No client secret is involved, and nothing has to be pasted by hand.

Automation path — client_credentials

For CI, scripts, and headless agents where no human is present to consent. Create a machine client in Dashboard → Settings → Connect AI Agents, then:

curl -s -X POST https://xcelsior.ca/oauth/token \

-H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=client_credentials' \ -d 'resource=https://mcp.xcelsior.ca/mcp' \ -d "client_id=$MCP_CLIENT_ID" -d "client_secret=$MCP_CLIENT_SECRET"

{

"mcpServers": { "xcelsior": { "url": "https://mcp.xcelsior.ca/mcp", "headers": { "Authorization": "Bearer YOUR_ACCESS_TOKEN" } } } }

client_credentials is fully supported and is not going away — it is simply not the front door for a person connecting an assistant.

Resource identifier

https://mcp.xcelsior.ca/mcp — the exact URL a user pastes, path included. Protected-resource metadata, the resource parameter on authorization and token requests, and the aud claim all carry that one value. Tokens issued before the migration carry the bare origin https://mcp.xcelsior.ca and remain valid until 2026-11-30, after which they are rejected like any other wrong-audience token.

Trust surfaces

One codebase, one image, two exposed surfaces (XCELSIOR_MCP_TOOL_PROFILE):

ProfileWhereTools
customer (default)https://mcp.xcelsior.ca/mcp, submitted to directoriesTenant workflows only
operatorSeparate unlisted hostAdds platform-global host and control-plane tools

Operator tools are not registered at all under the customer profile, so they cannot appear in tools/list and cannot be called by name. A token without operator scopes never enumerates them even on the operator host.

Environment

VariableDefaultDescription
XCELSIOR_MCP_API_URLhttp://127.0.0.1:8000Upstream FastAPI base URL
XCELSIOR_MCP_RESOURCE_AUDIENCEhttps://mcp.xcelsior.ca/mcpCanonical RFC 8707 token audience
XCELSIOR_MCP_LEGACY_RESOURCE_AUDIENCEorigin of the abovePre-migration audience, accepted until sunset
XCELSIOR_MCP_LEGACY_AUDIENCE_SUNSET2026-11-30T00:00:00ZWhen the legacy audience stops being accepted
XCELSIOR_MCP_RESOURCE_METADATA_URLderivedWhat the 401 challenge points at
XCELSIOR_MCP_TOOL_PROFILEcustomercustomer or operator
XCELSIOR_MCP_COMPANY_KNOWLEDGE0Register ChatGPT company-knowledge search/fetch
XCELSIOR_MCP_POSTHOG_PROJECT_API_KEYbrowser project key, then disabledPostHog phc_ project key for MCP analytics
XCELSIOR_MCP_POSTHOG_HOSTbrowser host or https://us.i.posthog.comPostHog ingestion host
XCELSIOR_DOCS_URLhttps://docs.xcelsior.caDocumentation corpus for company knowledge
MCP_HOST0.0.0.0Bind address
MCP_PORT8770Listen port
MCP_PATH/mcpHTTP path
MCP_RATE_LIMIT_PER_MIN60Per-token tool call budget

MCP analytics

@posthog/mcp is pinned to 0.11.4 because its pre-1.0 API may change. When a PostHog project key is configured, the server instruments both hosted HTTP and STDIO MCP traffic and emits the standard $mcp_* lifecycle/tool events. The authenticated Xcelsior user_id is used as distinct_id (with OAuth subject and tenant id as machine-principal fallbacks), so calls remain grouped across the hosted service's stateless per-request server instances.

Analytics is metadata-only: Xcelsior removes tool arguments, tool results, and exception messages before send, disables GeoIP and exception fan-out, and does not inject PostHog's context or conversation_id arguments into the reviewed tool schemas. The Streamable HTTP transport uses JSON responses so the SDK can carry its signed Mcp-Session-Id token across replicas. The shared posthog-node client is flushed during graceful shutdown.

If MCP analytics identifies users, production must also set XCELSIOR_POSTHOG_PERSONAL_API_KEY and XCELSIOR_POSTHOG_PROJECT_ID for the privacy-deletion worker. Startup validation rejects identification without those deletion credentials.

Tools (v2)

  • Discovery: list_available_gpus, get_spot_prices, get_pricing_reference, search_marketplace, list_tiers
  • Compute: list_instances, get_instance, get_instance_logs, create_instance, cancel_instance, terminate_instance
  • Billing: get_wallet_balance, estimate_job_cost, list_invoices
  • Guardrails: should_i_run_this (estimate + wallet + optional max_hourly_cad)
  • Workflows: run_training_job, schedule_under_budget
  • Serverless: list_serverless_endpoints, create_serverless_endpoint, run_serverless_job, get_serverless_job_status
  • Monitoring: watch_instance (poll status + telemetry + logs)
  • Diagnostics: explain_instance_placement, simulate_instance_placement, get_instance_timeline, get_active_lease, get_mcp_action_status
  • Operations (tenant): retry_instance, reconcile_instance

Operator profile only: get_scheduler_health, get_host_capacity, list_reconciliation_findings, drain_host, undrain_host, evict_host_workloads, retry_agent_command.

Company knowledge (optional, off by default): search and fetch, with OpenAI's exact schemas, over the documentation site, llms.txt, the pricing table, and live marketplace listings. Every result carries an absolute, human-openable URL and an internal id. Enable with XCELSIOR_MCP_COMPANY_KNOWLEDGE=1; it is deliberately not on for the base directory submission.

Resources: xcelsior://docs/llms, xcelsior://pricing/reference Prompts: cheapest-gpu-now, ca-fine-tune, serverless-inference

create_instance and create_serverless_endpoint always create a server-bound action plan first. confirm:true expresses intent but never replaces approval; execute with the returned plan_id after standing-policy or human approval. A confirmed call without a plan safely prepares a plan and returns approval_required. Host draining never evicts workloads; eviction has its own scope and action plan.

Stdio package (v2)

npx @xcelsior-gpu/mcp

Requires XCELSIOR_ACCESS_TOKEN. See mcp-cli/README.md.

Production deploy

Production promotion is blue/green across ports 8770/8771. Deployment runs readiness, bearer-authenticated protocol initialize, and tools/list against the standby before switching Nginx; a failure leaves the previous MCP serving.

Staging smoke

MCP_CLIENT_ID=... MCP_CLIENT_SECRET=... python3 scripts/mcp_smoke.py

Test with MCP Inspector

npx @modelcontextprotocol/inspector@latest

Point at http://localhost:8770/mcp with your MCP-audience Bearer token.

Ask PopNx