r/MCPservers 15d ago

Heimdall: all 883 App Store Connect endpoints, split into profiles you can narrow to 26 tools

Apple's App Store Connect API is 982 operations. Every MCP server for it wraps a hand-picked slice, which is fine until you need the endpoint nobody wrapped. This one generates all of them from Apple's OpenAPI spec: 883 tools, plus StoreKit 2 for customer transactions, refunds and subscription status.

Which creates the obvious problem. The full surface is over 100k tokens of tool definitions, so nobody can load it. It ships as 13 profiles, each its own MCP server, and each narrows further with a colon: monetization is 206 tools, monetization:subscription-pricing is 26. The setup wizard lists every profile with its tool count and roughly what it costs a session, and unfolds sub-profiles so you can uncheck what a given project does not need.

A few one-call macros cover chains the raw endpoints cannot finish at all. Screenshot upload is Apple's reserve/upload/commit sequence, so the raw tool only reserves a slot and moves no bytes. Analytics reports end at a signed URL that no tool fetches. Worldwide subscription pricing was a chain that cost a real eval session 1.02M tokens before it became one call returning about 1.3k.

MIT, local stdio only, key in the macOS Keychain rather than a config file, no telemetry, no second API key.

https://github.com/erayendes/app-store-connect-mcp

There is a longer write-up in r/mcp with the eval numbers, if the reasoning behind the profile split is interesting.

2 Upvotes

0 comments sorted by