mcpField
O
Oh My Posh Validator

Oh My Posh Validator

リモート
ohmyposh.dev開発ツール23.7k1 日前に更新
リポジトリ公式サイト

Oh My Posh Validator について

Oh My Posh Validatorは、oh-my-poshの設定を扱う開発者向けのMCPサーバーです。JSON、YAML、TOMLの全体設定や個別セグメントを検証し、詳細なエラーと警告を返します。

主な機能

  1. 01設定全体の検証
  2. 02個別セグメントの検証
  3. 03JSON、YAML、TOMLに対応
  4. 04パス付きエラーと警告の表示

活用シーン

  1. 01設定を使う前の有効性確認
  2. 02セグメントを設定に加える前の個別テスト

MCP 対応

HTTP経由で、MCPクライアントに`validate_config`と`validate_segment`ツールを公開します。サーバー情報とツール一覧も取得できます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://ohmyposh.dev/api/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

2
パラメーター型必須説明
formatenumいいえ設定の形式(指定されていない場合は自動検出)json | yaml | toml | auto
contentstringはい文字列形式の設定内容(JSON、YAML、または TOML)

詳細


title: MCP バリデーター関数 description: 'oh-my-posh 設定を検証する Model Context Protocol サーバーを実装した Azure Function'

概要

このディレクトリには、oh-my-posh 設定を検証する Model Context Protocol(MCP)サーバーを実装した Azure Function が含まれています。

エンドポイント

  • POST /api/mcp - 検証リクエストを処理する MCP サーバーエンドポイント
  • GET /api/mcp - サーバー情報と利用可能なツールを返します

対応ツール

validate_config

oh-my-posh 設定を検証します。

  • JSON、YAML、TOML 形式に対応しています
  • JSON パスを含む詳細な検証エラーを返します
validate_segment

セグメントのスニペット(個別のプロンプトセグメント)を検証します。

  • セグメントスキーマ定義に照らして検証します
  • 完全な設定に追加する前に、個々のセグメントをテストするのに便利です
  • JSON、YAML、TOML 形式に対応しています

使用方法

MCP サーバーとして使用する

このサーバーに接続するよう、MCP クライアントを設定します。

{
  "mcpServers": {
    "oh-my-posh-validator": {
      "type": "http",
      "url": "https://ohmyposh.dev/api/mcp"
    }
  }
}
HTTP リクエストを直接送信する
サーバー情報を取得する
curl https://ohmyposh.dev/api/mcp
利用可能なツールを一覧表示する
curl -X POST https://ohmyposh.dev/api/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/list",
    "id": 1
  }'
設定を検証する
curl -X POST https://ohmyposh.dev/api/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "validate_config",
      "arguments": {
        "content": "{\"$schema\":\"https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/
themes/schema.json\",\"blocks\":[]}",
        "format": "json"
      }
    },
    "id": 1
  }'
セグメントのスニペットを検証する
curl -X POST https://ohmyposh.dev/api/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "validate_segment",
      "arguments": {
        "content": "{\"type\":\"path\",\"style\":\"powerline\",\"foreground\":\"#ffffff\",\"background\":\"#61AFEF\",\"template\":\" {{ .Path }} \"}",
        "format": "json"
      }
    },
    "id": 2
  }'

応答形式

検証結果には、以下が含まれます。

  • valid:設定が有効かどうかを示すブール値
  • errors:検証エラーの配列(ある場合)
  • warnings:警告の配列(ベストプラクティス、非推奨事項)
  • detectedFormat:検出または指定された形式
  • parsedConfig:解析済みの設定オブジェクト(デバッグ用)

応答の例:

{
  "jsonrpc": "2.0",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{
          \"valid\": true,
          \"errors\": [],
          \"warnings\": [
            {
              \"path\": \"$schema\",
              \"message\": \"Consider adding \\\"$schema\\\" property for better editor support.\",
              \"type\": \"recommendation\"
            }
          ],
          \"detectedFormat\": \"json\",
          \"parsedConfig\": {...}
        }"
      }
    ]
  },
  "id": 1
}

開発

ローカルでテストするには:

cd website/api
npm install
npm start

次に、http://localhost:7071/api/mcp にリクエストを送信します。

MCP Registry への公開

このサーバーは GitHub Actions を使用して MCP Registry に公開されます。

公開

oh-my-posh のリリースと同様に、バージョンタグをプッシュすると自動的に公開が開始されます。

git tag v9.0.0
git push origin v9.0.0

ワークフローでは、以下の処理が行われます。

  1. タグからバージョンを抽出します(例:v9.0.0 → 9.0.0)
  2. server.json のバージョンを一致するように更新します
  3. server.json ファイルを検証します
  4. GitHub OIDC を使用して MCP Registry で認証します
  5. サーバーをレジストリに公開します

注記:MCP サーバーのバージョンは、oh-my-posh のバージョンと自動的に同期されます。

ファイル
  • server.json - MCP Registry のサーバー設定
  • server.schema.json - 検証用の JSON スキーマ
  • validate-server.js - 検証スクリプト
  • .github/workflows/publish-mcp.yml - GitHub Actions ワークフロー
server.json をローカルで検証する
cd website/api
npm install
cd mcp
node validate-server.js

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。