原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Space Context

作者:finikoslab版本 0.2.1i★ –i在云端运行
注册名称app.spacecontext/spacecontext

安装

概览

作者提供的说明(英文原文)

The context layer for the physical world: filmed spaces as cited context for agents.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

你需要

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

适用于网页版、桌面版和手机版 Claude:

  1. 打开 Settings → Connectors
  2. 点击 Add custom connector
  3. 粘贴下面的地址,然后点击 Add
  4. 如果要求登录,请登录作者的服务
SettingsConnectors1+ Add2https://…3
https://mcp.spacecontext.app/mcp

在终端中运行这条命令

claude mcp add --transport http spacecontext https://mcp.spacecontext.app/mcp

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "spacecontext": {
      "url": "https://mcp.spacecontext.app/mcp"
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "spacecontext": {
      "type": "http",
      "url": "https://mcp.spacecontext.app/mcp"
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

ChatGPT 只能连接互联网上的服务器:

  1. 打开网页版 ChatGPT → Settings → Connectors (Apps)
  2. 点击 Create 或 Add(部分套餐需要先在 Advanced 中开启 Developer mode)
  3. 粘贴下面的地址,起个名字,然后保存
  4. 如果要求登录,请登录作者的服务
SettingsConnectors1+ Create2https://…3
https://mcp.spacecontext.app/mcp

菜单名称可能因套餐和版本不同而略有差异。

你的选择通过 Cookie 保存在这台设备上,无需账户。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过域名 spacecontext.app 验证(注册中心会核实域名所有权)

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    端点有响应

    尚未检查;我们会轮流检查各个端点

  • … 尚未检查

    使用 OAuth 登录

    尚未检查;我们会轮流检查各个端点

  • … 尚未检查

    工具描述中没有隐藏指令

    尚未检查;我们会在检查端点时读取工具列表

与“其他”中的其他服务器比较i

  • 星标数多于此分类中其他 32451 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 32451 个服务器的 63% 更新
  • 基础检查结果等于或优于此分类中其他 32451 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Space Context 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(0.2.1)于22天前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。

有什么可以替代它?

同一分类中有:Spec Driven Development, Remote Desktop Commander, Recta

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

Spec Driven Development

作者:formulahendry

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

在你的电脑上运行★ 440MIT14个月前更新
安装

Remote Desktop Commander

作者:desktop-commander

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

在云端运行★ 211昨天更新
安装

Recta

作者:RectaBuild

Cheaper cross-chain stablecoin routes for AI agents; 5 % of the verified saving, nothing if none.

在云端运行今天更新
安装

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

Space Context MCP server

A remote MCP server that gives Claude, ChatGPT, Codex, Cursor, VS Code or any MCP client access to your Space Context spaces. The assistant can list spaces, search them, read them by section or as one page, ask them questions, compare scans and show the photo evidence. Every item, issue and key location says whether a second, independent check found it on its own photo (verified, unconfirmed or from the narration), so the assistant knows what to state and what to hedge. If you allow it, it can also scan spaces for you.

https://mcp.spacecontext.app/mcp

It speaks MCP over Streamable HTTP and authorizes with OAuth 2.1 (dynamic client registration and client ID metadata documents). It's stateless (createMcpHandler from agents, MCP SDK v2) behind @cloudflare/workers-oauth-provider. This package isn't published to npm. Use the hosted server above, or deploy your own.

Connect an assistant

ClientHow
Claude (claude.ai, Desktop)Settings → Connectors → Add custom connector, paste the URL, Connect
Claude Codeclaude mcp add --transport http --scope user spacecontext https://mcp.spacecontext.app/mcp, then /mcp → Authenticate
Codexcodex mcp add spacecontext --url https://mcp.spacecontext.app/mcp, then codex mcp login spacecontext
ChatGPTSettings → Apps & Connectors → Advanced → Developer mode, then create a connector with the URL and OAuth
Cursor"spacecontext": { "url": "https://mcp.spacecontext.app/mcp" } under mcpServers in ~/.cursor/mcp.json, then Login in Cursor's MCP settings
VS Codecode --add-mcp '{"name":"spacecontext","type":"http","url":"https://mcp.spacecontext.app/mcp"}' (or servers in a workspace's .vscode/mcp.json), then MCP: List Servers → start it and sign in

You never paste a key. Connecting works like this:

  1. Your assistant opens a Space Context page. You sign in with Apple, Google or a code sent to your email, using the same account as the iPhone app.
  2. You choose whether the assistant may see sensitive values (Wi-Fi passwords, door and alarm codes, the narration) and whether it may scan spaces for you. By default it can do neither. Scanning needs a card on file in your account (added in the console, nothing charged): without one, the page offers to connect read-only instead, or to try again once the card is added.
  3. The server creates an API key for this connection only, listed as MCP · in the console. Its scopes are spaces:read and scans:read, plus spaces:sensitive and scans:write if you ticked them.

Revoking that key in the console ends the connection, and the assistant asks you to sign in again. Connecting the same assistant again replaces its previous key. The assistant sees your live spaces, including the ones scanned with the iPhone app. A space from the app becomes readable once it has been screened for sensitive values: the first read starts the screening, which takes a minute or two. Full guide: Connect an assistant.

Tools

Reading tools, on every connection (annotated read-only and idempotent):

Tool
list_spacesSpaces with their latest scan, 50 per page
search_spacesThe records that best answer a question, across all spaces or one, in any language
get_spaceA space by section (areas, items, issues, key locations, instructions, facts, Q&A, coverage), optionally with evidence
get_space_markdownThe whole space as one Markdown page, to load it as context in one call
ask_spaceA short answer with citations, or documented: false
list_scans, compare_scansThe scan history, and what changed between two scans, with evidence from both
get_evidence_photoThe original video frame behind a record, as an image
get_scan_status, follow_scanWhere a scan is; follow_scan waits on the event stream and reports progress
walletBalance, free scans left, price of a scan
capture_checklistWhat to film for a type of space (a flat, a car, a boat, an appliance…), before a scan

These tools work only on a connection where the user ticked let it scan spaces. On any other connection the API refuses them with INSUFFICIENT_SCOPE:

Tool
check_frameIs this photo usable, and which key locations does it show (with space_type, those of that type and the area); nothing is stored or charged
create_scanDeclares a scan of an existing or a new space and returns the upload instructions
upload_frameSends one image of a frames scan through the server, which holds the key
start_scanStarts and charges a scan: the free scan first, then $1.00 from the balance; refunded if it fails
cancel_scanCancels a scan that hasn't started; nothing is charged

Resources: spacecontext://spaces (the list, JSON) and spacecontext://spaces/{space_id} (a space as Markdown). Prompts: check_out_report (compare two scans and write a report that keeps confirmed changes apart from what may be missing) and where_is (find one thing, with its area and evidence photo).

No tool reaches the open web. Space content is returned as data, never as instructions: the server's instructions say so, and so does a note in every result that carries space content. The server card at /.well-known/mcp/server-card.json lists tools, resources and prompts before sign-in. Arguments and results: MCP tools.

Deploy your own

The server is a Cloudflare Worker that talks to a Space Context API (…/v1, with API_V1_ENABLED = "true"). It signs people in through the API's own sign-in endpoints and creates one API key per connection. Everything it keeps is in KV: OAuth clients, grants and tokens (grants carry the connection's API key and are encrypted by the OAuth library), and sign-ins in progress, for ten minutes, encrypted with a key that only the user's browser holds.

1. Install and build the SDK (the server imports it), from the repository root:

npm install

npm run build -w @spacecontext/sdk

2. Create the KV namespace for OAuth clients, grants and tokens, and put its id in kv_namespaces in wrangler.jsonc. This and the next steps run in packages/mcp:

cd packages/mcp

npx wrangler kv namespace create OAUTH_KV

3. Set the configuration in wrangler.jsonc (name, the custom domain in routes, and vars):

API_BASE_URLThe API base, for example https://api.spacecontext.app/v1
PUBLIC_URLThis server's origin. It names the protected resource (/.well-known/oauth-protected-resource/mcp) and is the only origin the consent forms accept posts from
GOOGLE_WEB_CLIENT_IDOptional: the Google web OAuth client for "Continue with Google"
APPLE_SERVICES_IDOptional: the Services ID for "Sign in with Apple"
BACKEND (services)Optional: a service binding to the API Worker. Through it, the API sees each user's own IP for its rate limits and sign-in protection. Without it, the server calls API_BASE_URL over the internet and every user shares the Worker's IP. Remove the entry if the API isn't a Worker in your account

4. Add the secret for Google sign-in:

npx wrangler secret put GOOGLE_WEB_CLIENT_SECRET

5. Register the callback URLs with the providers:

  • Google: add ${PUBLIC_URL}/authorize/google/callback as an authorized redirect URI of the web OAuth client.
  • Apple: add ${PUBLIC_URL}/authorize/apple/callback as a return URL of the Services ID.

Without both GOOGLE_WEB_CLIENT_ID and the secret, the Google button isn't shown, and the same goes for Apple without APPLE_SERVICES_ID. Email sign-in is always offered. The API checks Google and Apple tokens against its own web client ID and Services ID, so use the same ones the API is configured with.

6. Deploy:

npm run deploy     # wrangler deploy of the top-level environment

Keep these settings from wrangler.jsonc:

  • global_fetch_strictly_public stays on. The server fetches client metadata documents from URLs that clients choose, so a plain fetch must never reach private addresses. The API is reached through the BACKEND binding.
  • With workers_dev and preview_urls off, the server answers only on its custom domain.
  • ratelimits limit each client IP to 10 registrations (/register) and 60 sign-in page requests (/authorize…) a minute, answered with 429 and Retry-After: 60 beyond. Rate limits aren't inherited by environments, and each namespace_id must be unique in your Cloudflare account. Without the bindings (as in dev) nothing is limited.
  • Access tokens last one hour. A grant lives for 90 days after its last refresh. A client registered dynamically is deleted after 180 days without a token request.

wrangler.jsonc also defines dev (local, see below) and staging (Space Context's own staging deployment).

Develop

npm run dev -w @spacecontext/mcp     # http://localhost:8788, against an API on 127.0.0.1:8787

npm test -w @spacecontext/mcp # the full OAuth flow and MCP calls in workerd, against a fake API

The API isn't part of this repository. The tests don't need it: they drive registration, PKCE, consent, token and real MCP calls against a fake API. The dev environment sets no Google or Apple client, so local sign-in uses the emailed code. Read CONTRIBUTING.md before adding a tool: any tool that writes or spends must sit behind scans:write and be annotated honestly.

MIT © Finikos S.r.l.

问 PopNx