TurboSteed MCP

io.github.vivek-turbosteedv1.0.0更新於 Oct 2, 2026

Exposes TurboSteed web-hosting, site generation, and library features to AI coding agents.

概覽

AI 產生的概覽

讓 AI 助理管理 TurboSteed 代管的網站:部署網站、處理素材、CMS 內容、Webhook 與聯絡表單提交。

功能
這是 TurboSteed CLI 內附的本機 stdio MCP 伺服器,會把請求代理到 TurboSteed 後端。它提供網站設定(site.get、site.update)、CMS 結構與項目(列出、取得、建立、更新、發布)、Webhook、聯絡表單提交、素材(列出、刪除)、部署(deploy.getUploadUrl、deploy.trigger),以及供 RAG 或小工具使用的網站憑證等工具。
適用情境
當網站代管在 TurboSteed 上,並希望助理以對話方式查看或修改網站時適用,例如列出 CMS 結構、建立或發布部落格文章、查看聯絡表單提交,或觸發部署。
執行需求
需要 Node.js 18.0.0 或以上版本以及 TurboSteed 帳號。MCP 伺服器以 npx @turbosteed/cli --mcp 啟動,需要環境變數 TURBOSTEED_ACCOUNT_SID、TURBOSTEED_API_KEY 與 TURBOSTEED_SITE_ID;TURBOSTEED_API_BASE 為選用,預設使用正式環境。需要能連線至 TurboSteed API 的網路。
安裝前請注意
需要機密 TURBOSTEED_API_KEY,README 說明絕不可將它寫入設定檔。部分工具會更動線上網站資料:site.update、cms.schema.create、cms.entry.create、cms.entry.update、cms.entry.publish、webhooks.create、assets.delete 與 deploy.trigger 都會寫入、發布或刪除內容。請求會轉送到 TurboSteed 後端,apikeys.getSiteCredentials 會回傳網站憑證。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 TurboSteed MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

TurboSteed CLI

Deploy and manage TurboSteed sites from your terminal or CI/CD pipeline.

Features

  • Deploy sites with a single command
  • Manage assets (upload, list, delete)
  • Retrieve contact form submissions
  • Manage CMS schemas and entries
  • Progress indicators and formatted output
  • Works with GitHub Actions, GitLab CI, and Bitbucket Pipelines
  • MCP server for Claude Code / Claude Desktop integration

Requirements

  • Node.js 18.0.0 or higher
  • A TurboSteed account (sign up)

Installation

Global Installation (Recommended)

bash
npm install -g @turbosteed/cli

Verify installation:

bash
turbosteed --version

Local Installation (Per Project)

bash
npm install --save-dev @turbosteed/cli

Run via npx:

bash
npx turbosteed deploy

Or add to package.json scripts:

json
{  "scripts": {    "deploy": "turbosteed deploy --source ./dist"  }}

Configuration

Step 1: Get Your Credentials

  1. Log in to the TurboSteed Dashboard
  2. Navigate to Settings > API Keys
  3. Copy your Account SID and API Key
  4. Navigate to your site and copy the Site ID

Step 2: Set Environment Variables

bash
export TURBOSTEED_ACCOUNT_SID="your-account-sid"export TURBOSTEED_API_KEY="your-api-key"export TURBOSTEED_SITE_ID="your-site-id"

For permanent setup, add these to your shell profile (~/.bashrc, ~/.zshrc, etc.).

Step 3 (Optional): Create a Config File

Create turbosteed.json in your project root:

json
{  "version": "1",  "site": {    "id": "your-site-id",    "accountSid": "your-account-sid"  },  "deploy": {    "source": "./dist",    "exclude": ["**/*.map", ".DS_Store"]  }}

Note: Never put your API key in config files. Always use environment variables for secrets.

Environment Variables Reference

VariableRequiredDescription
TURBOSTEED_ACCOUNT_SIDYesYour account identifier
TURBOSTEED_API_KEYYesYour API key (keep secret)
TURBOSTEED_SITE_IDYes*Site ID (*can be in config file)
TURBOSTEED_API_BASENoAPI base URL (defaults to production)

Usage

Deploy a Site

bash
# Deploy from ./dist (default)turbosteed deploy
# Deploy from a specific directoryturbosteed deploy --source ./build
# Preview what would be deployedturbosteed deploy --dry-run
# Output result as JSONturbosteed deploy --json

Requirements:

  • Source directory must contain an index.html file
  • Maximum zip size: 25 MB

Manage Assets

bash
# Upload a fileturbosteed assets upload ./images/logo.png
# List first page of assetsturbosteed assets list
# List ALL assets (automatic pagination)turbosteed assets list --all
# Manual pagination (next page)turbosteed assets list --page <token>
# Delete an assetturbosteed assets delete logo.png

Contact Forms

bash
# List first page of submissionsturbosteed forms list
# List ALL submissions (automatic pagination)turbosteed forms list --all
# Manual pagination (next page)turbosteed forms list --page <formId>
# Get a specific submissionturbosteed forms get <formId>

CMS Content

bash
# List first page of schemasturbosteed cms schema list
# List ALL schemas (automatic pagination)turbosteed cms schema list --all
# Create a schema from JSON fileturbosteed cms schema create ./blog-schema.json
# List first page of entries in a schematurbosteed cms entry list <schemaId>
# List ALL entries (automatic pagination)turbosteed cms entry list <schemaId> --all
# Create an entryturbosteed cms entry create <schemaId> ./post.json
# Publish an entryturbosteed cms entry publish <schemaId> <entryId>

Example schema file (blog-schema.json):

