Spacery

Publish 3D scans, Gaussian splats and 360 tours as shareable spaces, and build guided tours in them

사용해야 할까요

품질 및 안전성

A
설명 품질
97%
스키마 완전성
81%
이름 품질
93%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,333토큰 (도구 정의)
~592 B일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.82%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "spacery": {
      "command": "uvx",
      "args": [
        "https://github.com/lukehollis/spacery/releases/download/v0.2.3/spacery.mcpb"
      ]
    }
  }
}

실행 가능한 패키지

mcpbhttps://github.com/lukehollis/spacery/releases/download/v0.2.3/spacery.mcpb0.2.3stdio

원격 엔드포인트

https://app.spacery.dev/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (18)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
⚪link_account(link_code)

Links this agent to the person's account. Returns a link where the person signs in and approves a short code; call again once they have. Never ask for a password.

입력 스키마

{
  "type": "object",
  "properties": {
    "link_code": {
      "type": "string",
      "description": "Only for connections without a session, the link_code from the previous call."
    }
  }
}
🟢list_plans

The ways to pay for hosting, with prices, and the account's current plan. The first space is a free private preview, so show them when the person wants to publish it or keep it.

입력 스키마

{
  "type": "object",
  "properties": {}
}
🟡create_space(title, plan)

Creates a space for one capture. An account that does not pay for hosting yet gets its first space as a free private preview: upload and process it with no payment. After that, it returns a Stripe Checkout link for the plan the person chose (pay as you go when none is given) for them to pay; then call wait_for_payment. Never ask for card details.

입력 스키마

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "Title of the space, 1 to 200 characters."
    },
    "plan": {
      "type": "string",
      "description": "Optional plan name or ID from list_plans."
    }
  },
  "required": [
    "title"
  ]
}
🟢wait_for_payment(space_id)

Waits up to 25 seconds for the person to finish paying in Stripe Checkout, whether for a space's first payment or to publish a free preview. Call it again to keep waiting.

입력 스키마

{
  "type": "object",
  "properties": {
    "space_id": {
      "type": "string",
      "description": "The space ID (12 hexadecimal characters) from create_space or space_status."
    }
  },
  "required": [
    "space_id"
  ]
}
🔴upload_files(space_id, files)

Starts resumable uploads for capture files you hold (for example photos or video the person shared with you) and returns where to PUT each file's bytes. For files on the person's own device, give them the space's page to drop the files instead.

입력 스키마

{
  "type": "object",
  "properties": {
    "space_id": {
      "type": "string",
      "description": "The space ID (12 hexadecimal characters) from create_space or space_status."
    },
    "files": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "size": {
            "type": "integer",
            "description": "Size in bytes."
          },
          "type": {
            "type": "string",
            "description": "Optional MIME type."
          }
        },
        "required": [
          "name",
          "size"
        ]
      }
    }
  },
  "required": [
    "space_id",
    "files"
  ]
}
🟡finish_upload(space_id, notes, output, submit)

Checks that every uploaded file is complete and submits the space for processing. The account is emailed when the space is ready.

입력 스키마

{
  "type": "object",
  "properties": {
    "space_id": {
      "type": "string",
      "description": "The space ID (12 hexadecimal characters) from create_space or space_status."
    },
    "notes": {
      "type": "string",
      "description": "Optional notes for processing, such as what the capture is or how the tour should go."
    },
    "output": {
      "type": "string",
      "enum": [
        "splat",
        "tour",
        "auto"
      ],
      "description": "What to build: \"splat\", a 3DGS (3D Gaussian splat) visitors move through freely (the default for photos, video and 360 captures); \"tour\", a guided tour of 360 panoramas (the default for E57 scans); or \"auto\" to use those defaults. Set it only when the person asks for one."
    },
    "submit": {
      "type": "boolean",
      "description": "Defaults to true."
    }
  },
  "required": [
    "space_id"
  ]
}
🟢space_status(space_id)

Status of one space, or every space on the account with its link when ready.

입력 스키마

{
  "type": "object",
  "properties": {
    "space_id": {
      "type": "string",
      "description": "The space ID (12 hexadecimal characters) from create_space or space_status."
    }
  }
}
🟡set_visibility(space_id, public)

