プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。Google でログインするとレビューを書けます。プロトタイプ · 30分ごとに更新
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

aiSecurityWarden

作者:SoftDevEngバージョン 0.7.6i★ 0iパソコンで動く
レジストリ名io.github.SoftDevEng/aisecuritywarden

インストール方法

What it does

Human approval for AI agents: E2E-encrypted secrets and gated Gmail, GitHub and MCP tools.

  • Connects パソコンで動く
  • Account or key Needs SW_TOKEN_NAME, SW_TOKEN_ID · 1 setting to fill in (SW_SERVER_URL)
  • Category サイバーセキュリティ

インストール

使っているAIアプリを選んで、設定をコピーしてください。

チェック 3/3 合格 · あなたのパソコンで動きます · ✓ コマンド確認済み 2026年11月14日

まず:どの AI を使っていますか?

使っているアプリを選ぶと、下に手順が表示されます。

Claude につなげますが、先に準備が必要です

aiSecurityWarden のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (SW_SERVER_URL) · 先にパソコンへ Python (uv) を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません

  1. Python (uv) を入れる

    1 回だけ。Python (uv) が必要なすべてのサーバーで使えます

    Python (uv) のダウンロードページを開く ↗

  2. aiSecurityWarden に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。

    aiSecurityWarden のサイトを開く ↗

  3. 設定を 1 項目入力

    これはプログラムの設定でキーではありません。登録は不要で、作者の説明どおりに入力します。

    • SW_SERVER_URL Your aiSecurityWarden server · 初期値 https://app.aisecuritywarden.com

    説明は英語の原文のままです。

  4. パソコン版 Claude アプリの設定ファイルを開く

    SettingsDeveloperEdit Config

  5. この設定を貼り付けて保存

    {
      "mcpServers": {
        "aisecuritywarden": {
          "command": "uvx",
          "args": [
            "aisecuritywarden",
            "serve"
          ],
          "env": {
            "SW_SERVER_URL": "https://app.aisecuritywarden.com",
            "SW_TOKEN_NAME": "your-value",
            "SW_TOKEN_ID": "your-value"
          }
        }
      }
    }

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  6. Claude を終了してもう一度開く

  7. 試してみる

    aiSecurityWarden を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Claude が aiSecurityWarden を使っていると言うか、回答に aiSecurityWarden のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

ChatGPT はまだ aiSecurityWarden につなげません

aiSecurityWarden はパソコンに入れて使うものですが、ChatGPT は Web 上で動くサーバーにしかつなげません

代わりにできること

A · aiSecurityWarden につなげるアプリを使う

  • aiSecurityWarden のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (SW_SERVER_URL) · 先にパソコンへ Python (uv) を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
  • aiSecurityWarden のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (SW_SERVER_URL) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)
  • aiSecurityWarden のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (SW_SERVER_URL) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)
  • aiSecurityWarden のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (SW_SERVER_URL) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)

B · サイバーセキュリティ の中で ChatGPT につなげる別のサーバー

同じカテゴリでよく使われているものから、キーなしでアドレスだけでつなげるものを選びました

Claude Code につなげますが、先に準備が必要です

aiSecurityWarden のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (SW_SERVER_URL) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)

  1. Python (uv) を入れる

    1 回だけ。Python (uv) が必要なすべてのサーバーで使えます

    Python (uv) のダウンロードページを開く ↗

  2. aiSecurityWarden に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。

    aiSecurityWarden のサイトを開く ↗

  3. 設定を 1 項目入力

    これはプログラムの設定でキーではありません。登録は不要で、作者の説明どおりに入力します。

    • SW_SERVER_URL Your aiSecurityWarden server · 初期値 https://app.aisecuritywarden.com

    説明は英語の原文のままです。

  4. ターミナルを開く

    Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く

  5. このコマンドを貼り付けて Enter

    claude mcp add --scope user aisecuritywarden --env SW_SERVER_URL=https://app.aisecuritywarden.com --env SW_TOKEN_NAME=your-value --env SW_TOKEN_ID=your-value -- uvx aisecuritywarden serve

    Enter の前に「your-value」を自分のキーに書き換えてください

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  6. Claude Code で /mcp と入力

    aiSecurityWarden が一覧にあり、接続済みと表示されれば OK です

  7. 試してみる

    aiSecurityWarden を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Claude Code が aiSecurityWarden を使っていると言うか、回答に aiSecurityWarden のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

