내가 Kiro를 사용해 자체 MCP 구성을 최적화한 방법

발행: (2026년 1월 12일 오후 10:21 GMT+9)
12 분 소요
원문: Dev.to

Source: Dev.to

Source:

문제 개요

저에게는 문제가 있었습니다. 제 Kiro 설정에 시간이 지나면서 14개의 MCP 서버가 쌓였습니다: AWS 도구, 웹 자동화, 문서 서버, 이메일 통합 등. 이는 수십 개의 도구가 매 대화 시작 시마다 컨텍스트에 로드된다는 뜻이었으며, 필요 여부와 관계없이 로드되었습니다.

확장성의 숨은 비용 – MCP 서버는 AI 어시스턴트에게 외부 도구와 서비스에 대한 접근 권한을 부여합니다. 강력하지만, 각각이 컨텍스트 창에 추가됩니다. 도구가 많을수록 → 첫 질문을 하기 전까지 더 많은 토큰이 소모되고, 응답이 느려지며, 옵션이 너무 많아 AI가 때때로 잘못된 도구를 선택하게 됩니다.

자체 최적화 접근법

I used Kiro CLI with the Auto model (the default mode that blends frontier models with specialized ones for different tasks). For this kind of work (analyzing config files, researching documentation, generating structured output), Auto picks the right model for each step rather than using a single expensive model for everything.

  1. 복원 지점 만들기

    /checkpoint init

    문제가 발생했을 때 되돌릴 수 있는 체크포인트를 생성합니다.
    추가 안전 팁: ~/.kiro에 git 저장소를 초기화하고 실험하기 전에 커밋하세요. 이렇게 하면 Kiro가 시작되지 않더라도 복구 경로를 확보할 수 있습니다.

  2. Kiro에 프롬프트 전달 ( ~/.kiro에서 실행):

    “이것은 내 Kiro 설정 폴더입니다. 여기 mcp 설정 파일에 MCP 서버가 너무 많이 있습니다. 이 MCP 서버들을 Kiro Powers로 그룹화하고 변환하도록 도와줄 수 있나요? 온라인에서 그들의 작동 방식과 구문 및 폴더 구조에 대한 세부 정보를 신중히 조사해주세요. 기존 또는 새 파워에 이미 포함된 MCP 서버가 중복되지 않도록 확인하고, 코드를 변경하기 전에 상세한 계획을 준비해 제안해 주세요.”

    마지막 문장은 중요합니다 – 즉시 파일을 수정하는 것이 아니라 검토할 수 있는 계획을 원했습니다.

Kiro가 제안한 내용

Kiro는 내 mcp.json을 분석하고, 온라인에서 Powers 문서를 조사한 뒤 통합 계획을 제시했습니다. 또한 변경하기 전에 원본 설정(mcp.json.backup)을 백업해 두었는데, 이는 내가 따로 요청하지 않아도 된 현명한 예방 조치였습니다.

논리적 그룹화 (기능 기반)

변경 전

{
  "mcpServers": {
    "awslabs.aws-api-mcp-server": { ... },
    "aws-knowledge-mcp-server": { ... },
    "awslabs.aws-serverless-mcp-server": { ... },
    "bedrock-agentcore-mcp-server": { ... },
    "strands-agents": { ... },
    "email-calendar-mcp": { ... }
    // … 8 more …
  }
}

변경 후 – 키워드에 따라 필요 시 로드되는 여섯 개 Powers:

Power포함 내용
aws-developmentAWS API, 문서, 서버리스, CDK, 다이어그램 도구
web-development프론트엔드 프레임워크
web-research-browse-testFetch + Playwright를 이용한 웹 자동화
agentic-aiBedrock AgentCore + Strands Agents SDK
office-tools이메일 및 캘린더
amazon-aurora-dsql(이미 Power로 존재)

핵심 인사이트: 도구들은 워크플로우별로 자연스럽게 클러스터링됩니다.

  • AWS 인프라를 구축할 때는 CDK 서버와 AWS 문서가 필요하지만 Playwright는 필요하지 않습니다.
  • 웹 앱을 테스트할 때는 브라우저 자동화가 필요하지만 아키텍처 다이어그램 도구는 필요하지 않습니다.

대화

계획을 검토한 후 승인했습니다:

“당신의 계획을 승인합니다, 진행하세요!”

Kiro는 다음을 수행했습니다:

  • 폴더 구조를 만들었습니다.
  • 적절한 키워드와 온보딩 지침이 포함된 POWER.md 파일을 작성했습니다.
  • 각 Power마다 별도의 mcp.json을 구성했습니다.
  • 모범 사례가 포함된 스티어링 파일을 추가했습니다.

후속 질문 및 개선

질문Kiro의 답변 / 결과
“원래 MCP 서버를 메인 mcp 설정 파일에서 제거했나요? 남아있는 서버는 몇 개입니까?”정리 작업을 확인하고 남은 개수를 보고했습니다.
“이것들을 에이전시 AI Power로 묶을 수 없나요?”Bedrock AgentCore와 Strands 서버를 하나의 agentic‑ai Power로 통합했습니다.
“웹‑리서치와 웹‑개발 Power를 동시에 트리거하면 어떻게 되나요? Playwright가 두 번 포함되나요?”Powers가 네임스페이스화되어 충돌을 방지한다는 점을 설명했습니다. 이를 통해 더 나은 설계가 이루어졌으며, fetch와 Playwright를 결합한 전용 web‑research‑browse‑test Power를 만들고 web‑development와는 별도로 구분했습니다.

각 질문이 결과를 다듬었습니다. AI가 구현을 담당했고, 저는 설계를 이끌었습니다. 이를 위해 우리는 Kiro Power가 무엇인지 알아야 했습니다.