Makes a ready space public (anyone with the link) or private (only the owner). Ask the person first. A free preview cannot be public until hosting starts, so it returns a Stripe Checkout link for the person to pay.

입력 스키마

{
  "type": "object",
  "properties": {
    "space_id": {
      "type": "string",
      "description": "The space ID (12 hexadecimal characters) from create_space or space_status."
    },
    "public": {
      "type": "boolean"
    }
  },
  "required": [
    "space_id",
    "public"
  ]
}
🔴unlink_account

Unlinks this agent from the account.

입력 스키마

{
  "type": "object",
  "properties": {}
}
🟢find_tour_spaces(query)

Spaces a guided tour or scavenger hunt can be built on: the person's own finished spaces and the site's public spaces (museums, temples, tombs, gardens). Search by words in the title.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    }
  }
}
🟢list_tours

The tours and scavenger hunts on the account, with their links.

입력 스키마

{
  "type": "object",
  "properties": {}
}
🟡create_tour(scene_id, kind, title)

Starts a private guided tour or scavenger hunt on a space from find_tour_spaces; fill it with draft_tour or save_tour.

입력 스키마

{
  "type": "object",
  "properties": {
    "scene_id": {
      "type": "string",
      "description": "The sceneId from find_tour_spaces."
    },
    "kind": {
      "type": "string",
      "enum": [
        "tour",
        "hunt"
      ]
    },
    "title": {
      "type": "string"
    }
  },
  "required": [
    "scene_id"
  ]
}
🔴draft_tour(tour_id, request)

Asks the site's tour agent, which sees the space's photographs, to write or rework the tour from a plain request: stops and text, hidden objects and clues, library models, effects, sound, music, looks with transitions and skies (day, sunset, storm, night, stars). It places everything and saves. Returns at once; then call wait_for_tour.

입력 스키마

{
  "type": "object",
  "properties": {
    "tour_id": {
      "type": "string",
      "description": "The tour ID (12 hexadecimal characters) from create_tour or list_tours."
    },
    "request": {
      "type": "string"
    }
  },
  "required": [
    "tour_id",
    "request"
  ]
}
🟢wait_for_tour(tour_id)

Waits up to 25 seconds for a draft to finish, then summarizes the tour. Call it again to keep waiting.

입력 스키마

{
  "type": "object",
  "properties": {
    "tour_id": {
      "type": "string",
      "description": "The tour ID (12 hexadecimal characters) from create_tour or list_tours."
    }
  },
  "required": [
    "tour_id"
  ]
}
🟢get_tour(tour_id)

The tour as JSON (stops, objects, effects, looks, skies) with its revision, for editing with save_tour.

입력 스키마

{
  "type": "object",
  "properties": {
    "tour_id": {
      "type": "string",
      "description": "The tour ID (12 hexadecimal characters) from create_tour or list_tours."
    }
  },
  "required": [
    "tour_id"
  ]
}
🔴save_tour(tour_id, experience, title)

Saves a tour edited by hand: the experience JSON from get_tour with changes. Models use a url from search_models, or any https address of a .glb.

입력 스키마

{
  "type": "object",
  "properties": {
    "tour_id": {
      "type": "string",
      "description": "The tour ID (12 hexadecimal characters) from create_tour or list_tours."
    },
    "experience": {
      "type": "object"
    },
    "title": {
      "type": "string"
    }
  },
  "required": [
    "tour_id",
    "experience"
  ]
}
🟢search_models(query, limit)

Searches the library of ready-made 3D models (statues, amphorae, temples, furniture, animals, props from many periods). Returns each model's size and url.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "limit": {
      "type": "number"
    }
  },
  "required": [
    "query"
  ]
}
⚪share_tour(tour_id, public, title)

Makes a tour public (anyone with its link, never listed) or private, and optionally renames it. Ask the person first.

입력 스키마

{
  "type": "object",
  "properties": {
    "tour_id": {
      "type": "string",
      "description": "The tour ID (12 hexadecimal characters) from create_tour or list_tours."
    },
    "public": {
      "type": "boolean"
    },
    "title": {
      "type": "string"
    }
  },
  "required": [
    "tour_id"
  ]
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 18개