Skip to main content
Glama
slima-ai

Slima MCP

Official
by slima-ai

Slima MCP

npm version License: MIT

소설 작가를 위한 AI 작문 IDE인 Slima용 MCP(Model Context Protocol) 서버입니다.

Slima 책을 모든 MCP 호환 AI 도구에 연결하세요 - 하나의 서버로 모든 플랫폼을 지원합니다.

지원 플랫폼

데스크톱 애플리케이션 (로컬 MCP - stdio)

플랫폼

상태

참고 사항

Claude Desktop

✅

기본 MCP 지원

ChatGPT Desktop

✅

개발자 모드 (2025.10+)

Gemini CLI

✅

기본 MCP 지원

Cursor

✅

기본 MCP 지원

VS Code

✅

MCP 확장을 통해

웹 애플리케이션 (원격 MCP - HTTP)

플랫폼

상태

참고 사항

Claude.ai

✅

OAuth 로그인, 토큰 불필요

ChatGPT Web

✅

OAuth 로그인, 토큰 불필요

MCP는 2025년 12월 Anthropic, OpenAI, Block이 Linux Foundation 산하에 Agentic AI Foundation을 공동 설립하면서 업계 표준이 되었습니다.

Related MCP server: Loreum MCP Server

기능

책 관리

  • 새 책 생성

  • 책 목록 및 보기

  • 파일/폴더 구조 확인

  • 집계 통계 추적

파일 작업

  • 경로로 파일 읽기

  • 특정 텍스트 편집 (검색 및 바꾸기)

  • 파일 내용 쓰기 (바꾸기)

  • 새 파일 생성

  • 파일 삭제

  • 파일에 내용 추가

  • 모든 파일에서 검색

AI 베타 리더

  • 가상 독자 페르소나로부터 피드백 받기

  • 다양한 독자 관점에서 챕터 분석

빠른 시작

AI 사용 방식에 맞는 경로를 선택하세요:

권장: claude.ai / ChatGPT 웹 (자동 업데이트)

브라우저에서 Claude나 ChatGPT와 대화한다면, 이것이 가장 쉽고 미래 지향적인 옵션입니다. 한 번 설정하면 모든 Slima MCP 업데이트를 자동으로 받습니다 — 업그레이드 명령어나 설정 편집이 필요 없습니다.

MCP URL: https://mcp.slima.ai/mcp

claude.ai (Pro / Max / Team / Enterprise)

  1. claude.ai에 로그인합니다.

  2. 설정 → 커넥터(또는 요금제에 따라 통합)를 엽니다.

  3. 사용자 정의 커넥터 추가를 클릭합니다.

  4. 다음을 입력합니다:

    • 이름: Slima

    • URL: https://mcp.slima.ai/mcp

  5. 연결을 클릭 → slima.ai로 리디렉션되어 승인 → claude.ai로 돌아옵니다.

  6. 채팅 입력창에 Slima 도구 아이콘이 나타납니다. 완료되었습니다.

ChatGPT (Plus / Pro, 개발자 모드)

  1. chatgpt.com에 로그인합니다.

  2. 설정 → 커넥터 → 고급을 열고 개발자 모드를 켭니다 (2025.10+).

  3. 커넥터로 돌아와 생성 → 사용자 정의 MCP 서버를 클릭합니다.

  4. 다음을 입력합니다:

    • 이름: Slima

    • 서버 URL: https://mcp.slima.ai/mcp

    • 인증: OAuth

  5. 생성을 클릭 → OAuth 흐름을 승인합니다.

설정 후, 다음 대화에서 Slima 기능이 자동으로 적용됩니다. 재시작이나 재설치가 필요 없습니다.


로컬: Claude Desktop / Cursor / Gemini CLI

오프라인 친화적 작업, 더 빠른 시작, 또는 다른 stdio 서버와 함께 MCP를 실행해야 하는 경우 이 방법을 사용하세요.

권장 설정 — 주 버전에 고정되어 새로운 기능을 자동으로 받지만 1.0 릴리스에서 중단되지 않습니다:

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json(macOS) 또는 %APPDATA%\Claude\claude_desktop_config.json(Windows)을 편집합니다:

{
  "mcpServers": {
    "slima": {
      "command": "npx",
      "args": ["-y", "slima-mcp@0"],
      "env": {
        "SLIMA_API_TOKEN": "slima_your_token_here"
      }
    }
  }
}

Slima 설정에서 토큰을 가져오거나 npx slima-mcp@0 auth를 한 번 실행하여 디스크에 저장합니다.

Cursor

{
  "mcpServers": {
    "slima": {
      "command": "npx",
      "args": ["-y", "slima-mcp@0"],
      "env": {
        "SLIMA_API_TOKEN": "slima_your_token_here"
      }
    }
  }
}

Gemini CLI

gemini mcp add slima --command "npx -y slima-mcp@0"

