프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

rekey

제작자: Ezra-Black버전 0.1.0i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.Ezra-Black/rekey

설치

개요

제작자가 쓴 설명(영어 원문)

Rotate API keys across AWS, GitLab, Cloudflare, OpenAI & more. Secrets never reach the model.

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 내 컴퓨터에서 실행
  • 전송 방식: stdio
  • 카테고리: 개발자 도구

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

  • 기본 점검: 1개 중 1개 통과
  • 내 컴퓨터에서 내 사용자 계정의 권한(파일, 네트워크, 앱)으로 실행돼요.
  • 레지스트리에 입력해야 할 키가 나와 있지 않아요.

제작자가 레지스트리에 설치 정보를 올리지 않았어요. 아래 제작자의 README를 확인하세요.

할 수 있는 일

내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 Ezra-Black 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • – 해당 없음

    엔드포인트 응답

    내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요

  • – 해당 없음

    OAuth로 로그인

    내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요

개발자 도구 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 4907개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 4907개 중 66%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 4907개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

rekey, 안전한가요?

해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.0)은 20일 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Rust도 있어야 해요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: GitHub, Desktop Commander, Cloudflare MCP

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

GitHub

제작자: github

Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

컴퓨터 또는 클라우드★ 34,245MIT4일 전 업데이트
설치

Desktop Commander

제작자: wonderwhy-er

MCP server for terminal commands, file operations, and process management

내 컴퓨터에서 실행★ 10,225MIT16일 전 업데이트
설치

Cloudflare MCP

제작자: cloudflare

Cloudflare MCP servers

클라우드에서 실행★ 4,446Apache-2.014개월 전 업데이트
설치

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

rekey

Rotate API keys and tokens across providers from one CLI: mint the new key, push it to everything that uses it, verify it, retire the old one. Includes an MCP server.

Only touches accounts you administer — every provider acts with your own credential.

CLI — rotate a GitLab token straight into a .env file:

MCP — Claude rotating the same token through rekey mcp; the secret never reaches the model:

Install

Prebuilt binaries for macOS, Linux and Windows: Releases.

Or with Rust (stable):

cargo install rekey

OS keychain support (macOS Keychain, Windows Credential Manager, Linux Secret Service) is built in.

Quick start

Practice on a throwaway GitLab token first. Every command below is safe to copy; replace 28550311 with your own ids from step 3.

1. Make a throwaway token to rotate. In GitLab → *Access tokens*, create a token named kr-test (any scope).

2. Log in. Opens GitLab's token page with the name and api scope pre-filled. Click *Create token*, paste it back (input is hidden).

rekey login gitlab
Checking with GitLab…

✓ Logged in to GitLab as @you. Saved to your macOS Keychain. rekey now works from any terminal — nothing to export.

3. Find the key id.

rekey list gitlab
ID        NAME

28550267 rekey (signed in with this key) 28550311 kr-test

4. Rotate it into a .env file. rekey shows the plan and waits for you.

rekey rotate gitlab 28550311 --dotenv /tmp/kr-test.env:KR_TEST_TOKEN
Here's what will happen:
  1. GitLab replaces "kr-test" with a new token and immediately revokes the old one. This can't be undone.
  2. The new token is saved to KR_TEST_TOKEN in /tmp/kr-test.env.
  3. rekey checks that the new token works.

Go ahead? [Y/n] y

Rotating kr-test… · Rotating (provider revokes old token immediately)… · Updating 1 consumer(s)… · Verifying new token… ✓ Rotated successfully.

New key id: 28550312 Updated: KR_TEST_TOKEN in /tmp/kr-test.env Old token was revoked by the provider.

5. Check and clean up.

cat /tmp/kr-test.env      # KR_TEST_TOKEN=glpat-…

rm /tmp/kr-test.env

Then delete kr-test in GitLab.

For real keys: run rekey rotate gitlab with no arguments — it lets you pick the key and destination and can save that to rekey.toml, so the next rotation is one command. In scripts/CI:

rekey rotate gitlab 28550311 --dotenv .env --yes --no-input

Commands

