mcp-manager
MCP Manager
범용 MCP 서버 매니저 — 모든 MCP 서버를 한 곳에서 추가, 제거, 모니터링, 구성하세요.
빠른 시작
git clone https://github.com/kobramantra-debug/mcp-manager-mcp-manage.git
cd mcp-manager-mcp-manage
pip install -e .Related MCP server: agent-comm
설치
소스에서
git clone https://github.com/kobramantra-debug/mcp-manager-mcp-manage.git
cd mcp-manager-mcp-manage
pip install -e .Docker
docker build -t mcp-manager .구성
환경 변수
변수 | 기본값 | 설명 |
|
| 관리할 활성 하네스 |
| (자동 감지) | 구성 파일 경로 재정의 |
| (없음) | Fernet 암호화를 위한 마스터 비밀번호 |
OpenCode
다음에 추가: ~/.config/opencode/opencode.json:
{
"mcp": {
"mcp-manager": {
"type": "local",
"command": ["python", "-m", "src"],
"cwd": "/path/to/mcp-manager",
"enabled": true
}
}
}Claude Desktop
다음에 추가: %APPDATA%/Claude/claude_desktop_config.json:
{
"mcpServers": {
"mcp-manager": {
"command": "python",
"args": ["-m", "src"],
"cwd": "/path/to/mcp-manager"
}
}
}Cursor
다음에 추가: ~/.cursor/mcp.json:
{
"mcpServers": {
"mcp-manager": {
"command": "python",
"args": ["-m", "src"],
"cwd": "/path/to/mcp-manager"
}
}
}Docker (STDIO)
{
"mcp": {
"mcp-manager": {
"type": "docker",
"command": ["docker", "run", "-i", "--rm", "mcp-manager"],
"enabled": true
}
}
}예제
1. 모든 하네스를 나열하고 설치된 항목 확인
list_harnesses_info(){
"harnesses": [
{"id": "opencode", "name": "OpenCode", "installed": true, "is_active": true},
{"id": "claude-desktop", "name": "Claude Desktop", "installed": true, "is_active": false},
{"id": "cursor", "name": "Cursor", "installed": false, "is_active": false},
{"id": "windsurf", "name": "Windsurf", "installed": false, "is_active": false},
{"id": "cline", "name": "Cline", "installed": false, "is_active": false},
{"id": "zed", "name": "Zed", "installed": false, "is_active": false},
{"id": "continue", "name": "Continue.dev", "installed": false, "is_active": false}
],
"active": "opencode",
"installed_count": 2
}2. Claude Desktop으로 전환하고 서버 나열
switch_harness("claude-desktop")
list_servers(){
"harness": "Claude Desktop",
"servers": [
{"name": "github", "enabled": true, "type": "docker"},
{"name": "playwright", "enabled": true, "type": "npx"}
],
"count": 2
}3. 카탈로그에서 GitHub MCP 서버 추가
add_from_catalog("github"){
"success": true,
"action": "added",
"server": "github",
"harness": "OpenCode",
"catalog_entry": "github",
"config": {
"type": "docker",
"command": ["docker", "run", "-i", "--rm", "-e", "GITHUB_TOKEN={env:GITHUB_TOKEN}", "ghcr.io/github/github-mcp-server"],
"enabled": true
}
}4. 사용자 지정 원격 서버 추가
add_server(
name="my-api",
server_type="remote",
url="https://api.example.com/mcp",
env_vars="API_KEY=sk-123,BASE_URL=https://api.example.com"
){
"success": true,
"action": "added",
"server": "my-api",
"config": {
"type": "remote",
"url": "https://api.example.com/mcp",
"environment": {"API_KEY": "sk-123", "BASE_URL": "https://api.example.com"},
"enabled": true
}
}5. 모든 서버에 대해 상태 점검 실행
health_check(){
"harness": "opencode",
"summary": {"total": 3, "healthy": 2, "unhealthy": 1, "unknown": 0, "timeout": 0},
"results": {
"github": {"status": "healthy", "message": "Server: github-mcp-server", "latency_ms": 1250.3},
"playwright": {"status": "healthy", "message": "Server: playwright", "latency_ms": 890.1},
"my-api": {"status": "unhealthy", "message": "No response (exit 1)", "latency_ms": 5000.0}
}
}6. OpenCode에서 Cursor로 모든 서버 동기화
sync_to_harness("cursor"){
"success": true,
"source": "OpenCode",
"target": "Cursor",
"servers_synced": 3,
"added": 3,
"updated": 0
}7. 만료 토큰 교체
rotate_token("github", "ghp_new_token_abc123", expires_at="2026-12-31"){
"success": true,
"action": "token_rotated",
"server": "github",
"preview": "ghp_***abc123",
"expires_at": "2026-12-31"
}8. 서버 카탈로그 검색
search_catalog("database"){
"results": [
{"id": "postgres", "name": "PostgreSQL", "description": "PostgreSQL database server", "category": "database"},
{"id": "sqlite", "name": "SQLite", "description": "SQLite database server", "category": "database"}
],
"count": 2
}9. 다른 하네스용 구성 내보내기
export_for_harness("claude-desktop"){
"source_harness": "opencode",
"target_harness": "claude-desktop",
"config": {
"mcpServers": {
"github": {"command": "docker", "args": ["run", "-i", "--rm", "ghcr.io/github/github-mcp-server"]},
"playwright": {"command": "npx", "args": ["-y", "@anthropic/playwright-mcp"]}
}
},
"note": "Import this JSON into Claude Desktop"
}10. 저장된 모든 토큰 나열 (안전 — 미리보기만)
list_all_tokens(){
"tokens": {
"github": {"token_preview": "ghp_***abc123", "storage_backend": "encrypted_sqlite"},
"supabase": {"token_preview": "sb-***xyz789", "storage_backend": "encrypted_sqlite"}
},
"count": 2
}도구 참조
하네스 관리
도구 | 설명 |
| 모든 하네스 및 설치 상태 나열 |
| 활성 하네스 전환 |
| 현재 하네스 정보 가져오기 |
서버 관리
도구 | 설명 |
| 구성된 서버 나열 |
| 새 서버 추가 |
| 서버 제거 |
| 서버 세부 정보 가져오기 |
| 비활성화된 서버 활성화 |
| 서버 비활성화 |
상태 및 모니터링
도구 | 설명 |
| 단일 서버 테스트 |
| 모든 서버 테스트 |
| 상태 점검 기록 가져오기 |
토큰 관리
도구 | 설명 |
| API 토큰 업데이트 |
| 복호화된 토큰 가져오기 (주의해서 사용) |
| 저장된 토큰 나열 (미리보기만) |
| 교체 기록 가져오기 |
| 암호화 상태 표시 |
내보내기 / 가져오기 / 동기화
도구 | 설명 |
| 구성을 JSON으로 내보내기 |
| JSON에서 구성 가져오기 |
| 다른 하네스 형식으로 내보내기 |
| 다른 하네스로 서버 동기화 |
카탈로그
도구 | 설명 |
| 서버 카탈로그 검색 |
| 카탈로그에서 서버 추가 |
지원되는 하네스
하네스 | 구성 경로 | 형식 |
OpenCode |
|
|
Claude Desktop |
|
|
Cursor |
|
|
Windsurf |
|
|
Cline |
|
|
Zed |
|
|
Continue.dev |
|
|
서버 카탈로그
서버 | 유형 | 설명 |
github | docker | GitHub MCP 서버 |
supabase | npx | Supabase MCP 서버 |
playwright | npx | Playwright 브라우저 자동화 |
chrome-devtools | npx | Chrome DevTools 프로토콜 |
context7 | npx | Context7 문서 조회 |
filesystem | local | 파일 시스템 접근 |
git | local | Git 작업 |
postgres | npx | PostgreSQL 데이터베이스 |
sqlite | npx | SQLite 데이터베이스 |
docker | local | Docker 관리 |
brave-search | npx | Brave Search API |
fetch | npx | HTTP fetch 도구 |
memory | local | 지식 그래프 메모리 |
slack | npx | Slack 워크스페이스 통합 |
gdrive | npx | Google Drive 접근 |
google-maps | npx | Google Maps API |
puppeteer | npx | Puppeteer 브라우저 자동화 |
everything | npx | 유니버설 검색 |
stitch | npx | Stitch UI 디자인 |
토큰 보안
토큰은 Fernet (AES-128-CBC)을 사용하여 암호화된 SQLite 데이터베이스에 저장됩니다.
암호화를 활성화하려면 MCP_MANAGER_MASTER_PASSWORD를 설정하세요:
# Linux/macOS
export MCP_MANAGER_MASTER_PASSWORD="your-secure-password"
# Windows
set MCP_MANAGER_MASTER_PASSWORD=your-secure-password마스터 비밀번호가 없으면 토큰이 평문으로 저장됩니다 (프로덕션에는 권장되지 않음).
라이선스
MIT 라이선스 — 자세한 내용은 LICENSE를 참조하세요.
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 Servers
- AlicenseAqualityBmaintenanceMCP server for managing multiple SSH servers via AI assistants, offering tools for remote command execution, file operations, and system monitoring.11MIT
- AlicenseNot gradedqualityDmaintenanceMCP server that enables AI coding agents to communicate, share state, and coordinate work in real time via MCP tools or REST API.1305MIT
- AlicenseNot gradedqualityAmaintenanceAn enterprise-grade MCP server that enables AI coding assistants to securely connect with external tools, APIs, databases, and cloud services through a unified interface, offering structured engineering workflows and multi-client support.MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for securely managing GitHub & GitLab credentials in an encrypted vault, allowing AI agents to retrieve tokens by org or group name automatically.MIT
Related MCP Connectors
A MCP server built for developers enabling Git based project management with project and personal…
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Cloud-hosted MCP server for durable AI memory
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/kobramantra-debug/mcp-manager-mcp-manage'
If you have feedback or need assistance with the MCP directory API, please join our Discord server