slima-mcp / slima-mcp@latest 대신 slima-mcp@0을 사용하는 이유? @0을 사용하면 현재 주 버전에 고정됩니다. npx는 여전히 새로운 0.x.y 릴리스를 자동으로 가져오지만(기능 및 버그 수정 포함), 1.0.0이 출시되어 호환성이 깨지는 변경 사항이 있을 때 설정을 업데이트하지 않으면 자동으로 적용되지 않습니다. @1 전환은 릴리스 노트에서 공지할 예정입니다.

전역 설치에서 마이그레이션

이미 npm install -g slima-mcp로 전역 설치한 경우:

# Remove the old global install (optional but cleaner)
npm uninstall -g slima-mcp

# Change your config `command` from "slima-mcp" to the npx form above, and restart the client.

또는 전역 설치를 유지하려면 주기적으로 다음을 실행해야 합니다:

npm install -g slima-mcp@latest

그렇지 않으면 로컬 클라이언트가 Slima 백엔드가 노출하는 MCP 도구/스키마와 동기화되지 않습니다.

자체 호스팅 (고급)

이 저장소를 클론하고 Cloudflare Worker를 직접 배포할 수도 있습니다. wrangler.toml + npm run deploy:worker를 참조하세요. 일반적인 사용에는 필요하지 않습니다.


원격 MCP 보안

https://mcp.slima.ai/mcp에서 호스팅되는 원격 MCP 서버는 다음을 사용합니다:

  • OAuth 2.0 + PKCE 인증 — 토큰을 복사하여 붙여넣을 필요 없음.

  • 서버 측에 비밀 저장 안 함 — 자격 증명이 Slima의 인증 서버를 떠나지 않음.

  • 세션 기반: OAuth 토큰은 Cloudflare KV에 저장되며, 세션별로 범위가 지정됩니다.

  • 언제든지 취소 가능 Slima 설정에서.


책 유형: Writing Studio vs Script Studio

Slima 책은 book_type 필드로 구분되는 두 가지 유형이 있습니다. MCP는 각각에 대해 약간 다르게 동작합니다:

📖 Writing Studio (book_type: "book")

📝 Script Studio (book_type: "script")

MCP를 통한 생성

✅ create_book 작동

❌ Slima 앱 UI 사용

읽기 (모든 파일)

✅

✅

쓰기 / 편집 / 삭제

✅ 모든 경로

✅ .script_studio/planning/**/* 아래만

구조화된 파일 (series.json, *.character, *.scene, *.storyline, *.note, *.location, season.json, episode.json)

해당 없음

❌ MCP를 통한 읽기 전용 — 편집은 Script Studio UI를 통해야 함

analyze_chapter (AI 베타 리더)

✅

❌ 구조화된 장면에서는 아직 지원되지 않음

search_content

모든 파일

구조화된 파일은 기본적으로 제외됨; 포함하려면 include_structured: true 전달

책별 세부 정보는 AI 클라이언트에게 리소스 slima://books/{book_token}/schema를 읽도록 요청하세요. 해당 책에 대해 쓰기 가능/읽기 전용인 정확한 경로의 JSON 사양을 반환합니다.

list_books는 각 책에 스튜디오 아이콘(📝 / 📖)을 태그하여 사용자(및 AI)가 한눈에 구분할 수 있도록 합니다.


사용 가능한 도구

책 관리

도구

설명

create_book

라이브러리에 새 책 생성

list_books

Slima 라이브러리의 모든 책 나열

get_book

특정 책의 세부 정보 가져오기

get_book_structure

책의 파일/폴더 구조 가져오기

get_writing_stats

책의 집계 통계 가져오기

파일 작업

도구

설명

read_file

경로로 모든 파일 내용 읽기

edit_file

검색 및 바꾸기로 특정 텍스트 편집

write_file

파일 전체 내용 바꾸기

create_file

책에 새 파일 생성

delete_file

책에서 파일 삭제

append_to_file

파일 끝에 내용 추가

search_content

모든 파일에서 텍스트 검색

AI 베타 리더

도구

설명

list_personas

사용 가능한 베타 리더 페르소나 나열

analyze_chapter

챕터에 대한 AI 베타 리더 피드백 받기

사용 예시

설정이 완료되면 AI에게 다음과 같이 요청할 수 있습니다:

책 및 콘텐츠:

  • "'내 소설'이라는 새 책을 만들어 줘"

  • "Slima에 있는 내 책 목록을 보여줘"

  • "내 소설의 구조를 보여줘"

  • "내 책의 3장을 읽어줘"

  • "내 집계 통계는 뭐야?"

파일 작업:

  • "주인공의 캐릭터 프로필을 읽어줘"

  • "1장을 편집해서 'John'을 'James'로 바꿔줘"

  • "worldbuilding.md라는 새 파일을 만들고 마법 시스템에 대한 메모를 추가해줘"

  • "내 책에서 '파란 눈'이 언급된 모든 부분을 검색해줘"

  • "이 새 단락을 5장 끝에 추가해줘"

AI 피드백:

  • "5장에 대해 젊은 독자 관점에서 피드백을 받고 싶어"

  • "내 시작 장면을 비평가 관점에서 분석해줘"

