graphql-server
A library setting up a GraphQL server in a variety of frameworks
Decision gist · record as of 2026-08-14
Yes, if you are building a GraphQL API in Python and want a framework-agnostic execution layer. The low install friction, MIT license, and broad framework support make it a practical choice. The 362-day release gap warrants checking whether the project's maintenance pace matches your needs, but the stable classifier and zero known vulnerabilities suggest it is suitable for production use.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9 or later; graphql-core must be installed as a runtime dependency.
- Low install friction; depends only on graphql-core.
- Maintenance status is aging—last release was 362 days ago, though the repository remains active and the package is marked Production/Stable.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute this package freely provided you include the license notice.
last release 2025-08-17 (362 days) · last repo commit 2025-08-17 · 134 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 151,881 downloads/mo, #10,918 on PyPI
Alternatives
Verify before relying
pip install graphql-server
from graphql_server import execute_sync
from graphql import build_schema
schema = build_schema('type Query { hello: String }')
result = execute_sync(schema, '{ hello }')- Whether the 362-day gap since last release indicates active maintenance or dormancy relative to the project's typical release cadence.
- Performance characteristics and scalability limits for concurrent subscriptions or high-volume query execution.
What it is and what it does
GraphQL-Server is a base library that wraps graphql-core to provide a standardized interface for executing GraphQL queries, mutations, and subscriptions across multiple Python web frameworks. It passes all GraphQL specification tests and supports synchronous execution, asynchronous views, file uploads, and WebSocket-based subscriptions. Rather than being a standalone server, it acts as a bridge—you use its core functions (execute, execute_sync, subscribe) within your chosen framework (Django, Flask, FastAPI, aiohttp, Sanic, Channels, Litestar, Quart, Chalice, WebOb, or ASGI) to handle GraphQL operations.
The package is intended for developers building GraphQL APIs on top of existing Python web infrastructure. It handles the protocol and execution details so you can focus on schema design and resolver logic. The library includes type hints and docstrings throughout, and the repository provides integration examples for each supported framework.
Use it for
- Add GraphQL query execution to a FastAPI or Flask application without building the execution layer from scratch.
- Implement WebSocket-based GraphQL subscriptions in a Django or aiohttp application using the subscribe function.
- Handle file uploads in GraphQL mutations across multiple framework backends using the built-in Upload support.
- Migrate a GraphQL server from one framework to another by reusing the same graphql_server integration pattern.
- Build a custom GraphQL server on top of a framework not yet listed by using the public execute/execute_sync/subscribe functions as a blueprint.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are building a GraphQL API in Python and want a framework-agnostic execution layer.
The low install friction, MIT license, and broad framework support make it a practical choice. The 362-day release gap warrants checking whether the project's maintenance pace matches your needs, but the stable classifier and zero known vulnerabilities suggest it is suitable for production use.
Install
graphql-server on PyPI
Before you install
Low install friction; depends only on graphql-core. Maintenance status is aging—last release was 362 days ago, though the repository remains active and the package is marked Production/Stable.
Requires Python 3.9 or later; graphql-core must be installed as a runtime dependency.
License in practice
MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute this package freely provided you include the license notice.
Quickstart
pip install graphql-server
from graphql_server import execute_sync
from graphql import build_schema
schema = build_schema('type Query { hello: String }')
result = execute_sync(schema, '{ hello }')
Verify before relying
- Whether the 362-day gap since last release indicates active maintenance or dormancy relative to the project's typical release cadence.
- Performance characteristics and scalability limits for concurrent subscriptions or high-volume query execution.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <4.0,>=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagegraphql-core |
| Maintenance | Aging 362 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 151,881 / month, #10,918 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python Modules |
Evidence: graphql_server-3.0.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “graphql framework integration”
- graphql-serverGraphQL-Server provides helper functions to execute GraphQL queries…
- graphql-server-coreGraphQL-Server-Core provides base utilities and helper functions for…
- strawberry-graphqlStrawberry GraphQL is a Python library for building GraphQL APIs…
Give your agent the search over MCP, or paste the wish link into any chat.
More Libraries packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.
Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
See also graphql-server-core · graphql-relay · Flask-GraphQL · graphql-core · gql · starlette-graphene3 · strawberry-graphql · graphql-core-promise · python-graphql-client · ariadne