ApiVault Remote MCP Server
ApiVault 원격 MCP 서버
AI 코딩 에이전트를 위한 안전하고 암호화된 API 키 관리.
ApiVault의 공식 원격 모델 컨텍스트 프로토콜(MCP) 서버.
빠른 시작 • 도구 참조 • 아키텍처 • OAuth 2.1 및 범위 • 오류 코드 및 문제 해결 • 자가 호스팅 및 개발
개요
ApiVault 원격 MCP 서버는 AI 어시스턴트(Cursor, Claude Desktop, Windsurf, Claude Code)가 **ApiVault**에 저장된 암호화된 비밀 정보를 안전하고 감사 가능하게 상호 작용할 수 있도록 합니다.
원시 API 키를 채팅 프롬프트에 붙여넣거나 .env 파일을 git에 커밋하는 대신, AI 에이전트는 다음을 수행할 수 있습니다:
마스킹된 미리보기(예:
sk_live_••••1234)를 사용하여 사용 가능한 자격 증명을 검색하고 검사합니다.범위가 지정된 권한을 통해 코드를 실행할 때만 원시 비밀 값을 요청합니다.
새로 생성된 API 키를 볼트에 직접 자동 저장합니다.
메모리 내에서 즉시 복호화되는 Zero-Knowledge 사용자 지정 암호를 지원합니다.
빠른 시작
1. Cursor
Cursor 설정 열기 (Cmd/Ctrl + Shift + J) → MCP → 새 MCP 서버 추가 또는 ~/.cursor/mcp.json에 추가:
{
"mcpServers": {
"apivault": {
"url": "https://apivault-mcp.vercel.app/mcp"
}
}
}2. Claude Desktop
Claude Desktop 설정 파일에 추가:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"apivault": {
"url": "https://apivault-mcp.vercel.app/mcp"
}
}
}3. Windsurf
~/.codeium/windsurf/mcp_config.json에 추가:
{
"mcpServers": {
"apivault": {
"url": "https://apivault-mcp.vercel.app/mcp"
}
}
}4. Claude Code (CLI)
터미널에서 실행:
claude mcp add apivault https://apivault-mcp.vercel.app/mcp5. VS Code (Cline / Roo Code / Continue)
확장의 MCP 설정 JSON에 추가:
{
"mcpServers": {
"apivault": {
"url": "https://apivault-mcp.vercel.app/mcp",
"transport": "http"
}
}
}최초 연결: 에이전트가 처음 초기화되면 브라우저 탭이 열려 기본 ApiVault 웹사이트(
https://api-vault-opal.vercel.app)로 이동하여 계정을 인증하고 요청된 범위를 승인합니다.
도구 참조
서버는 모델 컨텍스트 프로토콜을 준수하는 6개의 도구를 제공합니다:
1. list_keys
마스킹된 값(예: sk_live_••••1234)으로 저장된 API 키를 나열합니다. 프롬프트 오염을 방지하면서 에이전트가 사용 가능한 서비스를 검색할 수 있도록 합니다.
필요한 범위:
keys:read매개변수:
environment(문자열, 선택사항): 환경별로 필터링합니다 (예:Production,Staging,Development).service(문자열, 선택사항): 서비스 이름별로 필터링합니다 (예:Stripe,OpenAI,Resend).
예시 에이전트 프롬프트:
"Production 환경에 저장된 Stripe 자격 증명이 무엇인가요?"
2. get_key
ID로 특정 자격 증명의 메타데이터와 마스킹된 미리보기를 검색합니다.
필요한 범위:
keys:read매개변수:
id(문자열, 필수): 키의 고유 ID입니다.
예시 에이전트 프롬프트:
"키 'cm123abc'의 메타데이터와 마지막 업데이트 날짜를 확인해 주세요."
3. reveal_key
원시 마스킹되지 않은 API 키 값을 복호화하여 반환합니다.
필요한 범위:
keys:reveal매개변수:
id(문자열, 필수): 복호화할 키의 ID입니다.vault_key(문자열, 선택사항): 사용자의 사용자 지정 볼트 암호(계정에 사용자 지정 암호화 모드가 활성화된 경우에만 필요).
예시 에이전트 프롬프트:
"백엔드 통합 테스트를 실행하기 위해 원시 OpenAI API 키가 필요합니다."
4. add_key
새 API 키를 안전하게 암호화하여 볼트에 저장합니다.
필요한 범위:
keys:write매개변수:
name(문자열, 필수): 키 식별자 (예:STRIPE_SECRET_KEY,RESEND_API_KEY).key(문자열, 필수): 암호화할 원시 비밀 값.service(문자열, 선택사항): 서비스 이름 (예:Stripe,OpenAI,AWS).environment(문자열, 선택사항): 대상 환경 (기본값:Production).notes(문자열, 선택사항): 개발자 문서 또는 사용 참고 사항.vault_key(문자열, 선택사항): 필요한 경우 사용자 지정 볼트 암호.
예시 에이전트 프롬프트:
"이 새로 생성된 Supabase 서비스 역할 키를 Production 볼트에 저장해 주세요."
5. update_key
기존 키의 메타데이터를 업데이트하거나 비밀 값을 다시 암호화합니다.
필요한 범위:
keys:write매개변수:
id(문자열, 필수): 업데이트할 키 ID입니다.name,service,environment,notes(문자열, 선택사항): 메타데이터 업데이트.key(문자열, 선택사항): 새 원시 비밀 값 (재암호화 트리거).vault_key(문자열, 선택사항): 비밀 값을 업데이트할 때 필요한 사용자 지정 볼트 암호.
예시 에이전트 프롬프트:
"Resend API 키의 메모를 'Rotated on August 18'로 업데이트해 주세요."
6. delete_key
볼트에서 API 키를 영구적으로 제거합니다.
필요한 범위:
keys:write매개변수:
id(문자열, 필수): 삭제할 키 ID입니다.
예시 에이전트 프롬프트:
"더 이상 사용하지 않는 스테이징 데이터베이스 자격 증명을 삭제해 주세요."
아키텍처
MCP 서버는 무상태 프로토콜 게이트웨이 아키텍처를 사용하여 공용 전송 계층을 데이터베이스 및 암호화 저장소와 분리합니다:
+----------------------------------------------------------+
| AI Agent (Cursor / Claude Desktop / Windsurf) |
+----------------------------+-----------------------------+
| Streamable HTTP (JSON-RPC)
v
+----------------------------------------------------------+
| ApiVault MCP Server (apivault-mcp.vercel.app) |
| - RFC 9728 Protected Resource Metadata (PRM) |
| - Streamable HTTP Transport (/mcp) |
| - Zero Database Credentials / Zero Stored Keys |
+----------------------------+-----------------------------+
| Scoped HTTPS REST Gateway (Bearer Token)
v
+----------------------------------------------------------+
| ApiVault Backend (api-vault-opal.vercel.app) |
| - OAuth 2.1 Authorization Server (DCR + PKCE S256) |
| - Browser Consent UI (/mcp/authorize) |
| - Cryptographic Key Decryption & MySQL Vault |
+----------------------------------------------------------+보안 속성:
데이터베이스 비밀번호 제로: 공용
apivault-mcp서비스는 MySQL 자격 증명이나 마스터 암호화 키를 보유하지 않습니다.무상태 전달: 클라이언트 요청은 확인된 후 표준 OAuth Bearer 토큰을 사용하여 ApiVault의 범위 지정 게이트웨이(
/api/mcp/v1/keys)로 전달됩니다.메모리 내 암호: 사용자 지정 암호화 모드 암호(
vault_key)는 단일 요청 파생 동안에만 메모리에서 사용되며 디스크나 로그에 기록되지 않습니다.
OAuth 2.1 및 범위
MCP 서버는 동적 클라이언트 등록(RFC 7591) 및 PKCE S256(RFC 7636) 을 사용하는 표준 OAuth 2.1을 구현합니다:
범위 | 이름 | 액세스 권한 부여 |
| 메타데이터 읽기 |
|
| 키 관리 |
|
| 비밀 복호화 |
|
연결 관리 및 해지
사용자는 웹 대시보드에서 언제든지 연결된 AI 에이전트를 검토하고, 부여된 범위를 확인하며, 액세스를 해지할 수 있습니다: ApiVault 대시보드 → 설정 → MCP 연결
오류 코드 및 문제 해결
오류 코드 | 이유 | 해결 방법 |
| OAuth Bearer 토큰이 만료되었거나 누락됨. | 재연결 작업을 통해 Cursor 또는 Claude Desktop에서 다시 인증합니다. |
| 토큰에 필요한 범위가 없음 (예: | 브라우저 동의 중에 다시 인증하고 |
| 계정이 사용자 지정 암호화 모드를 사용 중이며 | 도구 인수에 사용자 지정 볼트 암호를 제공합니다. |
| 제공된 사용자 지정 볼트 암호가 복호화 확인에 실패함. | 마스터 볼트 암호가 올바른지 확인하고 다시 시도하십시오. |
| 동일한 이름과 환경을 가진 키가 이미 존재함. |
|
| 지정된 키 ID가 볼트에 존재하지 않음. |
|
| ApiVault 백엔드 게이트웨이에 연결할 수 없음. | 인터넷 연결을 확인하고 |
자가 호스팅 및 개발
자체 독립형 MCP 서버를 실행하거나 개인 클라우드 인프라에 배포할 수 있습니다:
전제 조건
Node.js >= 20.12.0
npm 또는 pnpm
1. 복제 및 설치
git clone https://github.com/TLB-STATION/apivault-mcp.git
cd apivault-mcp
npm install2. 환경 구성
.env.local 생성:
# ApiVault Backend URL
API_VAULT_URL=https://api-vault-opal.vercel.app
# Public URL of this MCP server
MCP_SERVER_URL=http://localhost:30013. 개발 서버 실행
npm run dev
# Server running at http://localhost:30014. 테스트 스위트 실행
npm test5. 프로덕션 빌드
npm run build
npm start커뮤니티 및 생태계
메인 플랫폼: ApiVault 웹 대시보드
CLI 도구: apivault-cli (npm)
버그 신고 및 이슈: GitHub 이슈
라이선스
MIT 라이선스에 따라 배포됩니다. 자세한 내용은 LICENSE를 참조하십시오.
Copyright (c) 2026 Mohamed Eltelb • ApiVault
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Encrypted secret store and rotation for autonomous agent credentials
Issue, rotate and revoke scoped API-key passes for 25+ providers — the agent never sees a real key
Agent payments, API key vaulting, and governed mandates. Agents spend within user-defined limits.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/TLB-STATION/apivault-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server