CLI 명령어

slima-mcp auth      # Authenticate with browser (recommended)
slima-mcp status    # Check authentication status
slima-mcp logout    # Remove saved credentials
slima-mcp --help    # Show help
slima-mcp --version # Show version

토큰은 안전한 권한으로 ~/.slima/credentials.json에 저장됩니다.

환경 변수

변수

필수

기본값

설명

SLIMA_API_TOKEN

아니요*

-

Slima API 토큰

SLIMA_API_URL

아니요

https://api.slima.ai

API 엔드포인트 (개발용)

DEBUG

아니요

false

디버그 로깅 활성화

*slima-mcp auth를 사용한 경우 필요하지 않음

개발

로컬 CLI 개발

# Clone the repository
git clone https://github.com/slima-ai/slima-mcp.git
cd slima-mcp

# Install dependencies
npm install

# Build CLI
npm run build

# Run tests
npm test

# Run in development mode
npm run dev

Cloudflare Worker 개발

# Build the Worker
npm run build:worker

# Run Worker locally
npm run dev:worker

# Deploy to Cloudflare
npm run deploy:worker

# Deploy to preview environment
npm run deploy:worker:preview

프로젝트 구조

slima-mcp/
├── src/
│   ├── core/           # Shared core modules
│   │   ├── api/        # Slima API Client
│   │   ├── tools/      # MCP Tool implementations
│   │   └── utils/      # Utilities and errors
│   ├── cli/            # CLI entry point (stdio transport)
│   │   ├── index.ts    # CLI main
│   │   ├── auth.ts     # Authentication commands
│   │   └── server.ts   # MCP Server for CLI
│   └── worker/         # Cloudflare Worker (HTTP transport)
│       ├── index.ts    # Worker entry point
│       └── oauth.ts    # OAuth 2.0 + PKCE client
├── wrangler.toml       # Cloudflare Worker config
├── tsup.config.ts      # CLI build config
└── tsup.worker.config.ts # Worker build config

보안

  • API 토큰은 로컬에 저장되며 절대 공유되지 않음

  • Slima API와의 모든 통신은 HTTPS 사용

  • 토큰은 Slima 설정에서 언제든지 취소 가능

릴리스 및 배포

npm (자동)

package.json에서 버전을 올리고 main 브랜치에 병합하면 GitHub Actions를 통해 자동으로 npm 게시가 트리거됩니다.

# 1. Bump version on dev branch
npm version patch   # 0.1.10 → 0.1.11

# 2. Merge to main
git checkout main && git merge dev && git push

# 3. CI runs tests → publish.yml publishes to npm + creates git tag

Cloudflare Worker (수동)

Worker 배포는 npm과 별개입니다. 코드 변경 후 배포:

npm run deploy:worker           # Production (mcp.slima.ai)
npm run deploy:worker:preview   # Staging

MCP 레지스트리 (수동)

MCP 레지스트리에 서버 목록을 게시/업데이트하려면:

mcp-publisher login github
mcp-publisher publish

package.json에 mcpName이 필요하고 저장소 루트에 server.json이 필요합니다.

운영 참고 사항

Worker OAuth 디버깅

claude.ai 또는 ChatGPT 커넥터 문제를 해결할 때:

# Live logs from production Worker
wrangler tail slima-mcp

모든 OAuth 엔드포인트는 흐름 추적을 위해 주요 매개변수(client_id, redirect_uri, 토큰 접두사 등)를 기록합니다.

Worker OAuth 흐름 (claude.ai / ChatGPT)

Client POST /mcp → 401 + WWW-Authenticate header
  → Client GET /.well-known/oauth-protected-resource
  → Client GET /.well-known/oauth-authorization-server
  → Client POST /register (DCR)
  → Client redirects user to GET /authorize
    → Worker redirects to Rails OAuth
    → User authorizes → Rails redirects to Worker /callback
    → Worker issues auth code → redirects to client callback
  → Client POST /token (exchange code for access_token)
  → Client POST /mcp (Authorization: Bearer {access_token})

알려진 제약 사항

  • Worker Bearer token 검증은 OAuth에서 발급된 토큰을 지원하기 위해 모든 비어 있지 않은 토큰을 허용합니다(slima_ 접두사만 허용하는 것이 아닙니다). Rails API가 실제 검증을 수행합니다.

  • getTokenFromSession()은 Authorization 헤더를 먼저 확인한 후, 쿠키 세션으로 대체(fallback)합니다.

  • MCP Inspector(npx @modelcontextprotocol/inspector)는 전체 OAuth 흐름을 독립적으로 테스트하는 데 유용합니다.

라이선스

MIT

링크

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables semantic search over local Calibre libraries via MCP, allowing AI assistants to query books, annotations, and export bibliographies while keeping data private.
    8
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Connects MCP clients to a Calibre ebook library for semantic search, metadata curation, and library management via natural language.
    14
    90 npm
    18
    MIT