There is a lot of domain knowledge that is contained in core or in extesions. For instance, should the Wikimedia GraphQL server have a type for every type of Page in MediaWiki? Should it have a type for every type of image? Should it maintain different types for each type of Entity in Wikibase? What about the types on Commons? Also, arguments typically have enums for acceptable values, should the server maintain it's own list? In the current implementation, this domain knowledge would have to be copied into the Wikimedia GraphQL server's code and would have to be maintained, which is a huge burden.
Create a GraphQL extension for MediaWiki that will expose a GraphQL endpoint and execute Action API methods in PHP. The GraphQL Schema will stay relatively the same as it is today.
The extension should provide all of the schema for the core API actions, and provide hooks for other extensions to be able to add/modify the schema. For instance, Wikibase would provide the typing(s) for WikibaseEntity. Likewise, Structured Discussions will provide the types for Flow.
The Wikimedia GraphQL server should override some of the schema that comes from Wikidata and do the delegation for it. For example, Wikidata might return a sitelink with a dbkey and the Wikimedia GraphQL server should transform this to a link to the page schema on the relevant wiki (as it does now). This way Wikidata (or any MediaWiki site) only serves its own data (that is normally retrievable with the Action API)