{
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
  "name": "app.trysonar/sonar",
  "description": "App Store Optimization tools for AI agents — keyword research, difficulty, rankings, reviews, and competitor analysis for iOS and Google Play.",
  "serverInfo": {
    "name": "Sonar",
    "version": "0.13.2"
  },
  "title": "Sonar",
  "version": "0.13.2",
  "websiteUrl": "https://trysonar.app/docs/mcp",
  "repository": {
    "url": "https://github.com/trysonar/mcp",
    "source": "github"
  },
  "remotes": [
    {
      "type": "streamable-http",
      "url": "https://trysonar.app/mcp",
      "headers": [
        {
          "name": "Authorization",
          "description": "Bearer <Sonar API key (aso_…)> — or omit and authorize via OAuth (browser sign-in; OAuth-capable clients discover the flow automatically). Keyless without OAuth serves the free-tier tools only.",
          "isRequired": false,
          "isSecret": true
        }
      ]
    }
  ],
  "packages": [
    {
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "identifier": "@sonarapp/mcp",
      "version": "0.13.2",
      "runtimeHint": "npx",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "name": "SONAR_API_KEY",
          "description": "Sonar API key (aso_…). Optional — without it the server runs in free mode: app search/lookup, ASO score, keyword extraction, suggestions, and top charts (shared 30 req/day per IP) plus keyword metrics (5 keywords/day). All other tools require a key.",
          "isRequired": false,
          "isSecret": true
        },
        {
          "name": "SONAR_API_URL",
          "description": "Override the API base URL (default https://api.trysonar.app).",
          "isRequired": false
        }
      ]
    }
  ],
  "capabilities": {
    "tools": {}
  }
}