TL;DR

  • Argos는 약 1MB 크기의 Rust 보안 게이트웨이로, AI 클라이언트와 모델 컨텍스트 프로토콜(MCP) 서버 사이의 JSON-RPC 트래픽을 검사해 허가되지 않은 파일 접근과 파괴적 명령을 차단함.
  • Tokio 비동기 스트림을 사용하며, 요청 검사 오버헤드는 1밀리초 미만이고 도구 호출 검사는 0.2밀리초 미만임.
  • 경로 정규화와 ../ 제거를 통해 경로 탐색을 막고, .env, 개인 키, 클라우드 자격 증명 등 민감한 파일 접근을 차단함.
  • 허용·차단 규칙은 argos.toml에서 설정하며, 감사 로그는 로컬 JSON Lines 파일에 기록되고 클라우드 텔레메트리는 없음.
  • Windows·Linux 사전 빌드 바이너리 또는 소스 빌드로 설치할 수 있으며, Claude Desktop·Cursor의 MCP 서버 명령 앞에 연결해 사용함.

Argos

  • Argos는 AI 클라이언트(Claude Desktop, Cursor)와 기반 MCP 도구 서버 사이에 배치되는 투명한 보안 파이프임.
  • Quad9·Pi-hole의 마찰 없는 사용 철학에서 영감을 받아, 원시 JSON-RPC 트래픽을 실시간 검사하고 허가되지 않은 파일 접근, 경로 탐색 공격, 파괴적 명령이 시스템에 도달하기 전에 결정론적으로 차단함.

기능

  • 밀리초 미만 오버헤드: 순수 Rust와 Tokio 비동기 스트림으로 구현되며, 에이전트나 개발자가 체감할 지연이 없음.
  • 경로 탐색 샌드박싱: 운영체제 경로 정규화와 ../ 제거를 통해 엄격한 작업 공간 경계를 적용함.
  • 비밀 정보 및 민감 파일 차단: .env, id_rsa, id_ed25519 개인 키, 클라우드 자격 증명에 대한 접근을 차단함.
  • 파괴적 명령 차단: rm -rf, 디스크 포맷 명령, 포크 폭탄 등 위험한 터미널 명령을 가로챔.
  • 로컬 감사 로깅: 허용 및 차단 작업을 구조화된 JSON Lines 로그(argos-audit.log)에 기록하며, 클라우드 텔레메트리를 사용하지 않음.
  • 유연한 설정: 선언형 규칙을 argos.toml에서 사용자 지정함.
  • 로컬·비공개 도구: 자체 포함된 약 1MB 단일 바이너리로 전부 Rust로 구현되며, 외부 텔레메트리나 클라우드 의존성이 없음. 결정론적 패턴 매칭, 운영체제 기본 기능, JSON-RPC 스트림 가로채기에만 의존해 민감한 코드, 설정 키, 감사 기록이 로컬 기기를 벗어나지 않음.

빠른 시작

1. 설치

  • 선택지 A — 사전 빌드 바이너리(Windows·Linux): Releases 페이지에서 시스템에 맞는 최신 사전 컴파일 바이너리를 내려받음.
  • Windows: argos.exe를 내려받거나 argos-windows-x86_64.zip의 압축을 풂.
  • Linux: argos-linux-x86_64.tar.gz를 내려받아 압축을 푼 뒤 실행 권한을 설정함.
  • 선택지 B — 소스에서 빌드(macOS 또는 모든 플랫폼): macOS(Apple Silicon·Intel)에서 실행하거나 로컬 컴파일을 선호하는 경우 저장소를 복제하고 cargo build --release를 실행함.
  • 저장소: https://github.com/JUSICK/Argos-mcp-guardrail.git
  • 컴파일된 바이너리 위치: Linux·macOS는 target/release/argos, Windows는 target/release/argos.exe임.

2. 정책 설정

  • argos.toml을 만들고 Argos 실행 파일 옆이나 작업 공간 루트에 둠.
  • 파일 시스템 정책은 경로 탐색 차단을 활성화하고, .env, .ssh, id_rsa, id_ed25519, credentials, .aws, .npmrc를 차단 패턴으로 지정함.
  • .env.example, .env.sample, .env.template은 정책을 통과하는 명시적 예외로 지정함.
  • 명령 정책은 rm -rf, mkfs, 포크 폭탄, chmod -R 777, dd if=를 차단 대상으로 지정함.
  • 감사 로깅은 활성화하고, 허용된 프로세스 기록은 비활성화할 수 있음. log_file에는 Argos와 같은 디렉터리에 만들 파일명이나 전체 경로를 지정함. 기본 예시는 argos-audit.log임.

3. Claude Desktop 또는 Cursor 연동

  • claude_desktop_config.json의 mcpServers 설정에서 Argos를 MCP 서버 명령으로 지정하고, -- 뒤에 실제 MCP 서버 명령과 인수를 둠.
  • Windows 설정은 argos.exe 경로와 npx.cmd, @modelcontextprotocol/server-filesystem, 작업 공간 경로를 사용함.
  • macOS·Linux 설정은 /usr/local/bin/argos와 npx, @modelcontextprotocol/server-filesystem, 작업 공간 경로를 사용함.
  • Claude Desktop을 재시작하면 Argos가 도구 호출을 감시해 허가되지 않은 파일 시스템 경로 탐색과 자격 증명 노출을 차단함.

4. 작동 방식

  • AI 클라이언트(Claude·Cursor)와 실제 MCP 도구 서버 사이에서 Argos가 표준 입력·출력(stdin/stdout)으로 전달되는 JSON-RPC 트래픽을 검사함.
  • Argos는 tools/call 요청을 0.2밀리초 미만에 검사함.
  • 허용된 요청은 실제 MCP 도구 서버로 전달하고, 차단된 요청은 JSON-RPC 오류를 반환하며 이벤트를 기록함.
  • 대규모 프로젝트에서 AI 에이전트가 둘 이상이면 Argos 인스턴스를 원하는 만큼 둘 수 있으며, Argos-Backend, Argos-Frontend처럼 이름을 바꿔 사용할 수 있음.

라이선스

  • MIT 라이선스이며 개인 및 상업적 사용이 무료임.