← library
skill🤖 AI agentsv2 · updated 2026-09-10

Uplift Connect

Connects any agent or client workspace to the uplift.page prompt platform — MCP server setup, workspace keys, and the plain-HTTP fallback. Use when setting up uplift.page access, onboarding a client workspace, wiring the uplift MCP server into an agent, or when a workspace tool reports a missing or invalid key.

Run it as a prompt

Paste this into any AI agent, or fetch it: curl -s https://uplift.page/api/v1/prompts/uplift-connect/raw

prompt.md
# Uplift Connect

uplift.page serves tech-stack recommendations and clean, citation-backed mini prompts
("skills") over REST and MCP. Public reads need no auth. Each tenant workspace manages a
private skill library, selected entirely by its own key — one MCP URL serves every tenant.

## Endpoints

- MCP (Streamable HTTP): `https://uplift.page/mcp`
- REST: `https://uplift.page/api/v1/…` (OpenAPI at `/v1/openapi.json`)
- Fallback host while DNS or the site is unavailable:
  `https://oeksfqhupxhnnlrmqivs.supabase.co/functions/v1/uplift-mcp` (and `…/uplift-api`)

## Connect the MCP server

Register a Streamable HTTP MCP server named `uplift` at `https://uplift.page/mcp` in your
agent's MCP configuration. The JSON shape most agents accept:

```json
{
  "mcpServers": {
    "uplift": {
      "type": "http",
      "url": "https://uplift.page/mcp",
      "headers": { "x-uplift-key": "${UPLIFT_KEY}" }
    }
  }
}
```

- Without a key, the whole public library works: `recommend_stack`, `search_prompts`,
  `get_prompt`, `list_categories`, `convert_prompt`, `send_feedback`, plus keyless
  `list_skills`, `pull_skill` (full SKILL.md), and `evaluate_skill` on public skills.
- With a workspace key, the workspace's own library unlocks too: `workspace_info`,
  `save_skill`, `remove_skill`, and the private side of list/pull/evaluate.

## Workspace keys (multi-tenant)

- Convention: export `UPLIFT_KEY` in the environment, one value per client or project.
- Onboarding a client: create a key in THEIR workspace, set it as their `UPLIFT_KEY`,
  register the same MCP server. They get the same tools against their own library only.
- Never commit a key, never reuse one client's key in another client's project, and
  rotate a leaked key immediately (revoke in the dashboard, mint a new one).

## Rules

1. Public reads are keyless by design — never attach a workspace key to a machine that
   only needs the public library.
2. Library writes (`save_skill`, `remove_skill`) need a paid workspace plan; the error
   message names the fix when the plan is too low.
3. When a workspace tool reports a locked or invalid key, check the header name
   (`x-uplift-key`, or `Authorization: Bearer upk_…`) and whether the key was revoked
   before debugging anything deeper.

Install it as a skill

Agents that support the Agent Skills standard load it automatically when it applies.

download
curl -fsSL https://uplift.page/p/uplift-connect/SKILL.md --create-dirs -o .agents/skills/uplift-connect/SKILL.md
or from any MCP client
MCP server: https://uplift.page/mcp
Tool: pull_skill  {"slug": "uplift-connect"}

The full skill

uplift.page serves tech-stack recommendations and clean, citation-backed mini prompts ("skills") over REST and MCP. Public reads need no auth. Each tenant workspace manages a private skill library, selected entirely by its own key — one MCP URL serves every tenant.

Endpoints

  • MCP (Streamable HTTP): https://uplift.page/mcp
  • REST: https://uplift.page/api/v1/… (OpenAPI at /v1/openapi.json)
  • Fallback host while DNS or the site is unavailable: https://oeksfqhupxhnnlrmqivs.supabase.co/functions/v1/uplift-mcp (and …/uplift-api)

Connect the MCP server

Register a Streamable HTTP MCP server named uplift at https://uplift.page/mcp in your agent's MCP configuration. The JSON shape most agents accept:

{
  "mcpServers": {
    "uplift": {
      "type": "http",
      "url": "https://uplift.page/mcp",
      "headers": { "x-uplift-key": "${UPLIFT_KEY}" }
    }
  }
}
  • Without a key, the whole public library works: recommend_stack, search_prompts, get_prompt, list_categories, convert_prompt, send_feedback, plus keyless list_skills, pull_skill (full SKILL.md), and evaluate_skill on public skills.
  • With a workspace key, the workspace's own library unlocks too: workspace_info, save_skill, remove_skill, and the private side of list/pull/evaluate.

Workspace keys (multi-tenant)

  • A key (upk_…) belongs to exactly one workspace, and the server derives the tenant from the key — nothing in a tool argument can select another tenant. Keys are created and revoked at https://dashboard.uplift.page → Telemetry keys.
  • Convention: export UPLIFT_KEY in the environment, one value per client or project.
  • Onboarding a client: create a key in THEIR workspace, set it as their UPLIFT_KEY, register the same MCP server. They get the same tools against their own library only.
  • Never commit a key, never reuse one client's key in another client's project, and rotate a leaked key immediately (revoke in the dashboard, mint a new one).

Verify the connection

  1. Call workspace_info — it names the connected workspace and plan. Wrong workspace means wrong key; fix the environment before doing anything else.
  2. No MCP support in the current tool? Every tool also answers JSON-RPC over plain HTTP:
curl -s https://uplift.page/mcp \
  -H 'Content-Type: application/json' -H "x-uplift-key: $UPLIFT_KEY" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"workspace_info","arguments":{}}}'

Rules

  1. Public reads are keyless by design — never attach a workspace key to a machine that only needs the public library.
  2. Library writes (save_skill, remove_skill) need a paid workspace plan; the error message names the fix when the plan is too low.
  3. When a workspace tool reports a locked or invalid key, check the header name (x-uplift-key, or Authorization: Bearer upk_…) and whether the key was revoked before debugging anything deeper.

Served from the uplift.page library and refreshed within 5 minutes of every update.