Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Unlock LSP-powered code intelligence for GraphQL schemas in .graphql/.gql files and JS/TS codebases, enabling schema-aware diagnostics, go-to-definition, find references, hover info, and validation directly in your editor.
npx claudepluginhub trevor-scheer/graphql-analyzer --plugin graphql-lspA fast, Rust-powered GraphQL tooling suite with IDE support, CLI validation, and AI agent integration.
GraphQL Analyzer provides real-time validation, navigation, and linting for GraphQL projects. It works with pure .graphql files and embedded GraphQL in TypeScript/JavaScript, Vue, Svelte, and Astro components, with full support for multi-project workspaces and remote schema introspection.
Under the hood, the analyzer uses a query-based architecture with incremental computation via Salsa. This means only the parts of your project affected by a change are recomputed, keeping the IDE responsive even in large codebases.
This project draws heavy inspiration from rust-analyzer for its architecture, and builds on the patterns established by graphql-language-service and graphql-config from the GraphQL community.
Install GraphQL Analyzer from the VS Code Marketplace, or search "GraphQL Analyzer" in the Extensions view.
Create a config file in your project root (.graphqlrc.yml, .graphqlrc.toml, or .graphqlrc.json):
# .graphqlrc.yml
schema: "schema.graphql"
documents: "src/**/*.{graphql,ts,tsx,vue,svelte,astro}"
Open any GraphQL file, TypeScript/JavaScript file, or Vue/Svelte/Astro component with embedded GraphQL. You'll get:
Install the CLI for CI/CD integration:
# Homebrew (macOS/Linux)
brew install trevor-scheer/graphql-analyzer/graphql-analyzer
# Or via install script
curl -fsSL https://raw.githubusercontent.com/trevor-scheer/graphql-analyzer/main/scripts/install.sh | sh
Validate your GraphQL:
graphql validate
graphql lint
Use --format json or --format github for CI integration.
For full CLI documentation, see the CLI README.
For GitHub-native CI with inline PR annotations, SARIF, and an optional summary comment:
- uses: actions/checkout@v4
- uses: trevor-scheer/graphql-analyzer-action@v1
See the GitHub Action docs and the action repo.
schema: "schema.graphql"
documents: "src/**/*.{graphql,ts,tsx,vue,svelte,astro}"
extensions:
lint:
extends: recommended
rules:
noDeprecated: warn
If your build pipeline transforms schemas (e.g., directive-based transforms), queries can be validated against the build output instead of the source SDL:
extensions:
graphql-analyzer:
resolvedSchema: "generated/schema.graphql"
When configured, query validation and completions use the resolved schema while goto-definition and hover prefer source files (falling back to the resolved schema for generated fields).
For multi-project setups and advanced configuration, see the Configuration Guide.
| Component | Description |
|---|---|
| VS Code Extension | IDE features, installation, troubleshooting |
| CLI | Commands, CI/CD integration, output formats |
| LSP Server | Editor integration, Neovim setup, debugging |
| MCP Server | AI agent integration for Claude and others |
| Claude Code Plugin | GraphQL LSP plugin for Claude Code |
| Development Guide | Building from source, testing, contributing |
MIT OR Apache-2.0
Share bugs, ideas, or general feedback.
Based on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
GraphQL Inspector validation for schema diffing, breaking change detection, and operation validation.
Agent skills for AI coding agents working with Apollo GraphQL tools and technologies
GraphQL API design, optimization, and implementation expert for scalable API architectures
Build GraphQL servers with schema-first design, resolvers, and subscriptions
Commands for designing and documenting REST and GraphQL APIs
Builds GraphQL APIs with schema design, resolvers, error handling, and performance optimization using Apollo or Graphene. Use when creating flexible query APIs, migrating from REST, or implementing real-time subscriptions.
TypeScript native LSP plugin powered by tsgo
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claim