SSTIM MCP: Senses, Stimuli and Perception について
SSTIM MCPは、感覚・刺激・知覚に関するSSTIM語彙を参照する読み取り専用サーバーです。研究者やAIアシスタントは公開版の用語、定義、関連情報を検索でき、レビュー済みの提案を公開GitHub Issueとして提出できますが、オントロジーは変更しません。
主な機能
- 01固定リリースの一覧表示
- 02ラベルや定義による概念検索
- 03用語の関係と出典の取得
- 04提案の作成と閲覧
- 05承認を得たGitHub Issueの提出
活用シーン
- 01データ項目とSSTIM用語の対応付け
- 02リリース間での用語定義の比較
- 03オントロジー間マッピングの確認
- 04人手レビュー用の語彙修正案の準備
MCP 対応
公開済みSSTIMデータの検索ツールと、提案や公開Issueを扱うワークフローをMCPクライアントに提供します。Issue提出には運用者による明示的な有効化と承認が必要で、SSTIMオントロジーへの書き込みは行いません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
8掲載時のツール一覧 · 2 週間前に更新
このツールにパラメーターはありません。
詳細
SSTIM MCP:感覚、刺激、知覚、研究
ステータス: バージョン 0.3.0 では、読み取り専用のナレッジツールに、明示的に承認された GitHub ベースのコントリビューションワークフローが追加されています。現在の MCP 2026-07-28 ステートレスプロトコルと、従来の初期化ベースのクライアント(2025-11-25、2025-06-18、2024-11-05)に対応しています。
このアダプターは、Concept Reference API から固定された SSTIM リリースデータを取得します。オントロジーへの書き込みインターフェースでも、ホスト型のリモート MCP エンドポイントでもありません。 4 つのナレッジツールは、認証情報がなくても引き続き利用できます。 追加の 4 つの提案ツールでは、提案の下書き、GitHub のレビュー課題の閲覧、そして承認済みのオペレーターが Issues への書き込みトークンを設定し、公開する内容そのものを承認した場合に限り、レビュー用 GitHub issue の送信を行えます。 どのツールも正規の RDF を変更せず、科学的な主張を確立済みの事実として受け付けることもありません。
配布元と著作者
主な著作者および責任を負うプロジェクト: SSTIM W3C Community Group。 正規のソースは w3c-cg/sstim です。
謝辞: SSTIM の幅広いエコシステムへの貢献と支援に対し、BioSynCare に感謝します。BioSynCare は、オープンな SSTIM 語彙の権威ではありません。
Community Group の活動は、W3C 勧告でも W3C が推奨する製品でもありません。
npm からインストール(公開済み)
@sstim/[email protected] は npm で公開されています。 公式 MCP Registry には io.github.w3c-cg/sstim として登録されており、正規の W3C Community Group リポジトリから OIDC 経由で登録されています。
Node.js 20+ と互換性のある stdio MCP クライアントを使用し、command に npx、arguments に ["--yes", "@sstim/[email protected]"] を設定してください。サーバーにチェックアウトや API トークンは必要ありません。スモークテストを行う場合は、packages/sstim-mcp/ の外で実行してください。このディレクトリでは、npm が公開済みの実行ファイルではなく、ローカルパッケージを解決することがあります。
cd /tmp
npx --yes @sstim/[email protected]
このコマンドはプロトコルメッセージを待機します。MCP クライアントがメッセージを送信するまでは、何も表示されないのが正常です。再現性を確保するため、npm の正確なバージョンを固定してください。開発時に限り、チェックアウトしたリポジトリから node packages/sstim-mcp/server.mjs を実行してください。
配布とディレクトリ掲載の状況。 各 npm tarball は不変です。以降のリポジトリドキュメントの変更が npm のパッケージ README に反映されるのは、次回リリース時のみです。
前提条件
- AI クライアントを実行するマシンに Node.js 20+ がインストールされていること。
- サーバーを開発する場合に限り SSTIM をチェックアウトしていること。公開済みの npm パッケージには不要です。
- 読み取り専用のリファレンス API(以下のデフォルト)にネットワーク接続できること。
- ローカル stdio MCP サーバーに対応した AI クライアントがあること。
以下のローカルチェックアウトの各例では、/absolute/path/to/sstim/packages/sstim-mcp/server.mjs を、このファイルの実際の絶対パスに置き換えてください。Windows では C:/Users/you/sstim/packages/sstim-mcp/server.mjs のようなパスを使用し、起動するアプリケーションの PATH に node が含まれていることを確認してください。
サーバーは AI クライアントによって起動されます。手動で実行すると、stdin で JSON-RPC メッセージを待機するため、何もしていないように見えます。人が読めるログを stdout に出力してはなりません。
AI アシスタントは SSTIM MCP で何ができますか?
8 つの具体的な AI プロンプトを使った実践チュートリアル、前提条件、ツールの使い方と制限については、 SSTIM MCP マニュアルの章 および MCP の例をまとめたクックブックをご覧ください。
Codex、Claude Code、GitHub Copilot、Cursor、Gemini および互換性のある Neovim プラグインを使うユーザー向けの例を以下に示します。各タスクでは、AI アシスタントの通常の推論能力とプロジェクトへのアクセスに、読み取り専用のリリース済み SSTIM データを組み合わせています。
| タスク | 依頼する内容 | SSTIM MCP が提供するもの |
|---|---|---|
| コードとデータスキーマの整合 | 「セッションの JSON を確認し、周波数、技法、チャネル、セッションの各フィールドを SSTIM に対応付けてください」 | 正規の用語 IRI とモジュール/リリースの来歴情報。自動的に検証済みのマッピングではありません |
| 研究用語のレビュー | 「バイノーラル技法とアイソクロニック技法の意味を、刺激と EEG の帯域を混同せずに比較してください」 | 定義と関連する概念へのリンク |
| バージョン移行 | 「この正確な IRI を 0.18.0 と 0.19.0 で取得し、明示された差異を報告してください」 | バージョンを指定した詳細、非推奨情報、マッピング |
| オントロジー間の相互運用 | 「この用語の外部マッピングを、正確な SKOS 関係も含めて列挙してください」 | マッピング先の外部 IRI と関係の強さ |
| コードベースの監査 | 「公開済みの SSTIM プロパティに一致するコード内のフィールドを見つけ、不明なフィールドに印を付けてください」 | 安定した識別子。推定された一致の確認は人が行います |
| 科学文書の作成 | 「出典を参照しながらこれらの用語を説明し、エビデンスとラベルを区別してください」 | リリース済みの定義、出典モジュール、ハッシュ |
| 標準の修正 | 「この用語または不足箇所を見つけ、修正を送るためのリンクを用意してください」 | ユーザーが確認する Contribution Bridge のリンク。投稿ではありません |
| 再現可能な研究 | 「このプロトコルで引用するすべての SSTIM 用語に、リリース 0.19.0 だけを使用してください」 | 再現性のためにリリースを指定したレコード |
これらの MCP ツールは、自動 SHACL 検証を行ったり、刺激プロトコルを実行したり、診断を行ったり、オントロジーを変更したりするものではありません。 データの検証には Python sstim または JavaScript @sstim/core を使用し、参照用パッチの調査や作成には Workbench を使用してください。
貢献のワークフロー(0.3.0 以降)
新しい sstim_draft_contribution ツールは、認識論的ステータスを明示した、構造化された未レビューのイシュー提案を作成します。sstim_list_contributions と sstim_get_contribution は、公開されたイシューレコードと実際の状態を取得します。sstim_submit_contribution は、オペレーターが SSTIM_ENABLE_PUBLIC_SUBMISSIONS=1 を明示的に設定し、適切な GitHub Issues の書き込みアクセス権を持つ SSTIM_GITHUB_TOKEN が設定され、オペレーターが提案の内容を正確に確認した後で approvedForPublicSubmission: true が指定された場合に限り、公開 GitHub Issue を作成します。ローカルのクールダウンとフィンガープリントのスキャンにより、誤った重複を減らします。これは、非公開の素材を無人で送信する許可ではありません。
トークンをプラグインマニフェストや会話に記載しないでください。ホストの認証情報管理または環境管理を使用してください。GitHub の認証情報は同梱されていません。 貢献は自動的に受け入れられるわけではありません。また、GitHub Issue がクローズされても、科学的な主張として受け入れられたとは限りません。
対応する提案の種類は、修正、不足している知識、科学的エビデンス、相互運用性、研究上のニーズ、その他です。関連する対象には、感覚変換、知覚、音や音楽に基づく実践、神経科学、創作活動、技術的応用などが含まれます。SSTIM はこれらの分野を網羅する百科事典ではないため、不足箇所の報告も有効です。出典は貢献者が提示し、独立して評価する必要があります。
ツール
| ツール | 結果 |
|---|---|
sstim_list_releases | サポート対象の固定リリースと最新の利用可能なバージョン |
sstim_search_concepts | IRI/CURIE、ラベル、別名、定義による検索 |
sstim_get_concept | 正確な用語、定義、宣言された関係、出典の来歴を取得 |
sstim_prepare_feedback | ユーザー向けの Contribution Bridge リンク。送信は行いません |
sstim_draft_contribution | 構造化された未レビューの提案文。送信は行いません |
sstim_list_contributions | 最近の公開コントリビューション課題とその GitHub 上の状態 |
sstim_get_contribution | 公開コントリビューション課題のうち1件、その未検証のテキストと状態 |
sstim_submit_contribution | レビュー用の公開 GitHub 課題。運用者が送信を有効にしていない場合は拒否されます |
sstim_submit_contribution を除くすべてのツールは読み取り専用です。このツールも、上記の説明に従って運用者が有効にしない限り無効です。フィードバックツールが生成するのは、選択した公開コンセプトの ID とラベルを含むリンクのみで、会話のテキストをコピーすることはありません。ユーザーは課題を確認し、公開するかどうかを判断します。SSTIM オントロジーに書き込むツールはありません。
ソフトウェアを設定する
使用する AI クライアントに適した設定を1つ選択してください。これらの設定は相互に置き換えられません。サンプルファイルは examples/ にあります。
1. VS Code:GitHub Copilot Chat(エージェントモード)
examples/vscode.mcp.json の内容を使って、プロジェクト内に .vscode/mcp.json を作成または更新します。
{
"servers": {
"sstim": {
"type": "stdio",
"command": "npx",
"args": ["--yes", "@sstim/[email protected]"]
}
}
}
VS Code で MCP: List Servers を実行するか、コマンドパレットから MCP コマンドを使用して、sstim を起動します。その後、GitHub Copilot Chat → エージェントモードを開き、ツール選択メニューで SSTIM ツールを有効にします。
これは VS Code の servers 形式であり、Cursor と Gemini で使われる mcpServers 形式ではありません。VS Code では、ポータブルなプロジェクトルートの .mcp.json も使用できますが、キーが異なります。詳しくは公式の MCP 設定を参照してください。
2. VS Code:OpenAI Codex 拡張機能/Codex CLI
Codex の IDE 拡張機能と CLI は、~/.codex/config.toml(またはサポートされているプロジェクトスコープの .codex/config.toml)を共有します。examples/codex.config.toml の内容を追加します。
[mcp_servers.sstim]
command = "npx"
args = ["--yes", "@sstim/[email protected]"]
または、Codex IDE 拡張機能からサーバーを設定します。
Settings → MCP servers → Add server → STDIO。求められた場合は、拡張機能を再起動してください。CLI では codex mcp list で設定済みのサーバーを確認できます。この設定は、Copilot Chat 用の .vscode/mcp.json とは別です。
参考:Codex MCP の設定。
3. VS Code:Claude Code 拡張機能/Claude Code CLI
ターミナルで(拡張機能と同じ Claude Code インストールを使って)実行します。
claude mcp add --transport stdio --scope user sstim -- npx --yes @sstim/[email protected]
claude mcp get sstim
次に Claude Code(CLI または VS Code 拡張機能)を開き、/mcp メニューでサーバーが接続され、ツールが表示されていることを確認します。-- 区切り文字は重要です。これより後の引数は Claude の CLI ではなく、npx に渡されます。個人ユーザーのインストールではなく、プロジェクト共有のインストールを行う場合は、プロジェクトの .mcp.json と承認ルールを確認してください。
4. Gemini CLI(VS Code のターミナル内で使用する場合を含む)
ユーザー設定の ~/.gemini/settings.json またはプロジェクトの .gemini/settings.json に追加します。
{
"mcpServers": {
"sstim": {
"command": "npx",
"args": ["--yes", "@sstim/[email protected]"]
}
}
}
examples/gemini.settings.json を参照してください。別の方法として、次を使用できます。
gemini mcp add -s user sstim npx --yes @sstim/[email protected]
Gemini CLI を開き、/mcp を使って接続状況と公開されているツールを確認します。
**Gemini CLI は Gemini Code Assist VS Code 拡張機能と同じ製品ではありません。**この設定は CLI に適用されます。拡張機能のサポートについては、その拡張機能独自の設定を確認してください。 参考:Gemini CLI MCP。
5. Cursor
プロジェクト用に .cursor/mcp.json を作成するか、グローバル設定として ~/.cursor/mcp.json を作成し、
examples/cursor.mcp.json の内容を記述します。
{
"mcpServers": {
"sstim": {
"command": "npx",
"args": ["--yes", "@sstim/[email protected]"]
}
}
}
Cursor Settings → Tools & MCP を開き、サーバーに接続されていることを確認します。
Cursor Agent に sstim_search_concepts を使うよう依頼します。
参考資料:Cursor MCP documentation。
6. Neovim と CodeCompanion.nvim
Neovim は、インストールしただけでは AI/MCP クライアントを提供しません。
CodeCompanion.nvim
を使用している場合は、セットアップに以下を追加するか、mcp テーブルを既存の設定に統合します。
require("codecompanion").setup({
mcp = {
servers = {
sstim = {
cmd = { "npx", "--yes", "@sstim/[email protected]" },
},
},
opts = {
default_servers = { "sstim" },
},
},
})
examples/neovim-codecompanion.lua を参照してください。
CodeCompanion のチャットを開き、CodeCompanion のバージョンに応じて @mcp: ツールグループまたは /mcp ピッカーを使って MCP ツールにアクセスします。このプラグインの MCP クライアントは現在、古い 2025-11-25 ハンドシェイクをサポートしており、このサーバーも引き続き受け入れます。
classic Vim では、組み込みの MCP クライアントを前提としていません。Vim の内外のターミナルで、上記の Claude Code、Codex、または Gemini CLI の設定を使用できます。従来の .vimrc に Neovim の Lua を貼り付けないでください。
インストールを確認する
選択したクライアントを設定したら、次のように依頼します。
SSTIM MCP ツールを使って、現在リリースされているバージョンを一覧表示し、「binaural」を検索して、一致した概念を1つ、正式な IRI と出典情報を使って説明してください。該当する場合は、v0.18.0 と v0.19.0 の結果を比較してください。
検索ツールはエージェントによって自動的に選択される場合がありますが、ツールが呼び出されるかどうかはクライアントの設定とモデルの動作によって異なります。ホストの MCP パネルでツールの一覧を確認することもできます。
このリポジトリ内でテストを実行するには:
npm test -- --run packages/sstim-mcp/mcp.test.mjs
npm run check
npm run build
テストでは、モックされた API データ、旧式および最新の MCP ハンドシェイク、stdio フレーミング、エディター設定例の構文を検証します。名前が挙げられているすべてのエディターのリリースとの相互運用性を保証するものではありません。
プロトコルのバージョンと制約
2026-07-28 は現在の MCP プロトコル改訂版です。
initialize / notifications/initialized を介してプロセス単位のセッションをネゴシエートする
2025-11-25 とは異なり、新しい改訂版ではリクエストごとにメタデータを使用します。このサーバーは両方の方式を実装しています。
- 最新のクライアント:
server/discoverで2026-07-28を通知します。initializeがなくてもツールを使用でき、すべてのリクエストにparams._meta["io.modelcontextprotocol/protocolVersion"]とparams._meta["io.modelcontextprotocol/clientCapabilities"]が含まれます。 結果ではresultType: "complete"とサーバーの識別情報メタデータを宣言します。 - 古いクライアント: 従来の
initializeハンドシェイクと従来のレスポンス構造を引き続き使用します。Neovim プラグインの一部など、実際にインストールされているクライアントをサポートするため、このバージョンへの対応も引き続き重要です。
新しい改訂版だからといって、サーバーがリモートでなければならないわけではありません。stdio も引き続き定義済みのトランスポートです。現在、SSTIM MCP にはStreamable HTTP エンドポイントがありません。リモートの ChatGPT コネクターには、別途デプロイが必要です。
プロトコルの参考資料: MCP 2026-07-28 のバージョニング、 stdio トランスポート、 ディスカバリー。
最新の固定リリースは、ハードコードされたランタイム定数ではなく、API のディスカバリーによって決まります。この更新時点では v0.19.0 です。別途管理されている開発ラインは v0.20.0-dev です。再現性のある調査には、ツール引数で固定リリースを明示してください。
運用上の制限: 読み取り専用のオントロジーカタログ、検索結果は最大 20 件、ホストされた ?q= 検索には非対応、オントロジーのリアルタイム推論や科学的論争の裁定には非対応で、臨床的な意味を保証するものではありません。
デフォルトの参照 URL は
https://w3c-cg.github.io/sstim/api/v1/
です。
オペレーターは SSTIM_MCP_API_BASE を使って参照先を上書きできます。テストには HTTPS またはループバック HTTP を使用できます。プロセス単位のキャッシュにより、再起動するまで繰り返しのリクエストはローカルで処理されます。出力には、用語の IRI、リリース識別情報、ソースへのリンクが保持されます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。