Heimdall

io.github.erayendesPublished by GitHub account erayendesv3.0.0Updated Nov 8, 2026

Every App Store Connect + StoreKit 2 endpoint. 786 tools in 14 profiles, narrow to 17.

The publisher's own server: mowteng

Overview

AI-generated overview

Local MCP server that turns App Store Connect and StoreKit 2 APIs into tools so an assistant can manage apps, releases, TestFlight, pricing and reviews.

What you can do
  • Find apps and search across all available tools
  • Manage releases, builds, TestFlight groups and Xcode Cloud
  • Handle subscriptions, in-app purchases, pricing and store listings
  • Read and reply to customer reviews
  • Upload, arrange and delete screenshots, videos and other media files
  • Pull sales and finance reports, Game Center and provisioning data
When to use it
Useful when you want to do App Store Connect chores by asking instead of clicking through the dashboard: checking which builds are stuck in review, summarizing reviews, adjusting subscription prices across countries, or attaching builds to tester groups.
Requirements
Runs locally over stdio with Node.js 20.19 or later. Needs an App Store Connect API key: key ID, issuer ID and the .p8 private key, normally stored via the setup command in the macOS Keychain, or supplied through ASC_KEY_ID, ASC_ISSUER_ID and ASC_PRIVATE_KEY / ASC_PRIVATE_KEY_PATH. Network access to Apple's APIs is required.
Before you install
The server holds an App Store Connect API key that can act on your account; give it the narrowest role that works. It can change prices, delete items, alter code signing and access, release versions and reply to reviews, asking for typed CONFIRM or yes/no before risky steps. Read-only mode hides writes. Setup registers profiles in AI apps it finds on your machine.

Installation

In SourceWeft

  1. Open Heimdall in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Heimdall — App Store Connect MCP

Your whole App Store Connect account, in one tool.

[npm version] [npm downloads] [CI] [License: MIT] [Yerli üretim]

🇬🇧 English · 🇹🇷 Türkçe

Heimdall 3.0 is here! 🎉

I released Heimdall three months ago. Since then it has been downloaded more than 6,800 times from npm, about 1,700 installs a month. It has passed 50 stars on GitHub, with 37 releases in 3 months. Thank you all; 3.0 is built on exactly the feedback you sent.

3.0 is the biggest update Heimdall has had:

  • Profiles are cut by the work you do: 13 profiles, 50 sub-profiles.
  • Images and files now take just four tools: we removed 73 separate ones. media__list, media__upload, media__arrange and media__delete handle everything from screenshots to build files.
  • Everything you send to review goes in one call.
  • The confirmation dialog is clear and plain.

Everything that changed is in the changelog.

If you see anything odd, I'd love to hear about it.

Ask, and it answers. Tell it, and it's done.

  • "Summarize this week's 1-star reviews and draft replies."
  • "Which builds are stuck in review?"
  • "Raise this subscription's price in every country."
  • "What does this subscription cost in each country?"
  • "Which screenshots are on the store listing?"
  • "Add build 42 to the Internal and External groups."
  • "Why did my Xcode Cloud build fail?"

Almost anything you'd click through App Store Connect to do, you can now just ask your AI to do. More examples in the Guide.

[Asking an AI what a subscription costs worldwide; Heimdall answers in one tool call]

A real AI session, sped up. The App Store Connect account is a stand-in so the recording can be public.

Heimdall

One package for the App Store Connect API and the App Store Server API (StoreKit 2), built from Apple's own OpenAPI specification. 14 profiles, 51 sub-profiles, 786 tools. Each profile runs as its own small MCP server.

Apple's specification lists 1036 API operations. Heimdall leaves out the 185 that Apple has deprecated or replaced with a newer version, and 19 that repeat another operation from the other side or that no task needs. Of the remaining 832, 734 become tools, and 52 hand-written ones join them: 786 tools in all. The other 98 are covered by the media tools, which do in one call what took several raw ones.

Most App Store Connect MCP servers give you a hand-picked slice of the API. That works until you need the one endpoint they left out, and then you're off hunting for yet another tool.

Heimdall does the opposite: it gives you the whole API, cut by the work you do. Releases, TestFlight, subscriptions and in-app purchases, the store page and reviews, Game Center, Xcode Cloud, provisioning, webhooks, sales and finance reports: each is a profile, and a big one splits into sub-profiles, so monetization:subscription loads subscriptions without the rest of the money tools. You pick what you need, and add or remove profiles whenever you like.

ASC-Core comes with every profile. Finding your apps, searching every tool, and the media tools are the same whatever you work on, so they run once, in a server of their own that setup registers next to your picks. The media tools handle every screenshot, video, image and file App Store Connect takes: store page media, App Clip and Game Center images, in-app purchase and subscription images, review screenshots and attachments, encryption documents, routing coverage, background asset and build upload files (the full list).