Command
login [provider]Opens the provider's token page (GitLab: pre-filled), takes the pasted token, verifies it, saves it to the OS keychain. --url for self-hosted GitLab / Datadog site. No provider: show status.
logout Remove saved credentials (doesn't revoke them).
connect Check credentials and key-management access.
list List keys. Column 1 is the id other commands take.
rotate [id]Rotate one key.
rotate-all Rotate every key that has a destination. Skips the key you're signed in with.
retire [id]Deactivate (where supported) or delete an old key. --delete to delete a deactivated key.
mcpMCP server on stdio.

Global: --config , --no-input (fail instead of prompting). --yes skips confirmation. Omitted args are prompted for in a TTY. Flags go in any order. stdout carries only list output and --print-secret values; everything else is stderr.

Destinations

rotate refuses to start unless the new secret has at least one destination.

FlagDestination
--dotenv [:VAR]Set VAR in a .env file. Default VAR per provider; AWS also writes AWS_ACCESS_KEY_ID.
--gh-secret : GitHub Actions secret via gh (stdin).
--ssm : AWS SSM SecureString via aws (stdin).
--secret-file File, mode 0600.
--secret-dir rotate-all: one 0600 file per key.
--keychainOS keychain, service rekey.
--print-secretstdout.

Repeatable flags: --dotenv, --gh-secret, --ssm. --delete-old-now deletes the old key right after the new one is delivered.

Config

./rekey.toml, then ~/.config/rekey/config.toml. Contains no secrets. Interactive rotate can write entries for you.

[[keys]]

provider = "gitlab" name = "ci-deploy" # match on id, name and/or principal consumers = [ { type = "dot_env_file", path = ".env", variable = "GITLAB_TOKEN" }, { type = "github_actions_secret", repo = "me/app", secret_name = "GITLAB_TOKEN" }, ]

[[keys]] provider = "aws" principal = "ci-user" # IAM user; survives the new key id consumers = [ { type = "dot_env_file", path = ".env", variable = "AWS_SECRET_ACCESS_KEY", id_variable = "AWS_ACCESS_KEY_ID" }, { type = "aws_ssm_parameter", name = "/ci/aws", region = "us-east-1" }, ]

Consumer types: dot_env_file, github_actions_secret, aws_ssm_parameter, file, keychain. Match on name/principal for providers that issue a new id per rotation. Relative paths resolve against the config file. Full example: rekey.toml.example.

Credentials

Lookup order: environment variable → saved login (rekey login) → prompt (TTY only, offers to save). Never taken as flags. Rotating the token rekey signs in with (GitLab, Cloudflare) updates the saved login. REKEY_DISABLE_KEYCHAIN=1 disables keychain reads/writes.

Providers

ProviderStyleRotatesCredentialsNotes
awsoverlapIAM access keysaws CLI session, AWS_PROFILEMax 2 keys per user; refuses if both exist. Old key → Inactive.
gitlabatomicPersonal access tokensGITLAB_TOKEN (api scope), GITLAB_URL, GITLAB_TOKEN_EXPIRY_DAYS
cloudflareatomicUser API tokensCLOUDFLARE_API_TOKEN (API Tokens: Edit)Token id is stable.
datadogoverlapAPI keysDD_API_KEY, DD_APP_KEY, DD_SITENo disabled state.
npmoverlapClassic tokensnpm CLI session, NPM_REGISTRYParses CLI output; granular tokens unsupported.
dockerhuboverlapPersonal access tokensDOCKERHUB_USERNAME, DOCKERHUB_PASSWORDNew token gets repo:read+repo:write.
openaioverlapOrg admin keysOPENAI_ADMIN_KEY
anthropicmanual—ANTHROPIC_ADMIN_KEYNo create API; rotate prints Console steps, retire deactivates.
twiliooverlapStandard API keysTWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN, TWILIO_API_USER
sendgridoverlapAPI keysSENDGRID_API_KEYCopies scopes from the old key.
github-appephemeralInstallation tokensGITHUB_APP_ID, GITHUB_APP_PRIVATE_KEY_PATH or GITHUB_APP_PRIVATE_KEY~1h tokens; nothing to revoke.

AWS needs the aws CLI, npm needs npm, --gh-secret needs gh.

Want another provider? Request it.

Rotation semantics

StyleSequenceFailure handling
overlapcreate → verify → deliver → deactivate old → (delete old)Verify fails or all deliveries fail: new key deleted, nothing changed. Some deliveries fail: both keys stay live, exit 1.
atomicrotate (old revoked by provider) → deliver → verifyIrreversible. All deliveries fail: secret written to rekey-rescue-*.secret (0600).
ephemeralmint → verify → deliverOld token expires on its own.
manual—Prints manual steps.

Without --delete-old-now, an old key with no disabled state stays active; the output gives the retire command. Exit code is non-zero whenever something needs attention.

MCP

rekey login gitlab

claude mcp add rekey -- rekey mcp --config ~/.config/rekey/config.toml

ToolEnabled by
list_providers, check_connection, list_keysdefaultRead-only.
rotate_key--allow-rotateDelivers only to consumers in your config. No destination args.
retire_key--allow-retireRefuses the server's own login key.

Secret values are never returned to the client. Credentials come from the environment or saved logins. On macOS, allow Keychain access once after installing a new build.

Security

  • Secrets go to subprocesses via stdin, never argv.
  • Files rekey creates are 0600; existing .env permissions are kept; writes are atomic.
  • Secret values are printed only with --print-secret.
  • Report vulnerabilities privately via the repo's Security tab.

Contributing

  • New provider or feature: open an issue.
  • Code: see CONTRIBUTING.md. A provider is one file implementing the Connector trait.

Links

  • crates.io: rekey
  • MCP Registry name — mcp-name: io.github.Ezra-Black/rekey

Credits

Built by Ezra Black — ezrablack.dev.

License

MIT

PopNx에게 묻기