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

TractorBeeam365 MCP

제작자: Ringosystems버전 2.2.0i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.Ringosystems/tractorbeeam-mcp

설치

개요

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

MCP server for Veeam Backup for Microsoft 365: read-only review + gated, audited restore tier.

PopNx MCP의 세 기둥

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

할 수 있는 일

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

  • 연결 방식: 내 컴퓨터에서 실행
  • 전송 방식: stdio
  • 카테고리: 기타
  • 입력해야 할 값: VB365_HOST, VB365_USERNAME, VB365_PASSWORD

설치

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

설치하기 전에

  • 기본 점검: 1개 중 1개 통과
  • 내 컴퓨터에서 내 사용자 계정의 권한(파일, 네트워크, 앱)으로 실행돼요.
  • 직접 입력할 값: VB365_HOST, VB365_USERNAME, VB365_PASSWORD

비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.

필요한 것

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요

{
  "mcpServers": {
    "tractorbeeam": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "VB365_HOST",
        "-e",
        "VB365_USERNAME",
        "-e",
        "VB365_PASSWORD",
        "ghcr.io/ringosystems/tractorbeeam-mcp:2.2.0"
      ],
      "env": {
        "VB365_HOST": "your-value",
        "VB365_USERNAME": "your-value",
        "VB365_PASSWORD": "your-value"
      }
    }
  }
}

터미널에서 이 명령어를 실행하세요

claude mcp add tractorbeeam --env VB365_HOST=your-value --env VB365_USERNAME=your-value --env VB365_PASSWORD=your-value -- docker run -i --rm -e VB365_HOST -e VB365_USERNAME -e VB365_PASSWORD ghcr.io/ringosystems/tractorbeeam-mcp:2.2.0