Cursor につなげますが、先に準備が必要です

aiSecurityWarden のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (SW_SERVER_URL) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)

  1. Python (uv) を入れる

    1 回だけ。Python (uv) が必要なすべてのサーバーで使えます

    Python (uv) のダウンロードページを開く ↗

  2. aiSecurityWarden に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。

    aiSecurityWarden のサイトを開く ↗

  3. 設定を 1 項目入力

    これはプログラムの設定でキーではありません。登録は不要で、作者の説明どおりに入力します。

    • SW_SERVER_URL Your aiSecurityWarden server · 初期値 https://app.aisecuritywarden.com

    説明は英語の原文のままです。

  4. このボタンで Cursor を開く

    Cursor で開く

    Cursor がインストールの確認をするので Install を押します

  5. キーを入力

    aiSecurityWarden の設定で SW_TOKEN_NAME, SW_TOKEN_ID, SW_SERVER_URL が空です。自分のキーを入れて保存します

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  6. Cursor の AI チャットを Agent モードで開く

  7. 試してみる

    aiSecurityWarden を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Cursor が aiSecurityWarden を使っていると言うか、回答に aiSecurityWarden のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

VS Code につなげますが、先に準備が必要です

aiSecurityWarden のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (SW_SERVER_URL) · 先にパソコンへ Python (uv) を入れてください(1 回だけ)

  1. Python (uv) を入れる

    1 回だけ。Python (uv) が必要なすべてのサーバーで使えます

    Python (uv) のダウンロードページを開く ↗

  2. aiSecurityWarden に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。

    aiSecurityWarden のサイトを開く ↗

  3. 設定を 1 項目入力

    これはプログラムの設定でキーではありません。登録は不要で、作者の説明どおりに入力します。

    • SW_SERVER_URL Your aiSecurityWarden server · 初期値 https://app.aisecuritywarden.com

    説明は英語の原文のままです。

  4. このボタンで VS Code を開く

    VS Code で開く

    VS Code がインストールの確認をするので Install を押します

  5. キーを入力

    aiSecurityWarden の設定で SW_TOKEN_NAME, SW_TOKEN_ID, SW_SERVER_URL が空です。自分のキーを入れて保存します

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  6. VS Code の AI チャットを Agent モードで開く

  7. 試してみる

    aiSecurityWarden を使って、私に何ができるか教えて、1 つやってみせて

    ✓ VS Code が aiSecurityWarden を使っていると言うか、回答に aiSecurityWarden のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

Windsurf、Zed、Gemini CLI など MCP を使える他のアプリは追加方法がそれぞれ違います。アプリ一覧で確認してください

MCP を使えるアプリをすべて見る →

JSON 設定は下の「開発者向け」にあります

つまずいたら?aiSecurityWarden を使っている人に聞いてみましょう💬 ディスカッション →
開発者向け:ターミナルのコマンドと JSON 設定

パソコンにインストール

Claude Code

claude mcp add --scope user aisecuritywarden --env SW_SERVER_URL=https://app.aisecuritywarden.com --env SW_TOKEN_NAME=your-value --env SW_TOKEN_ID=your-value -- uvx aisecuritywarden serve

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "aisecuritywarden": {
      "command": "uvx",
      "args": [
        "aisecuritywarden",
        "serve"
      ],
      "env": {
        "SW_SERVER_URL": "https://app.aisecuritywarden.com",
        "SW_TOKEN_NAME": "your-value",
        "SW_TOKEN_ID": "your-value"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "aisecuritywarden": {
      "command": "uvx",
      "args": [
        "aisecuritywarden",
        "serve"
      ],
      "env": {
        "SW_SERVER_URL": "https://app.aisecuritywarden.com",
        "SW_TOKEN_NAME": "your-value",
        "SW_TOKEN_ID": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "aisecuritywarden": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "aisecuritywarden",
        "serve"
      ],
      "env": {
        "SW_SERVER_URL": "https://app.aisecuritywarden.com",
        "SW_TOKEN_NAME": "your-value",
        "SW_TOKEN_ID": "your-value"
      }
    }
  }
}