Profiles shows what each one covers, down to every tool. You don't have to memorize any of it, though: ask "Is there a tool for in-app events?" and Heimdall tells you which profile has it.

Not sure which profiles you need? The starter packs suggest a set for your role.

Runs on your machine

Most MCP guides recommend remote HTTP servers. Heimdall runs locally instead. It reads your App Store Connect key from the Keychain, signs a short-lived token and talks to Apple directly. Nothing sits in between, so your key stays with you.

mermaid
flowchart LR  ai["Your AI app"] -->|"stdio, no network"| h  subgraph mac["Your machine"]    h["Heimdall<br/>read-only mode hides every write"] --> gate["Asks before risky changes"]    gate --> rl["Paces requests under<br/>Apple's rate limit"]    rl --> sign["Signs a 20-minute token"]    kc[("Keychain")] -.->|"key, read when needed"| sign  end  sign -->|HTTPS| apple["App Store Connect API"]

[!NOTE] Give your key the narrowest role that does the job. Roles explains what each App Store Connect role can do.

Asks before risky changes

Before changing a price, giving someone Admin access or deleting something, Heimdall asks you to confirm and shows what will change. By default it asks in two ways:

  • You type CONFIRM for changes to revenue, deletions, code signing and access, and for the few steps that cannot be walked back: releasing a version, ending a pre-order, expiring a build. Assigning a build to beta groups in one call (testflight__assign_build_to_groups) asks for CONFIRM too.
  • You answer yes or no for the other steps that reach customers, players or testers: sending something to review, starting a new subscription or in-app purchase version, changing a phased rollout, sending a build to external review, selling in a country, changing a product page test, sending a score or achievement for a player, changing the message customers see while cancelling a subscription, replying to a customer review.

Everything else goes through your AI app's own approval.

mermaid
flowchart LR  w["A write"] --> q{"What does<br/>it change?"}  q -->|"money, deletion,<br/>signing, access"| c["You type CONFIRM"]  q -->|"reaches customers,<br/>players or testers"| y["You answer yes or no"]  q -->|"anything else"| a["Your AI app's approval"]

If your AI app can't show the question (like the Code tab in Claude Desktop), Heimdall asks in a window of its own on a Mac. Its button says what it does: Remove, Upload, Delete. The AI can neither see nor press it, and waits until you answer.

[Heimdall's confirmation on a Mac: Remove a screenshot from the App Store page? Milowda Test App, iOS 1.0, Turkish; shot2.png will be taken off this page; the file stays in the media library. Buttons: Cancel and Remove.]

More in Security.

Works alongside Fastlane

Heimdall doesn't replace Fastlane; it complements it. Fastlane for the pipeline, Heimdall for everything you'd otherwise do by hand.

Setup

One command:

bash
npx -y @erayendes/asc-mcp setup
[The browser setup, step 1: each profile with its tool count and token cost]

Setup in the browser: pick what you need and see what it costs the AI as you go. All four steps are in Setup.

Coming from 2.x? Run setup once more and pick your profiles again; the old ones no longer exist. To stay on 2.x, use @erayendes/[email protected].

It asks whether to continue in your browser (recommended) or the terminal. You'll need an App Store Connect API key; the browser page tells you which role to give it from what you pick, so you can run setup before creating the key. Node.js 20.19 or later.

Setup does two things: it saves your key, and it registers the profiles you pick, with ASC-Core beside them, in every AI app it finds. Your AI can do the second half for you with register; the key is always yours to hand over, through setup.

Want your AI to install it for you, or to use it in Xcode 27? Everything else is in Setup.

About the name and the project

In Norse mythology, Heimdall keeps watch over Bifröst, the rainbow bridge that links Asgard to the nine realms. Here, his job is to guard the road between your App Store Connect account and your machine. That's where the name comes from.

I build Heimdall on my own, in the evenings, and release it free and open source under the MIT license. If it gets you out of the App Store Connect dashboard, it has done its job.

License

MIT © Eray Endes

SECURITY.md | SUPPORT.md | CHANGELOG.md | CONTRIBUTING.md | CODE_OF_CONDUCT.md | GOVERNANCE.md

Heimdall is generated from the App Store Connect OpenAPI specification published by Apple Inc. App Store Connect, TestFlight, StoreKit, Xcode and Game Center are trademarks of Apple Inc. This project is not affiliated with Apple Inc.

Source: README.md at commit 50bb30d

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

10
  1. v3.0.0LatestNov 8, 2026
  2. v2.8.0Oct 26, 2026
  3. v2.7.1Oct 16, 2026
  4. v2.7.0Oct 14, 2026
  5. v2.6.0Oct 11, 2026
  6. v2.5.0Oct 1, 2026
  7. v2.4.2Sep 29, 2026
  8. v2.4.1Sep 23, 2026
  9. v2.4.0Sep 18, 2026
  10. v2.3.0Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Mowteng integrations