# [사내AX] 팀 AI 스킬 허브 후속편 - OAuth 인증부터 협업 시스템까지

- 작성자: [소심한 코끼리](https://community.clauders.ai/member/imported-member-cgucXKpGXg)
- 공간: [AX: AI로 일하는 법](https://community.clauders.ai/team)
- 게시: 2026-01-15
- 연재: [팀이 함께 쓰는 Claude 작업 환경](https://community.clauders.ai/series/claude-team-workflows) 2/3편
- 주소: https://community.clauders.ai/team/post/%EC%82%AC%EB%82%B4ax-%ED%8C%80-ai-%EC%8A%A4%ED%82%AC-%ED%97%88%EB%B8%8C-%ED%9B%84%EC%86%8D%ED%8E%B8-oauth-%EC%9D%B8%EC%A6%9D%EB%B6%80%ED%84%B0-%ED%98%91%EC%97%85-%EC%8B%9C%EC%8A%A4%ED%85%9C%EA%B9%8C%EC%A7%80-baefa41f-7c78-8366-a54f-c5cc198e67cc

---

### 문제

이전 버전에서 MCP 서버는 **인증 없이 열려 있었습니다**. Claude Code Marketplace와 함께 지원하려다보니 레포지토리를 public으로 열어야만 했었고, 원래 계획은 API Token을 발급해서 인증하려고했지만, Claude code 인증 방식 자체의 버그 때문에 그마저도 잘 동작되지 않았습니다.

### 해결

원하는 기능 자체는 MCP만으로도 전부 제공할 수 있고, 이미 Claude Code가 **OAuth 2.1 인증**을 지원하기때문에 Google Oauth를 연동하여. 이제 팀원들은 단 한 줄 명령어로 연결할 수 있어요:

```
claude mcp add your-toolkit https://your-domain.example.com/api/mcp -t http
```

브라우저에서 Google OAuth 로그인 창이 뜨고, 인증 완료 후 자동 연결됩니다.

### 효과

Before

After

인증 없이 열려있음

OAuth 2.1로 보안 강화

API 키 수동 설정 필요

브라우저 로그인으로 자동 연결

누가 사용하는지 모름

사용자 식별 가능

### 문제

스킬을 만들었으면 웹 대시보드에 들어가서 업로드해야 했습니다. 번거롭죠. (예쁘게 만들었지만..)

### 해결

`deploy_skill` 도구를 추가해서 **대화 중에 바로 팀과 공유**할 수 있게 했습니다.

```
👤 "방금 만든 이 스킬 팀이랑 공유해줘"

🤖 Claude Code 내부:
    → deploy_skill(type="skill", name="코드 리뷰어", content="...")
    → 버전 자동 할당 (1.0.0)
    → 카탈로그에 즉시 등록

💬 "팀 카탈로그에 '코드 리뷰어' 스킬을 배포했습니다. 버전 1.0.0"
```

### 새로 추가된 MCP 도구

도구

설명

`deploy_skill`

스킬/에이전트/커맨드/가이드를 팀에 배포

`undeploy_skill`

본인이 배포한 플러그인 삭제

`check_updates`

설치된 스킬의 업데이트 확인

버전은 **자동으로 관리**됩니다:

- 신규 배포: `1.0.0`
- 기존 업데이트: 변경 내용에 따라 자동 bump (patch/minor/major)

### 문제

다른 팀원이 만든 스킬에 버그가 있거나 개선 아이디어가 있으면, Slack에서 말하거나 직접 수정을 요청해야 했습니다.

### 해결

**GitHub PR 같은 개선 제안 시스템**을 MCP 도구로 구현했습니다.

```
👤 "이 md2pdf 스킬에 한글 깨짐 버그 있어. 수정 제안해줘"

🤖 suggest_improvement(
     pluginId="md2pdf",
     title="한글 깨짐 수정",
     description="CJK 폰트 fallback 추가"
   )

💬 "md2pdf 원작자에게 개선 제안을 보냈습니다."
```

원작자는 제안을 확인하고 수락/거부할 수 있어요:

도구

설명

`suggest_improvement`

다른 사람 플러그인에 개선 제안

`list_suggestions`

받은/보낸 제안 목록 조회

`resolve_suggestion`

제안 수락/거부 (수락 시 자동 버전 bump)

### 문제

MCP 서버를 연결해도, 팀원들이 **스킬 검색하는 걸 까먹는** 경우가 많았습니다. "그런 스킬 있는지 몰랐어요"가 반복됐죠.

### 해결

**MCP 프롬프트** 기능을 활용해 프로젝트 설정을 자동화했습니다.

MCP 프로토콜은 `tools` 외에 `prompts`도 지원하는데요, 서버에서 정의한 프롬프트를 Claude Code에서 **슬래시 명령어**로 바로 호출할 수 있습니다.

```
/mcp__your-toolkit__Clauders-setup
```

### MCP 프롬프트 구현 방식

MCP 서버에서 두 가지 메서드를 구현하면 됩니다:

```
// 1. prompts/list - 사용 가능한 프롬프트 목록
export async function listPrompts(): Promise<McpPrompt[]> {
  return [
    {
      name: 'Clauders-setup',
      description: 'Hook과 CLAUDE.md를 설치하여 팀 스킬을 자연스럽게 사용',
    },
  ]
}

// 2. prompts/get - 프롬프트 내용 반환
export async function getPrompt({ name }): Promise<McpPromptResult | null> {
  if (name !== 'Clauders-setup') return null
  
  return {
    messages: [
      {
        role: 'user',
        content: { type: 'text', text: SETUP_CONTENT },
      },
    ],
  }
}
```

Claude Code가 MCP 서버에 연결되면, 프롬프트를 `/mcp__서버이름__프롬프트이름` 형태의 슬래시 명령어로 자동 노출합니다.

### 실행 흐름

```
사용자: /mcp__your-toolkit__Clauders-setup

Claude Code → MCP 서버 JSON-RPC 요청:
  {"method": "prompts/get", "params": {"name": "Clauders-setup"}}

MCP 서버 → 프롬프트 내용 반환

Claude Code → 해당 내용을 컨텍스트에 주입하여 실행
  → CLAUDE.md 생성
  → .claude/settings.json 생성
```

### 설치되는 파일들

[**CLAUDE.md**](http://CLAUDE.md) - 스킬 검색 규칙

```
## 스킬 자동 활성화 (필수)

새로운 유형의 작업 시작 시 **반드시** 관련 스킬을 검색하세요:

| 작업 유형 | 검색어 |
|----------|--------|
| 사례글 작성 | devlog, writing |
| 코드 리팩토링 | refactor |
| DB 접근 | database |

**이 규칙은 SKIP 불가.**
```

**Hook 설정** - 리마인더

```
{
  "hooks": {
    "UserPromptSubmit": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "echo '🔍 새 작업? search_plugins로 관련 스킬 확인하세요'"
          }
        ]
      }
    ]
  }
}
```

MCP 서버 연결 후 이 프롬프트 하나만 실행하면, 해당 프로젝트에서 팀 스킬을 **자연스럽게 활용하는 환경**이 세팅됩니다. "몰랐어요"가 사라졌어요.

### 문제

스킬이 업데이트되면 "뭐가 바뀌었지?" 확인하기 어려웠습니다.

### 해결

**버전 히스토리와 롤백 기능**을 추가했습니다.

기능

설명

버전 히스토리

전체 버전 히스토리 조회

변경 내역

버전별 변경 내역 확인

버전 비교

두 버전 간 차이 비교

롤백

이전 버전으로 롤백

### Before (이전 버전)

```
# 1. GitHub 토큰 발급
# 2. .env 설정
# 3. 마켓플레이스 URL 등록
# 4. 토큰 설정
# ... 복잡
```

### After (현재)

```
# 터미널에서 한 줄이면 끝
claude mcp add your-toolkit https://your-domain.example.com/api/mcp -t http
```

GitHub 마켓플레이스 연동, 토큰 설정 등 **레거시 코드를 전부 제거**하고 MCP-only 접근 방식으로 단순화했습니다.

### 정량적 변화

지표

Before

After

온보딩 설정

~10분 (GitHub 토큰 등)

30초 (한 줄 명령어)

스킬 배포

웹 대시보드 접속 필요

대화 중 즉시 배포

보안

인증 없음

OAuth 2.1

스킬 검색 누락

자주 발생

Hook으로 리마인드

커밋 수

0

**313개**

### 정성적 변화

- **"설정 어떻게 해?"** → 명령어 하나 복사하면 끝
- **"이 스킬 공유해줘"** → Claude Code에게 말하면 즉시 배포
- **"버그 있는데?"** → 개선 제안 시스템으로 협업
- **"스킬 있는지 몰랐어요"** → Hook으로 매번 리마인드

## 마무리

3주 만에 313개 커밋이라니, Claude Code와 함께 작업하니 이런 속도가 가능했습니다.

특히 **OAuth 인증**, **대화 중 배포**, 그리고 **MCP 프롬프트를 통한 자동 설정**이 가장 큰 변화였어요. 이제 팀원들이 스킬을 만들고 공유하는 흐름이 훨씬 자연스러워졌습니다.

사내에 모든 분들이 쓰실 수 있게 공유 드렸고, 앞으로는 바이브코딩 하시는 분들이 여러가지 유용한 스킬들을 만들어 함께 쌓아가는걸 기대하고있어요!

아직 적재적소에 필요한 스킬을 검색하고 사용하는데에는 2%(20% 일지도..?) 부족하지만 이론적으로 생각하던 기능들은 모두 구현이 되었습니다.

사내에 Claude Code를 도입했다면, 이런 스킬 공유 시스템을 꼭 만들어보세요. 팀 전체의 AI 활용 수준이 함께 올라갑니다 🚀

궁금한 점 있으시면 댓글 남겨주세요!