自分で入力する値

  • SW_SERVER_URL 必須 env
    Your aiSecurityWarden server
  • SW_TOKEN_NAME 秘密 必須 env
    The machine token's name on the website (its setup step shows it)
  • SW_TOKEN_ID 秘密 必須 env
    The machine token's id (its setup step shows it)

説明は英語の原文のままです。

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

ひと目でわかる

週あたりのダウンロードi
npm/PyPIにない
接続方法
パソコンで動く
最新バージョンi
0.7.6
レジストリ公開日i
2026年11月14日
コードの最終更新i
2026年11月14日
作者
SoftDevEng
パッケージ
pypi: aisecuritywarden
ウェブサイト
aisecuritywarden.com
レジストリでの状態
有効

使えるアプリ

このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。

パソコン上で動かせるアプリ

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

すべてのアプリと長所・短所 →

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月14日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント SoftDevEng で確認済みです

  • ✓ 合格

    今もメンテナンスされている

    コードの最終更新:今日

  • ✓ 合格

    ライセンスがある

    Apache-2.0を使用

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

話し合い

質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。

まだ投稿はありません。最初の質問や共有をどうぞ。

ここの投稿は利用者によるもので、PopNx チームのものではありません。

Google でログインして投稿

ユーザーレビュー

まだレビューはありません

Google でログインしてレビューを書く

サイバーセキュリティのほかのサーバーとの比較i

  • このカテゴリのほかの1059件のうち0%よりスターが多い
  • このカテゴリのほかの1059件のうち98%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの1059件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

aiSecurityWardenは安全ですか?

当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:SW_TOKEN_NAME, SW_TOKEN_ID

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は今日、最新バージョン(0.7.6)がレジストリに届いたのは今日です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。

代わりに使えるものは?

同じカテゴリには:Robin: AI-Powered Dark Web OSINT, HOL Guard, SonarQube MCP Server

同じカテゴリのほかの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

HOL Guard

Local-first AI agent security evidence and approval workflows through HOL Guard's stdio MCP server.

作者:hashgraph-online広く使われている↓ 7083/週★ 11029 日前更新

パソコンで動く

SonarQube MCP Server

Analyze code quality and security with SonarQube Server or Cloud directly in AI assistants.

作者:SonarSource成長中★ 6863 日前更新

パソコンで動く

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

aiSecurityWarden client

