프로그래밍 방식으로 폰트를 생성하고, 글리프를 가져오고, 배포까지 관리하세요. 앱과 동일한 엔진, bearer 토큰 하나면 됩니다.
모든 요청은 Authorization 헤더에 bearer 토큰을 담아 보냅니다. 키는 서버에만 보관하세요.
로그인하면 바로 쓸 수 있는 API 키를 만들 수 있어요 — 무료이고, 모든 플랜에 API 액세스가 포함돼 있습니다.
키를 받으려면 로그인하세요요청은 API 키마다 제한돼요. 한도를 넘으면 429 Too Many Requests — 헤더: Retry-After. 한도는 플랜에 따라 늘어납니다:
| 폰트 생성 · 그 외 | |
| Starter | 60 · 600 / 분 |
| Pro | 200 · 2 000 / 분 |
| Agency | 600 · 6 000 / 분 |
더 높은 처리량이 필요하신가요? 플랜 업그레이드.
텍스트 프롬프트에서 완전한 폰트 패밀리를 생성합니다. 폴링하거나 webhook으로 받을 수 있는 작업을 반환합니다.
| prompt필수 | 폰트에 대한 자연어 설명입니다. Optional when reference_image_url is set. |
| reference_image_url | 스타일 레퍼런스 이미지(PNG/JPG/WEBP) — 공개적으로 접근 가능한 직접 URL이어야 해요. 저희는 이미지를 저장하지 않고 링크를 그대로 렌더링 엔진에 전달합니다 — Figma/Chrome 플러그인의 스크린샷 → 폰트 기능과 같은 방식이에요. |
| languages | ISO 코드 배열 — 기본값: ["en"]. Two-letter ISO codes, full list: GET /api/public/languages. |
| weights | 예: ["normal","bold","thin"]. |
| glyph_types | letters · digits · punct · special (default all). |
| model_tier | standard (Epicur ×1) · pro (Spinoza ×3) · ultra (Nietzsche ×5). |
폰트의 상태와 다운로드 URL(TTF / WOFF2 / 가변)을 가져옵니다.
빌드된 폰트 파일을 원하는 형식(ttf/otf/woff/woff2)으로 다운로드합니다 — Studio의 다운로드 버튼이 내려주는 것과 같은 파일이에요.
지원되는 모든 ISO-2 언어 코드를 문자 체계별 글리프 수, 텍스트 방향과 함께 제공합니다 — 유효한 "languages" 배열을 만들 때 사용하세요.
최근 100개의 폰트 작업 — 상태, 모델, 소스와 각 폰트 페이지로 가는 링크를 보여줍니다.
생성은 비동기로 처리됩니다. generate에 POST한 뒤 GET /api/public/status?link=… 를 몇 초마다 상태가 font_ready(또는 failed)가 될 때까지 폴링하세요.
| status | queued · processing · font_ready · failed |
| progress | { total, completed, failed } — 완료된 글리프 아틀라스 수 |
| fonts | 다음 조건이 충족되면 제공되는 ttf/otf/woff/woff2 직접 링크 — status = font_ready. |
3~5초마다 한 번씩 폴링하면 충분해요 — 폰트 패밀리 전체는 보통 2분 이내에 완성됩니다. 폰트 파일 URL은 정적이라 한 번 반환되면 별도 인증이 필요 없어요.
모든 오류는 일관된 JSON 형식을 따릅니다: { "success": false, "error": "…" }.
| 400 | 잘못된 요청 — 필드가 누락됐거나 잘못됐어요. error 필드에서 자세한 내용을 확인하세요. |
| 401 | 인증되지 않음 — 누락되거나 잘못된 Authorization 헤더. |
| 402 | 결제 필요 — 글리프 할당량이 소진되었습니다. Plans 페이지에서 충전하세요. |
| 403 | 접근 금지 — 이 링크는 다른 계정에 속합니다. |
| 404 | 찾을 수 없음 — 폰트 ID가 존재하지 않거나 다른 계정에 속합니다. |
| 429 | 요청이 너무 많음 — 요청 한도를 초과했어요. 잠시 뒤 다시 시도하세요 — 대기 시간은 Retry-After. |
| 500 | 내부 오류 — 저희 측에서 문제가 발생했습니다. 몇 초 후 재시도하면 대개 해결됩니다. |
{
"success": false,
"error": "Not enough glyphs. Top up: https://yofont.com/plans"
}
MCP(Model Context Protocol)를 사용하면 Claude Code, Cursor, Codex 같은 AI 코딩 에이전트가 작업 도중에 YoFont를 직접 호출할 수 있어요 — 대화 중간에 폰트를 생성하고, 빌드가 끝나길 기다렸다가, 파일을 곧바로 프로젝트에 넣습니다. curl 명령어를 복사해서 붙여넣을 필요가 없어요.
모든 MCP 도구 호출은 API 탭에 문서화된 것과 동일한 REST 엔드포인트를 감싸는 얇고 투명한 래퍼일 뿐이에요 — 인증 방식도, 속도 제한도, 유효성 검사도 같습니다. MCP 서버가 하는 일 중 REST 문서에 없는 건 없어요.
아래 프롬프트를 복사해서 Claude Code, Cursor 또는 Codex에 붙여넣으세요. 에이전트가 YoFont MCP 서버를 스스로 등록하고 확인까지 마쳐요 — 설정 파일을 직접 손댈 필요가 없습니다.
API 탭의 인증 섹션에서 키를 받으세요.
MCP 클라이언트를 다음 주소로 연결하세요: https://yofont.com/api/public/mcp. Streamable HTTP 전송 방식(JSON 응답 모드)을 사용합니다 — 호출마다 JSON-RPC 2.0 요청 하나면 되고, 유지할 세션이나 소켓은 없어요.
| 전송 방식 | Streamable HTTP(POST 위의 JSON-RPC 2.0). 메서드: initialize, ping, tools/list, tools/call. |
| 인증 | REST API와 동일한 API 키를 사용합니다 — 모든 요청에 헤더로 담아 보내세요: Authorization: Bearer yf_live_.... |
다섯 가지 도구가 API 탭의 REST 엔드포인트와 일대일로 대응해요 — 일반 REST에 없는 기능은 MCP에도 없습니다.
프롬프트와/또는 레퍼런스 이미지로 완전히 새로운 폰트 패밀리를 생성합니다. 폴링용 링크와 함께 곧바로 응답을 반환해요 — 이는 블로킹 호출이 아니라 비동기 작업입니다.
| prompt | 자연어로 된 스타일 설명입니다. reference_image_url이 주어지면 생략할 수 있어요. |
| reference_image_url | 공개 이미지에 대한 직접 URL입니다 — 호출 시점에 외부에서 접근 가능하기만 하면 됩니다. |
| languages, weights, glyph_types, model_tier | REST 엔드포인트와 형식과 기본값이 동일해요 — API 탭의 "폰트 생성" 섹션을 참고하세요. |
폰트 작업의 빌드 진행 상황을 폴링합니다. 준비되면 ttf/otf/woff/woff2 직접 링크를 반환해요 — 별도 인증 없이 바로 가져올 수 있습니다.
| link필수 | generate_font가 반환한 폰트 링크입니다. |
폰트 파일의 바이트를 MCP 리소스로 응답에 바로 담아 반환합니다 — 에이전트가 프로젝트에 곧바로 파일로 저장할 수 있어요. 파일이 유난히 크면 일반 URL로 대신 반환합니다.
| link필수 | generate_font가 반환한 폰트 링크입니다. |
| format | ttf · otf · woff · woff2 — default ttf. |
지원되는 모든 ISO-2 언어 코드를 글리프 수, 텍스트 방향과 함께 나열합니다 — 유효한 languages 배열을 만들 때 사용하세요.
최근 100개의 폰트 작업을 나열합니다 — 상태, 모델, 소스와 각 폰트 페이지로 가는 링크를 보여줘요.
MCP 도구는 그 뒤에 있는 프롬프트만큼만 좋아요. 아래는 꾸준히 좋은 결과를 내는 예시입니다:
"어린이 교육 앱을 위한 친근하고 둥근 산세리프체를 영어와 스페인어로, normal과 bold 굵기로 생성해줘 — 그리고 ttf 파일을 ./public/fonts에 저장해줘."
분위기, 언어, 굵기, 결과물을 저장할 위치까지 모두 지정했어요 — 에이전트가 사람 개입 없이 전체 흐름을 처리할 수 있습니다.
"이건 예전 로고 스크린샷이야: https://example.com/logo.png — 이 스타일에 맞는 디스플레이 폰트를 ultra 품질로, 영어만 생성해줘."
특정한 기존 스타일을 맞출 때는 형용사보다 레퍼런스 이미지가 훨씬 정확해요 — 히어로·디스플레이용 서체라면 model_tier: ultra를 쓸 가치가 있습니다.
"폰트 8WeheWlTl의 상태를 확인하고 준비되면 알려줘, 그리고 woff2 URL을 줘."
단순한 폴링-후-보고 예시예요 — 대화 앞부분에서 시작한 작업 상태를 확인할 때 유용합니다.
"YoFont는 어떤 키릴 문자와 그리스어 언어를 지원해? 러시아어, 우크라이나어, 그리스어가 포함된 폰트가 필요해."
에이전트가 ISO 코드를 기억에 의존해 추측하는 대신 list_languages를 호출하게 하세요 — 오타 난 코드 때문에 generate_font 호출이 실패하는 걸 막아줍니다.
"이 레퍼런스 이미지로 기하학적인 디스플레이 폰트를 생성하고, 완료될 때까지 기다렸다가, ttf를 다운로드해서 우리 Tailwind 설정에 커스텀 font-face로 추가해줘."
세 가지 도구를 하나의 지시로 연결해요 — 생성 → 폴링 → 다운로드 — 그리고 에이전트에게 구체적인 다음 단계까지 넘겨줍니다.
"내 폰트를 모두 보여주고 아직 대기 중이거나 실패한 게 있으면 알려줘."
대시보드를 열지 않고도 프로젝트 전체 상태를 훑어보기 좋아요.
한 번의 요청으로 전체 파이프라인을 실행할 수 있어요 — 폴링 루프는 에이전트가 맡고, 당신은 결과만 확인하면 됩니다.