json
{  "display_name": "Blog Posts",  "schema_mode": "custom",  "fields": [    { "name": "title", "type": "text", "required": true, "max_length": 200 },    { "name": "slug", "type": "slug", "source_field": "title", "required": true },    { "name": "body", "type": "richtext", "required": true },    { "name": "published_date", "type": "date", "required": false }  ]}

Example entry file (post.json):

json
{  "title": "My First Post",  "slug": "my-first-post",  "body": "# Hello World\n\nThis is my first blog post.",  "published_date": "2026-07-01"}

CI/CD Integration

GitHub Actions

Create .github/workflows/deploy.yml:

yaml
name: Deploy to TurboSteed
on:  push:    branches: [main]
jobs:  deploy:    runs-on: ubuntu-latest    steps:      - uses: actions/checkout@v4
      - name: Setup Node.js        uses: actions/setup-node@v4        with:          node-version: '20'          cache: 'npm'
      - name: Install and Build        run: npm ci && npm run build
      - name: Deploy to TurboSteed        env:          TURBOSTEED_ACCOUNT_SID: ${{ secrets.TURBOSTEED_ACCOUNT_SID }}          TURBOSTEED_API_KEY: ${{ secrets.TURBOSTEED_API_KEY }}          TURBOSTEED_SITE_ID: ${{ secrets.TURBOSTEED_SITE_ID }}        run: npx @turbosteed/cli deploy --source ./dist

GitLab CI

Create .gitlab-ci.yml:

yaml
stages:  - build  - deploy
build:  stage: build  image: node:20  script:    - npm ci    - npm run build  artifacts:    paths:      - dist/
deploy:  stage: deploy  image: node:20  dependencies:    - build  script:    - npx @turbosteed/cli deploy --source ./dist  only:    - main

Bitbucket Pipelines

Create bitbucket-pipelines.yml:

yaml
image: node:20
pipelines:  branches:    main:      - step:          name: Build          caches:            - node          script:            - npm ci            - npm run build          artifacts:            - dist/**
      - step:          name: Deploy to TurboSteed          deployment: production          script:            - npx @turbosteed/cli deploy --source ./dist

MCP Integration (Claude Code / Claude Desktop)

This CLI includes an MCP (Model Context Protocol) server that allows AI assistants like Claude to manage your TurboSteed site programmatically.

Setup

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

json
{  "mcpServers": {    "turbosteed": {      "command": "npx",      "args": ["@turbosteed/cli", "--mcp"],      "env": {        "TURBOSTEED_ACCOUNT_SID": "your-account-sid",        "TURBOSTEED_API_KEY": "your-api-key",        "TURBOSTEED_SITE_ID": "your-site-id",        "TURBOSTEED_API_BASE": "https://api-us.turbosteed.com"      }    }  }}

For Claude Code, add to ~/.claude/settings.json:

json
{  "mcpServers": {    "turbosteed": {      "command": "npx",      "args": ["@turbosteed/cli", "--mcp"],      "env": {        "TURBOSTEED_ACCOUNT_SID": "your-account-sid",        "TURBOSTEED_API_KEY": "your-api-key",        "TURBOSTEED_SITE_ID": "your-site-id",        "TURBOSTEED_API_BASE": "https://api-us.turbosteed.com"      }    }  }}

Starting the MCP Server Directly

You can also start the MCP server directly from the command line:

bash
turbosteed --mcp

Or via npx:

bash
npx @turbosteed/cli --mcp

MCP Environment Variables

VariableRequiredDescription
TURBOSTEED_ACCOUNT_SIDYesAccount identifier (e.g., AC...)
TURBOSTEED_API_KEYYesAPI key (e.g., sk_...)
TURBOSTEED_SITE_IDYesSite identifier (e.g., site_...)
TURBOSTEED_API_BASENoAPI base URL (https://api-us.turbosteed.com)

How It Works

The CLI runs a local stdio MCP server that proxies all requests to the TurboSteed backend MCP HTTP endpoint at ${TURBOSTEED_API_BASE}/users/${accountSid}/sites/${siteId}/mcp. It receives MCP protocol messages over stdio from Claude, forwards them via HTTP to the backend, and returns responses back through stdio.

Available Tools

Once configured, Claude can use these tools:

ToolDescription
site.getGet site configuration
site.updateUpdate site settings
cms.schema.listList CMS schemas
cms.schema.getGet a schema definition
cms.schema.createCreate a new schema
cms.entry.listList entries in a schema
cms.entry.getGet a specific entry
cms.entry.createCreate a new entry
cms.entry.updateUpdate an entry
cms.entry.publishPublish an entry
webhooks.listList webhooks
webhooks.createCreate a webhook
contacts.listList contact form submissions
contacts.getGet a specific submission
assets.listList all assets
assets.deleteDelete an asset
deploy.getUploadUrlGet a pre-signed upload URL
deploy.triggerTrigger deployment
apikeys.getSiteCredentialsGet public site credentials for RAG/widget

Example Usage

Ask Claude:

  • "List all my CMS schemas"
  • "Create a new blog post entry with title 'Hello World'"
  • "Show me my site configuration"
  • "What contact form submissions do I have?"

Exit Codes

CodeMeaning
0Success
1General error
2Authentication failure
3Resource not found
4Upload/network failure
5Invalid input
6Configuration error

Alternative: Shell Scripts (No Node.js)

For environments without Node.js, use shell scripts:

bash
curl -sSL https://raw.githubusercontent.com/turbosteed/shell-tools/main/scripts/deploy.sh | bash -s ./dist

See github.com/turbosteed/shell-tools

Support

License

This software is licensed for use with TurboSteed accounts only. See LICENSE for full terms.

來源:README.md,提交 28b267f

工具

0
工具後設資料尚未被收錄。

版本歷史

1
  1. v1.0.0最新Oct 2, 2026