The open-source client for [aiSecurityWarden](https://aisecuritywarden.com), a secrets service with scoped, revocable machine tokens, end-to-end encryption and human approval for AI agents. Built so AI agents (like Hermes Agent) and other unattended services can fetch API keys at startup without ever storing those keys on disk.

All encryption and decryption happens here, in the client. The server only ever receives ciphertext, proofs it keeps only as Argon2id hashes, and wrapped keys, so you can check what leaves your machine by reading this code.

Get an account and see how it works at [aisecuritywarden.com](https://aisecuritywarden.com).

This repository contains:

  • the Python client library (securitywarden.client.SecurityWardenClient);
  • swctl, the command-line tool (machines: swctl export / swctl run; admins: swctl admin ...);
  • swadmin, a small desktop admin window;
  • the cryptography (src/securitywarden/crypto.py), the approval-policy and address-list parsers, and the shared test vectors other implementations are checked against;
  • the protocol and design document: docs/DESIGN.md.

The aiSecurityWarden server is a separate product.

Status: alpha. The design is deliberately small and reviewable, but it has not had an independent

security audit. Read the threat model.

How it works

 Admin workstation                 aiSecurityWarden server                Agent box (e.g. jarvis)

───────────────── ───────────────────── ─────────────────────── swctl admin ... stores only: sw1.m. . : • creates project key ───────▶ • ciphertext (chmod 600 file) • encrypts secrets • Argon2 hashes │ • wraps project key • wrapped keys ◀── id+secret ─────┤ 1. auth → 5-min JWT per machine token • audit log ─── ciphertext ──▶ │ 2. fetch │ 3. decrypt locally with ▼ KEY=VALUE → agent env → tools

A machine token has three parts:

PartSent to server?Purpose
idyesidentifies the token
secretyes (over TLS)proves possession; server keeps only an Argon2id hash
keyneverunwraps the project key, which decrypts the secrets

So the server can authenticate a token and hand out ciphertext, but it cannot read any secret. A full copy of the server's database is useless without a token key.

Threat model

Protects against

  • Secrets at rest on agent machines: only a token sits on disk, not your API keys. Backups, copied dotfiles and logs leak a token you can revoke in one command.
  • Server compromise: the database holds only AES-256-GCM ciphertext, Argon2 hashes and wrapped keys. Ciphertext is bound to its project, token and name (AAD), so a malicious server can't swap blobs around either.
  • Over-broad access: each token is read-only and scoped to one project.
  • Stale credentials: tokens can expire; revocation takes effect on the next request (access JWTs are re-checked against the database every time).
  • Brute force: Argon2id hashing, per-IP and per-token failure rate limiting, and the same timing for unknown token ids.

Does not protect against

  • An attacker who already controls the agent machine while it's running. They can read the token file, or read the decrypted secrets from the process memory or environment. No secrets manager can prevent that.
  • Losing the admin credential. Project keys are wrapped under it; without it the secrets can't be recovered (by design). Keep it in your password manager.
  • A server operator who swaps in malicious *client* code. Install swctl from a source you trust.

Install

pipx install aisecuritywarden     # or: pip install aisecuritywarden (in a virtual environment)

It installs the commands swctl, sw-mcp and swadmin. In Python code (connectors) the package is imported as securitywarden, e.g. from securitywarden.mcp import Connector.

Coming from 0.6 (installed as `securitywarden`)? Reinstall once under the new name; your tokens and settings stay where they are:

pip uninstall securitywarden && pip install aisecuritywarden     # same environment as before

Needs Python 3.10+, on Linux, Windows or macOS (all three are tested in CI). swadmin also needs Tkinter: it ships with the python.org installers for Windows and macOS; on Debian/Ubuntu, sudo apt install python3-tk.

macOS
  1. Install Python from python.org (3.10 or newer). Its installer includes a current Tk, so swadmin works. Avoid Apple's built-in /usr/bin/python3: its Tk is old and draws windows badly. With Homebrew's Python, also run brew install python-tk.
  2. Install the client in its own virtual environment:
   python3 -m venv ~/.venvs/securitywarden

~/.venvs/securitywarden/bin/pip install aisecuritywarden ~/.venvs/securitywarden/bin/swadmin # the admin window; swctl and sw-mcp are next to it

  1. Files live where they do on Linux: ~/.config/securitywarden/ (tokens, the admin credential file if you use one, swctl's cached 2FA session), each readable by you only.

The website works in Safari too (CI runs it in WebKit, Safari's engine).

Updating
sw-mcp update --check     # or: swctl update --check

sw-mcp update # installs the newest signed release; never an older one

Or ask your agent: "check for aiSecurityWarden updates" / "update aiSecurityWarden". The agent's securitywarden_update tool asks you to approve the exact version first. Restart the agent app afterwards. When a newer client is out, the agent is told once (and every time if the server requires it). Updates are signed with an offline release key and checked against the key built into the client; see DESIGN.md "Client updates".

From source:

git clone https://github.com/SoftDevEng/aiSecurityWarden-client && cd aiSecurityWarden-client

pip install -e ".[dev]" && pytest

Quick start

You need the address of an aiSecurityWarden server and, to administer it, its admin credential.

1. Admin (from your workstation)
mkdir -p ~/.config/securitywarden

echo 'sw1.a....' > ~/.config/securitywarden/admin.cred && chmod 600 ~/.config/securitywarden/admin.cred export SW_SERVER_URL=https://vault.example.com

swctl admin project create hermes-webull swctl admin secret set hermes-webull WEBULL_APP_KEY # prompts; value never in argv/history swctl admin secret set hermes-webull WEBULL_APP_SECRET swctl admin token create hermes-webull --name jarvis --expires-days 180

2. Machine
export SW_SERVER_URL=https://vault.example.com SW_TOKEN_ID=<token id> SW_TOKEN_NAME=jarvis

swctl setup # paste the one-time setup code the website (or --setup-code) shows

swctl export # KEY=VALUE lines swctl export --format json swctl run -- python my_bot.py # run a command with secrets in its environment

Hermes Agent integration

Hermes supports custom vaults through a command helper that prints KEY=VALUE lines at launch. That's exactly what swctl export does. See examples/hermes/ for a wrapper script and config.

AI agent tools with approval (sw-mcp)

sw-mcp gives an agent tools for an application, such as Gmail, as an MCP server. Every action goes through the token's rules in aiSecurityWarden: reading may be allowed outright, while sending an email waits until you approve exactly that email (on the website, in swadmin, Telegram or ntfy). The agent is told it's waiting and checks back. See docs/mcp-gmail.md for the Gmail set-up with Hermes, and DESIGN.md for writing a connector for another application.

sw-mcp tools --connector gmail          # the tools, their actions, risks and suggested rules

sw-mcp serve --connector gmail # what Hermes runs (stdio) sw-mcp call gmail_search query=is:unread limit=5 # try one tool by hand; waits for approval if needed sw-mcp setup --token-file ~/.config/securitywarden/gmail-token # store the token from a one-time setup code

Other applications get a connector: one Python class whose tools each declare an action and a risk. An AI can write one: sw-mcp new-connector NAME creates the project (with instructions for the AI in AGENTS.md), sw-mcp guide prints the rules, and sw-mcp check plus the generated tests confirm it's right. Installed connector packages are found by name (--connector NAME). See docs/connectors.md.

Connectors can also come from aiSecurityWarden itself: turn a built-in one (Gmail) on for a project on the website, or upload your own (sw-mcp pack NAME, then Connectors > Upload; encrypted in the browser, account-wide, versioned with a backup of the version replaced). sw-mcp serve then loads whatever the token's project uses, with no --connector needed, and picks up new versions as you choose: at once, or on the next restart.

Teaching the agent the rules

Every agent connected to sw-mcp is told the essentials when it connects: how to wait for an approval, to treat email and web content as untrusted, to use only setup codes you typed, and to update through securitywarden_update (never pip or pipx, never killing sw-mcp). Agents that support skills can get the full guide too:

sw-mcp skill install hermes     # Hermes Agent: ~/.hermes/skills/aisecuritywarden/SKILL.md

sw-mcp skill install claude # Claude Code: ~/.claude/skills/aisecuritywarden/SKILL.md sw-mcp skill zip claude # Claude app: upload the .zip in its Skills settings

Then start a new session in the agent. sw-mcp serve keeps skills it installed up to date after each client update; a SKILL.md you wrote yourself is never replaced.

Admin commands

Command
`swctl admin project createlistdelete NAME`manage projects
`swctl admin secret setgetdelete PROJECT NAME`values read from a prompt or stdin
swctl admin secret list PROJECTnames only
swctl admin token create PROJECT --name N [--expires-days D] [--allow-ip ADDR]...prints the token once; --allow-ip (address or CIDR, repeatable) pins where it may connect from
`swctl admin token set-ips ID --allow-ip ADDR... \--any`replace or remove a token's allowed addresses
swctl admin token list [PROJECT]status, expiry, last used, last IP, allowed addresses, approval
`swctl admin token create ... --approval session\every_fetch [--session-ttl 8h] [--channel C]...`require a person to approve the token's use (see below)
`swctl admin token set-approval ID --approval none\session\every_fetch [...]`change or remove it; ends pending requests and approved sessions
swctl admin token reset-approval-limits IDlet a token that hit its hourly limit ask again now (also in swadmin: Reset approval limit…)

| swctl admin approvals list / approve ID [--match NN] / deny ID | decide pendi

冒頭だけを表示しています。続きはリポジトリで読めます