Commit graph access/src
Author SHA1 Message Date
David Soria Parra
050c9b09f4
Add GitHub user 'dsp' with same access rights as dsp-ant 2026-01-22 11:10:41 +00:00
Jonathan Hefner
ee35c86907
Add MCP_APPS_SDK role for jonathanhefner (ext-apps access) (#37)
Adds the `MCP_APPS_SDK` role for `jonathanhefner` to grant admin access
to the `ext-apps` repository.
2026-01-21 13:41:15 +00:00
Olivier Chafik
f9c122e167
Add MCP_APPS_SDK role for ochafik (ext-apps access) (#35)
Claude-Generated-By: Claude Code (cli/claude-opus-4-5=100%)
Claude-Steers: 1
Claude-Permission-Prompts: 0
Claude-Escapes: 0
2026-01-19 15:15:45 +00:00
David Soria Parra
e36544e3af
Fix ext-apps: mcp-apps-wg should have push, not admin 2026-01-15 22:32:35 +00:00
David Soria Parra
d12dc886c6
Add repo access management for ext-apps, use-mcp, example-remote-client
- Add tarekgh to csharp-sdk with push permission
- Add ext-apps with mcp-apps-wg, mcp-apps-sdk teams and outside collaborators
- Add use-mcp with core-maintainers, moderators and geelen
- Add example-remote-client with core-maintainers, moderators and outside collaborators

This brings these previously unmanaged repos under centralized access control.
2026-01-15 22:22:44 +00:00
Robert Findley
18253ff1a6
Add maciej to go-sdk maintainers; discord ID for findleyr (#34)
* Add maciej to go-sdk maintainers; discord ID for findleyr

Maciej is joining the project from Google. Add him as a go-sdk
maintainer.

Also, add a discord ID for myself.

* Update src/config/users.ts

Co-authored-by: Maciej Kisiel <macio92@gmail.com>

---------

Co-authored-by: David Soria Parra <167242713+dsp-ant@users.noreply.github.com>
Co-authored-by: Maciej Kisiel <macio92@gmail.com>
2026-01-15 22:01:54 +00:00
David Soria Parra
b6eba69c6e
Remove redundant MAINTAINERS from SDK users (now implied)
Since SDK_MAINTAINERS now implies MAINTAINERS via discordImplies,
users with SDK roles no longer need explicit MAINTAINERS membership.

Removed redundant MAINTAINERS from:
- alexhancock (has RUST_SDK)
- chr-hertel (has PHP_SDK)
- ihrpr (has PYTHON_SDK, TYPESCRIPT_SDK)
- liady (has MCP_APPS_SDK)
2026-01-15 14:50:40 +00:00
David Soria Parra
a667c4306a
Add Discord role inheritance via parent traversal and discordImplies
- Add discordImplies field to Role interface for Discord-specific role hierarchy
- Add expandDiscordRoles() function to traverse both GitHub parent chain
  and discordImplies relationships when syncing Discord roles
- SDK_MAINTAINERS now implies MAINTAINERS for Discord

This ensures that users with SDK roles (GO_SDK, PYTHON_SDK, etc.) automatically
get the 'maintainers (synced)' Discord role through:
  GO_SDK -> SDK_MAINTAINERS (via GitHub parent) -> MAINTAINERS (via discordImplies)

Claude-Generated-By: Claude Code (cli/claude-opus-4-5=100%)
Claude-Steers: 5
Claude-Permission-Prompts: 1
Claude-Escapes: 0
2026-01-15 14:16:06 +00:00
David Soria Parra
52112dfb4f
Add Discord IDs for 30 users
Automated matching found 18 users by username/display name:
- CodeWithKyrian, Kehrlann, Kludex, Nyholm, asklar, baxen
- carlpeaslee, evalstate, felixweinberger, jba, jerome3o-anthropic
- joan-anthropic, jonathanhefner, ochafik, olaservo, stallent
- tadasant, topherbullock

Manually provided IDs for 12 users:
- D-McAdams, a-akimov, aaronpk, atesgoral, domdomegg, findleyr
- koic, mikekistler, pederhp, sambhav, toby, tzolov

Claude-Generated-By: Claude Code (cli/claude-opus-4-5=100%)
Claude-Steers: 2
Claude-Permission-Prompts: 7
Claude-Escapes: 0
2026-01-15 14:01:26 +00:00
Liad Yosef
1ee90512f0
chore: add apps-wg and discord/github for liad (#32)
* chore: add apps-wg and discord/github for liad

* Update src/config/roles.ts

Co-authored-by: David Soria Parra <167242713+dsp-ant@users.noreply.github.com>

* fix: PR comments

* minor: comment

---------

Co-authored-by: David Soria Parra <167242713+dsp-ant@users.noreply.github.com>
2026-01-15 00:03:50 +00:00
Tadas Antanavicius
95bcd72877
Add gateways-ig, roles for Tadas (#30)
* Add

* Missing comma

* Add Discord ID

* Prettier
2026-01-14 23:59:37 +00:00
David Soria Parra
c92a40849e
Handle missing Discord members gracefully
When a user with a Discord ID leaves the server (or the ID is invalid),
the sync now logs a warning and continues instead of failing the entire
deploy. This prevents deploys from breaking when someone leaves Discord.

The memberNotFound flag is tracked in Pulumi state so we can identify
stale Discord IDs.

Claude-Generated-By: Claude Code (cli/claude-opus-4-5=100%)
Claude-Steers: 0
Claude-Permission-Prompts: 0
Claude-Escapes: 0
2026-01-14 21:39:53 +00:00
David Soria Parra
9fb0db9f9c
Remove invalid Discord ID for ihrpr
The Discord ID 1086709448816468038 is not a member of the MCP Discord
server, causing deploy failures with 'Unknown Member (code: 10007)'

Claude-Generated-By: Claude Code (cli/claude-opus-4-5=100%)
Claude-Steers: 1
Claude-Permission-Prompts: 2
Claude-Escapes: 0
2026-01-14 21:30:24 +00:00
Den Delimarsky
29f1d92c22
Core Maintainer Discord IDs (#29)
* Add Discord user IDs

* Update users.ts

* Update member roles and remove 'dend' from users config

Removed the user 'dend' from the MEMBERS list. Updated roles for 'ihrpr', 'localden', and 'nickcoai' to reflect new responsibilities and group memberships.

* Update formatting based on prettier

---------

Co-authored-by: Den Delimarsky <53200638+localden@users.noreply.github.com>
Co-authored-by: Den Delimarsky <den@anthropic.com>
2026-01-14 20:55:22 +00:00
Alex Hancock
6db46ea763
chore: add discord identifier for myself (#31)
* chore: add discord identifier for myself

* Update src/config/users.ts

---------

Co-authored-by: David Soria Parra <167242713+dsp-ant@users.noreply.github.com>
2026-01-14 19:52:34 +00:00
Cliff Hall
4c01df2c83
Updated user Cliff Hall (#25)
* Updated user Cliff Hall

- Add email address
- Add discord user id
- Add missing role.REFERENCE_SERVERS_MAINTAINERS

* Updated user Cliff Hall

- Add missing role MAINTAINERS

* Updated user Cliff Hall

- Add missing role WORKING_GROUPS

* Prettier
2026-01-14 09:54:27 +00:00
Radoslav Dimitrov
a3269d383d
Add Discord ID to user configuration for Rado (#28)
* Add Discord ID to user configuration for Rado

* Update src/config/users.ts

---------

Co-authored-by: David Soria Parra <167242713+dsp-ant@users.noreply.github.com>
2026-01-14 09:48:16 +00:00
Christopher Hertel
9cd19af177
Update discord & email for chr-hertel (#27)
* Update discord & email for chr-hertel

* Update src/config/users.ts

---------

Co-authored-by: David Soria Parra <167242713+dsp-ant@users.noreply.github.com>
2026-01-14 09:46:31 +00:00
Luca Chang
12e0417716
Add LucaButBoring (#24) 2026-01-14 09:45:17 +00:00
Caitie McCaffrey
4e08d76e95
Add user caitiem20 (#26)
* Add user caitiem20

* removing duplicate caitie

* ran prettier
2026-01-14 09:43:11 +00:00
David Soria Parra
4177552a61
Add dsp-ant to lead-maintainers 2026-01-13 23:35:18 +00:00
David Soria Parra
f960494174
Add Discord role sync with role-centric architecture (#22)
* Add Discord role sync with role-centric architecture

This refactors the access management to use a role-centric model where
each role explicitly defines which platforms it exists on (GitHub,
Discord, Google).

Key changes:
- Add Discord role sync via Pulumi Dynamic Provider
- Replace groups.ts with roleIds.ts + roles.ts for type-safe role definitions
- Use ROLE_IDS constants to prevent typos in memberOf references
- Each role has platform-specific config (github/discord/google keys)
- Discord-only roles (e.g., administrators) and GitHub-only roles
  (e.g., typescript-sdk-auth) are now explicitly modeled
- Add PR preview workflow to show Pulumi changes before merge
- Add test-config.ts for config structure validation
- Fix typo: docs-maintaners -> docs-maintainers

Discord roles will match existing server roles:
- administrators, lead maintainers, core maintainers
- sdk maintainers, working groups, interest groups
- etc.

Requires new GitHub secrets:
- DISCORD_BOT_TOKEN
- DISCORD_GUILD_ID

* Fix GitHub team ordering and make Discord integration optional

- Add topological sort for GitHub teams to ensure parent teams are
  created before child teams, fixing the registry-wg parentTeamId issue
- Make Discord integration optional by using config.get() instead of
  config.require(), allowing CI preview to succeed without Discord secrets
- Add sortRolesByGitHubDependency() utility function in config/utils.ts

Claude-Generated-By: Claude Code (cli/claude-opus-4-5=20%)
Claude-Steers: 2
Claude-Permission-Prompts: 1
Claude-Escapes: 0

* Reconcile Discord roles for listed users

Replace per-role-membership approach with per-user role sync that:
- Adds missing roles users should have
- Removes managed roles users shouldn't have
- Only touches roles defined in config (won't affect admin roles, etc.)

Users not in config remain untouched.

Claude-Generated-By: Claude Code (cli/claude-opus-4-5=100%)
Claude-Steers: 4
Claude-Permission-Prompts: 1
Claude-Escapes: 0

* Fix descriptions to match existing resources

* Cache Pulumi plugins and fix GITHUB_TOKEN for pulumi install

* Remove accidentally committed state backup

* Use github.token for pulumi install

* Fix formatting

Fix deploy: add pulumi login before config set

Fix deploy: set PULUMI_CONFIG_PASSPHRASE_FILE for config commands

Import existing docs-maintainers team (remove after deploy)

Remove docs-maintainers import workaround

Add docs-maintainers cleanup to state cleanup

Add pulumi refresh before up to sync state with reality

Rename Discord roles to add (synced) suffix

Cleanup Makefile and add lead-maintainers GitHub team
2026-01-13 23:35:18 +00:00
Paul Carleton
f0336a9991
Add movetz and stallent as Swift SDK maintainers (#21)
* Add movetz and stallent as Swift SDK maintainers

Adding Maksym Mova (MacPaw) and Stephen Tallent (Mercury.io) as new
maintainers for the Swift SDK, as discussed in the SDK working group.

* Set up tiered access: admins + contributor team

- movetz and stallent get admin access directly
- swift-sdk team grants push access (for future contributors)

This follows the pattern used by go-sdk and rust-sdk.

* Preserve mattt as admin
2026-01-13 14:25:30 +00:00
Ola Hungerford
7281f0dc21
Add a-akimov to docs-maintaners, tighten inspector/servers permissions (#19)
* Add evalstate and cliffhall to docs-maintaners team

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Add a-akimov to docs-maintaners team, tighten inspector/servers permissions

- Add a-akimov to docs-maintaners team (replaces direct repo access)
- Remove a-akimov direct push from quickstart-resources (now via team)
- Remove interest groups from inspector push access (ig-financial-services, interest-groups)
- Remove working-groups umbrella from inspector push access
- Remove docs-maintaners from inspector push access
- Remove interest groups from servers push access (ig-financial-services, interest-groups)
- Remove working-groups umbrella from servers push access

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-01-13 11:22:41 +00:00
David Soria Parra
0c010f3fcd
remove inna from core maintainers as per her own wish 2026-01-13 10:50:42 +01:00
David Soria Parra
6aa2a38d11
add kurtis and caitie to core maintainers as per decision of core maintainers 2026-01-13 10:50:18 +01:00
Ateş Göral
d12eeca002
Add jonathanhefner to ruby-sdk (#20) 2026-01-06 21:21:35 +00:00
David Soria Parra
fbc185181f
Remove bolinfest from rust-sdk group, keep direct push access
bolinfest should have push access to rust-sdk, not admin. Direct
access is already configured in repoAccess.ts.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 17:57:16 +00:00
David Soria Parra
22972bf885
Add bolinfest to rust-sdk group
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 17:54:54 +00:00
David Soria Parra
3c1d641add
Add prettier formatting and CI validation checks
- Add prettier with consistent formatting config
- Add format and format:check npm scripts
- Add prettier pre-commit hook
- Add validation and formatting checks to CI workflow
- Reformat all TypeScript and JSON files

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 10:01:28 +00:00
David Soria Parra
680934d3a8
Fix deployment: remove stale 'core' team references and add validation
PR #17 removed the 'core' group but left references in repoAccess.ts,
causing deployments to fail since Nov 25th.

Changes:
- Remove 'core' team references from 6 repositories in repoAccess.ts
- Replace with 'core-maintainers' to maintain equivalent permissions
- Add scripts/validate-config.ts to validate all team references
- Add pre-commit hook to run validation on config changes
- Add npm run validate script

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 09:58:49 +00:00
David Soria Parra
8d0a1bc7a1
fix 2025-12-13 09:48:13 +00:00
David Soria Parra
e9821691b9
add michael bolin from openai as a rust sdk maintainer 2025-12-13 09:42:56 +00:00
David Soria Parra
e20b61b605
fix 2025-12-01 17:11:00 +00:00
David Soria Parra
524a045a20
give akimov write access 2025-12-01 14:40:45 +00:00
adam jones
7b068c2d33
Remove core group (#17) 2025-11-25 17:29:55 +00:00
joan-anthropic
e469f7ea0a
fix typo; (#16) 2025-11-14 21:09:43 +00:00
joan-anthropic
0377e271ea
Add felixreiseberg and marshallofsound to mcpb-maintainers (#15)
Adds Felix (felixreiseberg) and Sam (marshallofsound) as maintainers for the Model Context Protocol Bundle (MCPB) project.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-11-14 20:15:26 +00:00
Felix Weinberger
d0cb7df92f
Add KKonstantinov and mattzcarey to typescript-sdk (#13) 2025-11-13 11:22:38 +00:00
adam jones
9699fbb3ca
Add MCPB maintainers group (#12)
Creates a new mcpb-maintainers team under the steering committee with Joan Xie (joan-anthropic), Adam Jones (domdomegg), and Alex Sklar (asklar) as initial maintainers.
2025-11-11 12:49:15 +00:00
David Soria Parra
eb56e470d8
make max a python sdk maintianer 2025-11-07 16:31:52 +00:00
Sambhav Kothari
96279fb128
Add Peder to FSIG (#11) 2025-11-04 16:58:43 +00:00
bhosmer-ant
0c72db3ac9
add bhosmer-ant to typescript-sdk, python-sdk (#10) 2025-10-25 16:51:51 +01:00
Ola Hungerford
e6f5f446fb
Add inspector maintainer group (#9) 2025-10-20 11:58:47 -07:00
Paul Carleton
55fe24b3fa
Grant auth-wg maintainers admin on ext-auth repository (#8)
* grant auth-wg admin on ext-auth

* add pcarleton to auth-wg
2025-10-14 15:38:07 +01:00
Ola Hungerford
db8d9eae6c
Add evalstate and cliffhall to docs-maintaners team (#7)
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-08 00:28:40 +01:00
David Soria Parra
45497bf4e5
give akimov triage on quickstart-resources 2025-10-06 13:40:06 +02:00
adam jones
7883dbc5e3
Migrate GitHub teams to infrastructure-as-code (#5)
* Migrate GitHub teams to infrastructure-as-code

- Add 25 teams with proper hierarchy (steering-committee, SDK teams, working groups, interest groups)
- Add 67 team members with their assignments
- Add repository access configuration for all 21 repositories
- Refactor github.ts to use config-driven approach with repoAccess.ts
- Mark all MCP teams as GitHub-only with onlyOnPlatforms
- Use RepositoryCollaborators for authoritative access management

Note: GitHub Projects V2 permissions are not yet supported by Pulumi and must be managed manually. See https://github.com/pulumi/pulumi-github/issues/1006

* Add individual user collaborators to repository access

Preserves direct collaborator access for users who have explicit permissions outside of team membership, including:
- jspahrsummers: admin on multiple core repos
- Go SDK collaborators (neild, rsc, rolandshoemaker, h9jiang)
- C# SDK collaborators (jeffhandley, MackinnonBuck, jozkee, localden, PederHP)
- Rust SDK collaborators (jamadeo, jokemanfire, 4t145)
- Inspector collaborators (richardkmichael, olaservo, an-dustin, ashwin-ant)
- Financial services IG collaborators (aniabot, imfing, sambhav, KengoA, nitsanh)
- And others

Without this, RepositoryCollaborators (authoritative mode) would remove all individual user access.
2025-10-03 22:02:52 +00:00
adam jones
0289b61df4
Add catch-all email group and platform filtering (#3)
- Add catch-all email group with admin-adam@modelcontextprotocol.io
- Add onlyOnPlatforms configuration to restrict groups to specific platforms
- Set antitrust and catch-all groups to Google only
- Groups default to all platforms when onlyOnPlatforms is not specified
2025-10-01 00:59:04 +01:00
adam jones
83c4314971
Add antitrust email group (#2)
Sets up antitrust@modelcontextprotocol.io email group
2025-10-01 00:50:47 +01:00