Skip to content

Han-wo/My-MCP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Claude Code MCP Servers

Claude Code에서 Atlassian(Jira/Confluence/Bitbucket), Postman, Swagger를 쓸 수 있게 해주는 MCP 서버 + CLI 5종 모음.

포함된 MCP

폴더 설명 주요 기능
jira-mcp Jira Cloud 티켓 티켓 조회/검색(JQL), 스프린트·주간 요약
confluence-mcp Confluence Cloud 페이지 페이지 검색(CQL), 스페이스/하위 페이지 탐색
bitbucket-mcp Bitbucket Cloud PR PR 목록/조회, CodeRabbit 리뷰 추출
postman-mcp Postman Collection 컬렉션 탐색, 실제 API 호출
swagger-mcp OpenAPI/Swagger 스펙 탐색, 엔드포인트 호출

각 MCP의 상세 구조·구현은 해당 폴더의 ARCHITECTURE.md 참조.

공통 스택

  • 런타임: Node.js 20+ (네이티브 fetch)
  • 언어: TypeScript 5.7+, ESM
  • MCP SDK: @modelcontextprotocol/sdk ^1.12.1
  • 빌드: tsc 단독 (번들러 없음)
  • 외부 의존성: MCP SDK 하나 — axios/commander 등 미사용

새 기기에 설치

git clone <이 레포 URL> ~/.claude/mcp-servers
cd ~/.claude/mcp-servers

# 5개 MCP 전부 의존성 설치 + 빌드
./setup-all.sh

# MCP마다 토큰 입력 → Claude Code에 등록
# (필요한 것만 setup/register 하면 됩니다)
cd jira-mcp && node dist/cli.js setup && node dist/cli.js register && cd ..
cd confluence-mcp && node dist/cli.js setup && node dist/cli.js register && cd ..
cd bitbucket-mcp && node dist/cli.js setup && node dist/cli.js register && cd ..
cd postman-mcp && node dist/cli.js setup && node dist/cli.js register && cd ..
cd swagger-mcp && node dist/cli.js setup && node dist/cli.js register && cd ..

주의: 클론 위치는 자유입니다(~/.claude/mcp-servers/가 아니어도 됨). 각 register가 현재 위치를 기반으로 Claude Code에 절대경로를 등록합니다.

등록 후 Claude Code를 재시작하면 mcp__jira__get_ticket, mcp__bitbucket__get_coderabbit_review 등 도구가 노출됩니다.

자격증명은 어디에 저장되나

각 MCP의 config.json (chmod 0600)에 평문 저장. .gitignore에 포함되어 있어 커밋되지 않습니다.

register를 실행하면 Claude Code의 ~/.claude.json에 환경변수로 복사되어, 이후엔 서버 프로세스가 env로 받습니다. 즉 config.jsonsetupregister 흐름에서만 쓰는 임시 저장소에 가깝습니다.

기기별로 토큰이 다르므로 새 기기에서는 setup을 다시 실행해야 합니다.

공통 CLI 커맨드

모든 MCP에 공통:

node dist/cli.js setup       # 자격증명 대화형 입력 → config.json 에 0600 저장
node dist/cli.js register    # claude mcp add --env ... 실행
node dist/cli.js status      # 현재 설정 상태 확인
node dist/cli.js help        # 도움말

npm link 하면 패키지 이름(jira-mcp, bitbucket-mcp 등)으로 전역에서 호출 가능:

cd jira-mcp && npm link
# 이후: jira-mcp setup / jira-mcp register

공유 구현 패턴

5개 MCP 모두 같은 골격을 따릅니다:

src/
├── index.ts        # MCP stdio 서버 (Server + StdioServerTransport)
├── cli.ts          # setup / register / status + 기타
└── <domain>-client.ts   # REST 클라이언트

MCP 서버는 @modelcontextprotocol/sdk의 표준 패턴:

import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';

const server = new Server(
  { name: 'xxx-mcp', version: '1.0.0' },
  { capabilities: { tools: {} } }
);

server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools: [...] }));
server.setRequestHandler(CallToolRequestSchema, async (req) => {
  const { name, arguments: args } = req.params;
  // switch → 도구별 처리
  return { content: [{ type: 'text', text: result }] };
});

await server.connect(new StdioServerTransport());

설정 로드 우선순위:

환경변수 (register가 주입) → config.json → process.exit(1)

연관 Skill

  • coderabbit-triage — bitbucket-mcp를 소비해 PR의 CodeRabbit 리뷰를 우선순위 매겨 정리하는 Claude Code skill.

라이선스

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors