0Pricing
MCP Academy · 강의

계층형 서버 아키텍처

전송, 핸들러, 비즈니스 로직을 분리합니다.

계층형 서버 아키텍처은(는) CoddyKit의 무료 MCP Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 MCP Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. MCP Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

이 강의의 일부는 아직 번역되지 않았으며 영어로 표시됩니다.

Why One Big File Hurts

A server crammed into one file mixes transport, tool logic, and data calls. As it grows, every change risks breaking something far away.

Think in Layers

A clean server splits into layers: transport at the edge, MCP handlers in the middle, and pure business logic underneath.

The Transport Layer

The outer transport layer only moves messages, over stdio or HTTP. It should know nothing about what your tools actually do.

Handlers Are Thin Adapters

Your tool and resource handlers should be thin: parse arguments, call a service, shape the result. Keep real work out of them.

@mcp.tool()
def summarize(text: str) -> str:
    return service.summarize(text)

The Service Layer Does the Work

Put the actual logic in a plain service module with no MCP imports. It is just normal Python you can call from anywhere.

def summarize(text: str) -> str:
    return shorten(clean(text))

Why the Split Pays Off

With logic decoupled from MCP, you can test it without spinning up a server, and reuse it in a CLI or web app later.

Dependencies Point Inward

Keep the rule one-way: handlers may import services, but services must never import handlers or the transport above them.

A Folder Per Concern

Map layers to folders so the structure tells the story: server entry, handlers, services, and models each get their own place.

src/
  server.py
  handlers/
  services/
  models.py

Register, Don't Define, in Entry

Your server.py should wire handlers to the FastMCP instance, not contain logic. It is an assembly point, not a workhorse.

from handlers import register_tools
register_tools(mcp)

Cross-Cutting Helpers Stay Shared

Logging, config, and validation are shared concerns. Give them a common module so every layer uses the same helpers.

Grow Without Rewrites

Layering lets the server scale in size: add a new tool by adding a handler plus a service, leaving everything else untouched.

Quick Check

Where should the real business logic of a tool live?

Recap: Layered Design

Split your server into transport, thin handlers, and pure services, with dependencies pointing inward. Next: configuration. 🧱

자주 묻는 질문

“계층형 서버 아키텍처” 강의는 무료인가요?

네 — “계층형 서버 아키텍처” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 MCP Academy 강의 전체를 잠금 해제할 수 있습니다. MCP Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“계층형 서버 아키텍처”에서 뭘 배우나요?

전송, 핸들러, 비즈니스 로직을 분리합니다. 브라우저에서 직접 실행하는 실습 코드로 MCP Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

MCP Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 MCP Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.

“계층형 서버 아키텍처” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 MCP Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 MCP Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 계층형 서버 아키텍처
  2. 환경을 통한 설정과 비밀 정보 관리
  3. 멱등적이고 부작용을 고려한 도구
  4. 도구와 스키마 버전 관리
← MCP Academy(으)로 돌아가기