Kiro Power가 어떤 모습일까

**Kiro Power**는 자체 문서, 모범 사례, 그리고 자체 MCP 서버 구성을 하나로 묶은 독립형 패키지입니다. Power가 활성화되면 해당 MCP 서버가 사용 가능해지고, 필요하지 않을 때는 컨텍스트에서 제외됩니다.

예시: aws-development Power

aws-development/
├── POWER.md
├── mcp.json
└── steering/
    ├── aws-api-workflows.md
    ├── serverless-patterns.md
    ├── cdk-best-practices.md
    └── architecture-diagrams.md

POWER.md frontmatter

---
name: "aws-development"
displayName: "AWS Development"
description: "Comprehensive AWS development toolkit..."
keywords:
  - "aws"
  - "cloud"
  - "serverless"
  - "lambda"
  - "cdk"
  - "cloudformation"
  - "infrastructure"
  - "api"
  - "documentation"
  - "diagrams"
mcpServers:
  - "aws-api"
  - "aws-knowledge"
  - "aws-serverless"
  - "aws-diagram"
  - "aws-cdk"
---

keywords 배열이 트리거 메커니즘입니다. Kiro가 대화 중에 이 단어들 중 하나라도 감지하면 해당 Power를 자동으로 로드합니다. 키워드 매칭은 단순하지만 효과적이며, 작업에 대해 자연스럽게 이야기하는 방식을 반영하는 단어를 사용하면 됩니다.

주요 내용

  • 관련 MCP 서버를 Powers에 그룹화하여 시작 컨텍스트 크기를 줄이세요.
  • 키워드 기반 활성화를 사용하여 필요한 도구만 로드되도록 하세요.
  • 대량 변경 전에 체크포인트와 백업을 생성하세요.
  • AI와 반복 – 계획을 요청하고, 검토하고, 승인한 뒤 구현하도록 하세요.

14개의 개별 MCP 서버를 6개의 온‑디맨드 Powers로 통합함으로써 초기 토큰 로드를 크게 줄이고, 응답 속도를 높였으며, Kiro의 도구 선택을 훨씬 더 신뢰할 수 있게 만들었습니다. 이와 같은 접근 방식은 과도하게 설정된 Kiro 구성에도 적용할 수 있습니다. 최적화 즐기세요!

결과

주요 mcp.json 파일은 이제 거의 비어 있으며, 설치된 Powers를 참조하는 Powers 섹션만 포함합니다. 필요할 때까지 서버가 로드되지 않으므로 시작이 더 빠릅니다.

  • 컨텍스트 오염이 사라졌습니다. 웹 프론트엔드 작업을 할 때 이메일 및 캘린더 도구가 컨텍스트를 어지럽히지 않습니다.
  • AI는 옵션이 적고 더 관련성이 높아져 도구 선택을 더 잘합니다.

Powers는 대화 중 키워드에 따라 활성화됩니다:

  • **“CDK 스택”**에 대해 물으면 → AWS Development Power가 로드됩니다.
  • **“브라우저 테스트”**에 대해 물으면 → Web Automation Power가 로드됩니다.

흥미로운 점은 구체적인 최적화뿐 아니라 접근 방식입니다. 저는 Kiro를 사용하여:

  1. 자신의 구성을 분석합니다.
  2. 제가 완전히 익숙하지 않은 문서를 조사합니다.
  3. 재구성 계획을 제안합니다.
  4. 엣지 케이스를 논의합니다.
  5. 여러 파일에 걸쳐 변경을 구현합니다.
  6. 결과를 검증합니다.

직접 해보기

MCP 설정이 복잡해졌다면, 동일한 접근 방식을 사용할 수 있습니다:

  1. 먼저 /checkpoint init을 실행합니다 (또는 Kiro가 시작되지 않아도 작동하는 안전망으로 Git을 사용할 수 있습니다).
  2. ~/.kiro 폴더에서 Kiro CLI를 열고 mcp.json을 분석하여 그룹화를 제안하도록 요청합니다.
  3. 계획을 검토하고, 우려 사항을 논의하고, 다듬은 뒤 승인하여 실행하도록 합니다.
  4. 키워드가 올바른 Powers를 트리거하는지 테스트합니다.
  • Powers는 MCP 서버가 필요하지 않습니다. 특정 프레임워크나 패턴을 위한 스티어링 파일을 사용해 문서 전용 Powers 만들기 를 할 수 있습니다.
  • 이들은 휴대성이 뛰어나 GitHub 저장소에 푸시하면 다른 사람도 설치할 수 있습니다.
  • 커뮤니티 Powers 저장소 에는 Datadog, Figma, Stripe 등 다양한 예제가 있습니다.

아직 Kiro를 사용해 보지 않았다면, 무료로 시작할 수 있습니다.

What This Opens Up

I used an AI tool to restructure how that same AI tool accesses its capabilities. The system improved its own configuration based on how I actually use it, and it took 15 minutes.

The same pattern applies beyond MCP setups: treat your AI‑tooling configuration as something that evolves.

  1. Start with defaults.
  2. Use the tools and notice friction.
  3. Ask the AI to help reduce that friction.

Configuration files aren’t sacred; they’re just another part of a codebase that can be refactored and improved.

Back to Blog

관련 글

더 보기 »

안녕, 뉴비 여기요.

안녕! 나는 다시 S.T.E.M. 분야로 돌아가고 있어. 에너지 시스템, 과학, 기술, 공학, 그리고 수학을 배우는 것을 즐겨. 내가 진행하고 있는 프로젝트 중 하나는...