실행하기 전에 빈 값을 채워 주세요.

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "tractorbeeam": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "VB365_HOST",
        "-e",
        "VB365_USERNAME",
        "-e",
        "VB365_PASSWORD",
        "ghcr.io/ringosystems/tractorbeeam-mcp:2.2.0"
      ],
      "env": {
        "VB365_HOST": "your-value",
        "VB365_USERNAME": "your-value",
        "VB365_PASSWORD": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "tractorbeeam": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "VB365_HOST",
        "-e",
        "VB365_USERNAME",
        "-e",
        "VB365_PASSWORD",
        "ghcr.io/ringosystems/tractorbeeam-mcp:2.2.0"
      ],
      "env": {
        "VB365_HOST": "your-value",
        "VB365_USERNAME": "your-value",
        "VB365_PASSWORD": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

직접 입력할 값

  • VB365_HOST 필수 env
    IP or hostname of the VB365 (Veeam Backup Server) host
  • VB365_USERNAME 비밀 필수 env
    VB365 account used to obtain a REST API token (DOMAIN\\user, .\\localuser, or user@domain)
  • VB365_PASSWORD 비밀 필수 env
    Password for VB365_USERNAME

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

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

기본 점검i

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

  • ✓ 통과

    제작자와 저장소 일치

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

  • … 아직 점검 안 함

    계속 관리되고 있음

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

  • … 아직 점검 안 함

    라이선스 있음

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

  • – 해당 없음

    엔드포인트 응답

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

  • – 해당 없음

    OAuth로 로그인

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

  • … 아직 점검 안 함

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

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

기타 카테고리의 다른 서버와 비교i

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

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

자주 묻는 질문

TractorBeeam365 MCP, 안전한가요?

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

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

입력해야 할 값: VB365_HOST, VB365_USERNAME, VB365_PASSWORD

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

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

아직 관리되고 있나요?

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

어떤 앱에서 쓸 수 있나요?

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

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

같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, SuperCollider

대안

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

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

Spec Driven Development

제작자: formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

내 컴퓨터에서 실행★ 440MIT14개월 전 업데이트
설치

Remote Desktop Commander

제작자: desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

클라우드에서 실행★ 211그저께 업데이트
설치

SuperCollider

제작자: Tok

Make sound with SuperCollider: synths, drums, chords, melodies and soundscapes over OSC.

내 컴퓨터에서 실행오늘 업데이트
설치

제작자의 README

README 열기

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

TractorBeeam365 MCP

A Model Context Protocol server for Veeam Backup for Microsoft 365 (VB365). It talks directly to the VB365 REST API so an MCP client (Claude Code / Claude Desktop) can review your backup configuration, find protection gaps, spot trends, verify cloud immutability — and, when you explicitly opt in, run jobs and orchestrate restores.

**Independent project — not affiliated with, endorsed by, or supported by Veeam

Software.** "Veeam" is a registered trademark of Veeam Software; the "Beeam"

spelling is a deliberate, distinct play on words. Use at your own risk.

🔱 The name: a *tractor beam* pulls your data back in — and *Beeam* winks at the

backup product underneath. Read-only review is the safe default; the "pull"

(restore/actions) is opt-in.

Two tiers

TierDefaultWhat it can do
Read-only review✅ always onGET-only. Cannot change anything. Config/health, gap-analysis, trends, cloud-lock cross-check.
Action / Restore⛔ offOpt-in via TB_* env flags. Run/stop jobs, generate reports, sync orgs, define + execute restores. Every write is confirm-token gated and audited.

If you never set the TB_* flags, this is a pure read-only reviewer that *physically cannot* modify your environment — the action/restore tools aren't even registered.

Quick deploy (prebuilt image)

No clone or build required. From v2.2.0 the image is published multi-arch (amd64 + arm64) to GitHub Container Registry and Docker Hub, so it runs natively on x86 servers, Apple Silicon, and ARM boxes (Raspberry Pi, ARM cloud). On an ARM host, pin the :2.2.0 (or later) tag until a multi-arch :latest has been published.

Persistent HTTP service (Docker Compose)

Grab two files and start it:

curl -fsSLO https://raw.githubusercontent.com/Ringosystems/TractorBeeam-MCP/main/docker-compose.deploy.yml

curl -fsSL https://raw.githubusercontent.com/Ringosystems/TractorBeeam-MCP/main/.env.example -o .env

Edit .env: set VB365_HOST / VB365_USERNAME / VB365_PASSWORD and a long MCP_AUTH_TOKEN.

docker compose -f docker-compose.deploy.yml up -d

MCP is then live at http:// :8766/mcp. Attach a client with the bearer token you set:

claude mcp add --transport http tractorbeeam365 http://<host>:8766/mcp \

--header "Authorization: Bearer "

Update later:

docker compose -f docker-compose.deploy.yml pull && docker compose -f docker-compose.deploy.yml up -d
Unraid (one click)

In Unraid open Docker → Add Container, and paste this template URL into the Template field:

https://raw.githubusercontent.com/Ringosystems/TractorBeeam-MCP/main/deploy/unraid/tractorbeeam365.xml

Fill in VB365_HOST, VB365_USERNAME, VB365_PASSWORD, and a long MCP_AUTH_TOKEN, then Apply. The audit and downloads folders map under /mnt/user/appdata/tractorbeeam365/.

Single MCP client, no service (stdio)

For a client that launches the server itself, run the image on demand over stdio:

docker run -i --rm \

-e VB365_HOST=... -e VB365_USERNAME=... -e VB365_PASSWORD=... \ ghcr.io/ringosystems/tractorbeeam-mcp:latest

Read-only tools (always available)

ToolWhat it returns
vb365_health_summaryOne-shot review: orgs, jobs + last status, repos, cloud storage (B2/S3/Azure), proxies, license, trend anomalies, and a flags list. Start here.
vb365_trendsPer-job success/failure drift, repo capacity-full projection, restore-test cadence per org, RPO compliance.
gap_coverage_summary / gap_unprotected_objectsBackup coverage % and unprotected live M365 objects, by comparing Microsoft Graph against what jobs protect *(needs GRAPH_*)*.
cloud_lock_auditCross-checks Object Lock mode/retention/versioning at the bucket vs what VB365 reports *(needs B2_*/S3_*)*.
vb365_api_rootResource list + version (confirms connectivity).
vb365_list_organizations / vb365_org_inventoryProtected orgs; an org's users/groups/sites/teams.
vb365_list_jobs / vb365_get_job / vb365_job_scopeJobs, one job's config, and exactly what a job protects (selected/excluded).
vb365_list_job_sessionsRecent run results (optionally per job).
vb365_list_repositories / vb365_list_restore_pointsRepos (capacity/retention/immutability); restore points.
vb365_list_object_storage / vb365_get_object_storageCloud/object storage (B2/S3/Azure/Wasabi/IBM/Glacier).
vb365_list_proxies / vb365_licenseProxies + status; license/edition/expiry.
vb365_getRead-only GET to any other / /... resource.

Action / Restore tools (opt-in, gated)

Registered only when the matching flag is set. Two-call confirm pattern: call once to get a preview + a one-time confirm_token; call again with confirm= to execute. Every execution is appended to TB_AUDIT_LOG.

Tool (flag)What it does
action_job (TB_ALLOW_JOB_CONTROL)start / stop / enable / disable a backup job
action_generate_report (TB_ALLOW_REPORTS)mailbox/onedrive/sharepoint/teams/user protection, license, storage reports → file
action_org_sync (TB_ALLOW_ORG_SYNC)trigger a directory resync for an org
action_proxy (TB_ALLOW_PROXY)rescan / maintenance-mode a proxy
restore_session_start → restore_browse / restore_search → restore_define → restore_execute → restore_status → restore_session_stop (TB_ALLOW_RESTORE)Full restore orchestration across Exchange / OneDrive / SharePoint / Teams: open a point-in-time session, browse/search restorable items, then define (pick items + target + options) and execute a restore.
Restore: define what, where, how
restore_session_start(scope="job", scope_id="<jobId>", workload="exchange")

→ { session_id } # opens a point-in-time explore session restore_browse(session_id) # list mailboxes restore_browse(session_id, parent_id= ) # list items in a mailbox restore_define(session_id, parent_id= , item_ids=[...], target="export") → { confirm_token, preview } # DRY RUN — nothing changed restore_execute(session_id, confirm= ) # executes + audits restore_session_stop(session_id)

  • target = export (safest — reads backup to a local file; no M365 creds), alternate (writes to a *different* M365 location), or original (writes back to the original location — destructive; also pass confirm_overwrite_original=True).
  • options may carry an alternate mailbox/folder and the M365 target credentials VB365 uses to write back (userName/userPassword/applicationId), or set VB365_RESTORE_* in .env.
  • PST export requires 64-bit Outlook 2010+ installed on the VB365 server (a Veeam requirement); without it, exportToPst returns a server-side error.

Setup

  1. Install Python 3.10+ where Claude Code runs.
  2. From this folder:
   python -m venv .venv

.\.venv\Scripts\Activate.ps1 pip install -r requirements.txt

3. Copy `.env.example` to `.env` and fill in `VB365_HOST`, `VB365_USERNAME`,

VB365_PASSWORD (keep VB365_PORT=4443, VB365_API_VERSION=v8 unless yours differ). Optionally add GRAPH_*, B2_*/S3_*, and the TB_* flags.

The REST API account needs to be a VB365 administrator (or restore

operator) — VB365 has no read-only API role. The read-only review tools

are GET-only regardless. New-VB365ReviewAccount.ps1 creates a dedicated

service account on the VB365 server. Keep .env out of source control.

Register with Claude Code

# Replace <repo> with the absolute path to your clone.

claude mcp add tractorbeeam365 --scope user -- " \.venv\Scripts\python.exe" " \server.py"

On Linux/macOS use forward slashes and /.venv/bin/python.

It is also published to the MCP Registry as io.github.Ringosystems/tractorbeeam-mcp (an OCI image on GHCR), so MCP clients that support the registry can install it directly. To run the published image as a stdio server:

docker run -i --rm \

-e VB365_HOST=... -e VB365_USERNAME=... -e VB365_PASSWORD=... \ ghcr.io/ringosystems/tractorbeeam-mcp:latest

Then ask: "Run a VB365 health summary and tell me if anything is misconfigured."

Enabling the action / restore tier

The action/restore tools stay hidden until you opt in. In .env:

TB_ENABLE_ACTIONS=true        # master switch

TB_ALLOW_JOB_CONTROL=true # + any of the per-category flags you want TB_ALLOW_RESTORE=true TB_AUDIT_LOG=audit/actions.jsonl

The action/restore tools are not registered over an HTTP transport unless

you also set TB_ALLOW_WRITE_OVER_HTTP=true, because that transport has no

per-caller identity. Run the operator tier over stdio, or only behind your own

authenticating reverse proxy.

Safety model: tools are only registered when enabled, every mutation needs a second call with a one-time confirm token, restores default to a safe target (original-location overwrite needs an explicit acknowledgement), and every action is written to an append-only audit log. Recommended: run a separate "operator" instance with the flags on, and the default instance read-only.

Run as a persistent service (Docker / UNRAID)

The image itself defaults to the stdio transport (so MCP clients can docker run -i it). Via docker compose it runs streamable-http on 0.0.0.0:8000 inside the container, read-only (no TB_* flags). No credentials are baked in. The HTTP transport fails closed: it refuses to start unless you set MCP_AUTH_TOKEN (clients then send Authorization: Bearer ), or you explicitly accept the risk with MCP_ALLOW_UNAUTHENTICATED_HTTP=true.

# Put MCP_AUTH_TOKEN=<a long random secret> in .env first.

docker compose up -d --build # builds locally and runs read-only

MCP is live at http:// :8766/mcp ; attach with:

claude mcp add --transport http tractorbeeam365 http:// :8766/mcp \ --header "Authorization: Bearer "

Prebuilt images

Each GitHub Release publishes a multi-arch, multi-tag image via CI (.github/workflows/publish.yml) to GHCR, Docker Hub, and the MCP Registry. The full release runbook is in PUBLISHING.md.

# GitHub Container Registry (published automatically on every release):

docker pull ghcr.io/ringosystems/tractorbeeam-mcp:latest

Docker Hub (published when the DOCKERHUB_USERNAME / DOCKERHUB_TOKEN repo

secrets are configured):

docker pull ringosystems/tractorbeeam365-mcp:latest

To publish manually instead:

docker build -t <dockerhubuser>/tractorbeeam365-mcp:latest .

docker push /tractorbeeam365-mcp:latest

Security: the MCP HTTP transport has no per-caller identity. This build

binds loopback by default, requires MCP_AUTH_TOKEN before it will serve HTTP,

and hides the write/restore tools over HTTP unless TB_ALLOW_WRITE_OVER_HTTP=true.

Still keep the port on a trusted network and front it with TLS + auth. The audit

log and any generated PST/report files live in the mounted audit/ and

downloads/ volumes. See SECURITY.md.

Quick connectivity test (no MCP client needed)

.\.venv\Scripts\Activate.ps1

python -c "import server; print(server.vb365_api_root())"

Notes

  • .gitignore excludes .env, the venv, and the operator-tier audit/, downloads/, *.pst artifacts. Never commit credentials or restored data.
  • VB365 ships a self-signed cert, so VB365_VERIFY_SSL defaults to `fa

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요

PopNx에게 묻기