modelcontextprotocol/access: The GitOps Approach to Open Source Identity
How the fastest-growing AI protocol uses Pulumi and TypeScript to turn cross-platform community management into a single pull request.
- The Model Context Protocol automates its administrative human layer by treating cross-platform access as Infrastructure as Code.
- A single type-safe pull request atomically provisions GitHub access, generates secure Google Workspace accounts, and manages Discord roles.
- Custom Pulumi dynamic providers overcome platform-specific API limitations, such as Discord's aggressive rate limiting.
The Human Bottleneck of Open Source
The tech world has focused heavily on what the Model Context Protocol actually does. Acting as a universal connector for AI agents, it solves the integration nightmare of custom glue code. But the modelcontextprotocol/access repository reveals a different story: how the organization survives its own hyper-growth.
When a new core maintainer joins a booming open-source project, the administrative tasks pile up. Someone must manually invite them to the GitHub organization, add them to specific repositories, create a Discord role, and provision a professional email address. This fragmented process creates a severe bottleneck.
The Pull Request as an IT Department
The solution lies in opt-in provisioning. The repository uses a central configuration file to act as a declarative IT ticket. Merging a pull request triggers a fully automated deployment pipeline.
{
github: 'dsp-ant',
discord: '166107790262272000',
googleEmailPrefix: 'david',
memberOf: [ROLE_IDS.LEAD_MAINTAINERS],
}
Adding a single object to src/config/users.ts initiates the entire sequence. The system detects the Google email prefix and automatically triggers the creation of a real Google Workspace account using Pulumi upon merge.
Provisioning the Unprovisionable
Translating this configuration into reality requires heavy lifting. The codebase uses Pulumi to generate 24-character passwords, hash them with SHA-1 for Google's Admin SDK, and export them safely as encrypted secrets.
Discord presents a unique challenge. Because no robust official Pulumi provider exists for all Discord features, the project implements a custom Pulumi Dynamic Resource Provider. This custom code handles REST API exponential backoff and jitter to defeat Discord's aggressive rate limiting.
The Post-Dashboard Era
Manual SaaS dashboards are security risks. They lack clear audit trails and rely on shared admin credentials. Declarative, PR-driven access protected by repository owners provides a blueprint for sovereign open-source organizations.
| Feature | Traditional Management | GitOps Approach (MCP) |
|---|---|---|
| Onboarding | Manual clicks across 3 dashboards | 1 atomic Pull Request |
| Auditability | Fragmented SaaS logs | Git commit history |
| Sync State | Ad-hoc and prone to drift | Guaranteed atomic state via Pulumi |