ApiVault Remote MCP Server
ApiVault 원격 MCP 서버
AI 코딩 에이전트를 위한 안전한 암호화 API 키 관리.
ApiVault의 공식 원격 Model Context Protocol (MCP) 서버입니다.
빠른 시작 • 도구 참조 • 아키텍처 • OAuth 2.1 및 스코프 • 오류 코드 및 문제 해결 • 자체 호스팅 및 개발
개요
ApiVault 원격 MCP 서버는 AI 어시스턴트(Cursor, Claude Desktop, Windsurf, Claude Code 등)가 **ApiVault**에 있는 암호화된 시크릿과 안전하고 감사 가능하게 상호작용할 수 있도록 합니다.
AI 에이전트는 원시 API 키를 채팅 프롬프트에 붙여넣거나 .env 파일을 git에 커밋하는 대신 다음을 수행할 수 있습니다:
마스킹된 미리보기(예:
sk_live_••••1234)를 사용하여 사용 가능한 자격 증명을 검색하고 검사합니다.범위 지정 권한을 통해 코드를 실행할 때만 원시 시크릿 값을 요청합니다.
새로 생선된 API 키를 볼트에 직적 자동으로 저장합니다.
제로 지식 사용자 정의 볼트 키를 지원하여 즉시 메모리에서 복轄화합니다.
Related MCP server: Credential Vault MCP
🤖 공식 AI 에이전트 스킬
AI 코딩 어시스턴트(Cursor, Claude Code, Windsurf, 또는 Google Antigravity)를 사용하는 경우, 공식 ApiVault Agent Skill을 워크스페이스에 설치하세요:
git clone https://github.com/TLB-STATION/apivault-skill.git .agents/skills/apivault이것은 AI 에이전트에 ApiVault MCP와 상호작용하기 위한 기본 런북, 복사-붙여넣기 프롬프트 템플릿 및 보안 지침을 제공합니다.
빠른 시작
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.ai
방법 1 (UI 커넥터): Claude Desktop / Claude.ai에서 설정 → 커넥터 → 사용자 정의 커넥터 추가로 이동하여 이름:
ApiVault, 원격 URL:https://apivault-mcp.vercel.app/mcp를 입력하세요.방법 2 (설정 파일): Claude Desktop 구성 파일에 추가하세요:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json리눅스:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"apivault": {
"command": "npx",
"args": ["-y", "mcp-remote", "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)로 이동하여 계정을 인증하고 요청된 스코프를 승인합니다.
도구 참조
서버는 Model Context Protocol을 따르는 6가지 도구를 제공합니다:
1. list_keys
마스킹된 값(예: sk_live_••••1234)으로 저장된 API 키를 나열합니다. 에이전트가 사용 가능한 서비스를 발견할 수 있도록 하면서 프롬프트 오염을 방지합니다.
필요한 스코프:
keys:read매개변수:
environment(string, optional): 환경별 필터링 (예:Production,Staging,Development).service(string, optional): 서비스 이름별 필터링 (예:Stripe,OpenAI,Resend).
에이전트 프롬프트 예시:
"Production에 저장된 Stripe 자격 증명은 무엇인가요?"
2. get_key
ID로 특정 자격 증명의 메타데이터와 마스킹된 미리보기를 검색합니다.
필요한 스코프:
keys:read매개변수:
id(string, required): 키의 고유 ID.
에이전트 프롬프트 예시:
"키 'cm123abc'의 메타데이터와 마지막 업데이트 날짜를 확인해주세요."
3. reveal_key
복호화하여 원시, 마스킹되지 않은 API 키 값을 반환합니다.
필요한 스코프:
keys:reveal매개변수:
id(string, required): 복호화할 키의 ID.vault_key(string, optional): 사용자의 사용자 정의 볼트 키 (계정에 사용자 정의 암호화 모드가 활성화된 경우에만 필요합니다).
에이전트 프롬프트 예시:
"백엔드 통합 테스트를 실행하기 위해 원시 OpenAI API 키가 필요합니다."
4. add_key
새로운 API 키를 볼트에 안전하게 암호화하여 저장합니다.
필요한 스코프:
keys:write매개변수:
name(string, required): 키 식별자 (예:STRIPE_SECRET_KEY,RESEND_API_KEY).key(string, required): 암호화할 원시 시크릿 값.service(string, optional): 서비스 이름 (예:Stripe,OpenAI,AWS).environment(string, optional): 대상 환경 (기본값:Production).notes(string, optional): 개발자 문서 또는 사용 노트.vault_key(string, optional): 필요한 경우 사용자 정의 볼트 키.
에이전트 프롬프트 예시:
"새로 생성된 Supabase 서비스 롤 키를 Production 볼트에 저장해주세요."
5. update_key
기존 키의 메타데이터를 업데이트하거나 시크릿 값을 재암호화합니다.
필요한 스코프:
keys:write매개변수:
id(string, required): 업데이트할 키 ID.name,service,environment,notes(string, optional): 메타데이터 업데이트.key(string, optional): 새 원시 시크릿 값 (재암호화 유발).vault_key(string, optional): 시크릿 값 업데이트 시 사용자 정의 볼트 키.
에이전트 프롬프트 예시:
"Resend API 키의 노트를 '8월 18일에 로테이트됨'로 업데이트해주세요."
6. delete_key
API 키를 볼트에서 영원히 제거합니다.
필요한 스코프:
keys:write매개변수:
id(string, required): 삭제할 키 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의 범위 지정 게이트웨이(
/ai/mcp/v1/keys)로 전달됩니다.인-메모리 볼트 키: 사용자 정의 암호화 모드 볼트 키(
vault_key)는 단일 요청 파생 동안에만 메모리에서 사용되며 디스크나 로그에 절대 쓰이지 않습니다.
OAuth 2.1 및 스코프
MCP 서버는 동적 클라이언트 등록 (RFC 7591) 및 **PKCE S256 (RFC 7636)**을 포함한 표준 OAuth 2.1을 구현합니다:
스코프 | 이름 | 액세스 권한 부여 대상 |
| 메타데이터 읽기 |
|
| 키 관리 |
|
| 시크릿 복호화 |
|
연결 관리 및 취소
사용자는 웹 대시보드에서 연결된 AI 에이전트를 검토하고, 부여된 스코프를 확인하며, 언제든지 액세스를 취소할 수 있습니다:
ApiVault Dashboard → Settings → MCP Connections
오류 코드 및 문제 해결
오류 코드 | 이유 | 해결 방법 |
| 만료되었거나 누락된 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 Web Dashboard
AI 에이전트 스킬: apivault-skill (GitHub)
CLI 도구: apivault-cli (npm)
버그 리포트 및 이슈: GitHub Issues
라이선스
MIT 라이선스에 따라 배포됩니다. 자세한 내용은 LICENSE를 참조하세요.
Copyright (c) 2026 TLB-STATION • ApiVault
This server cannot be deployed
Maintenance
Related MCP Connectors
Encrypted secret store and rotation for autonomous agent credentials
- FullmaktOAuthai.fullmakt
Credential broker for AI agents: scoped, revocable API access with policy enforcement and audit.
A secret store for AI agents: the agent never sees the plaintext.
Secrets for developers and agents—secure context and workflows without exposing secret values.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables LLM agents to securely use credentials like passwords and API keys without exposing them in the context window, through encrypted storage and proxy-based injection.3 npm2MIT
- AlicenseNot gradedqualityCmaintenanceEnables secure credential storage for AI agents by encrypting secrets and providing agent-invisible references, ensuring sensitive data never leaks to the model.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents and MCP clients to securely store, retrieve, and manage encrypted credentials without hardcoding API keys.AGPL 3.0
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to securely manage API keys and secrets via the MCP protocol, with encrypted storage at rest and a simple CLI and Python SDK.1MIT