Skip to main content
Glama

nworks_setup

Idempotent

Configure NAVER WORKS API authentication by providing Client ID and optional service account, bot, or domain IDs. Reads Client Secret from environment variables to enable secure API access.

Instructions

NAVER WORKS API 인증 정보를 설정합니다.

■ 사전 준비 (사용자가 직접 해야 함):

  1. https://dev.worksmobile.com 에서 앱 생성 후 Client ID와 Client Secret을 발급받습니다.

  2. MCP 설정 파일(예: claude_desktop_config.json)의 nworks 서버에 env 필드를 추가합니다: { "env": { "NWORKS_CLIENT_SECRET": "<발급받은 Client Secret>" } }

  3. MCP 클라이언트(예: Claude Desktop)를 재시작합니다.

■ 이 tool의 역할:

  • clientId(필수)와 serviceAccount, botId, domainId(선택)를 파라미터로 받아 저장합니다.

  • Client Secret은 보안을 위해 파라미터로 받지 않으며, 환경변수 NWORKS_CLIENT_SECRET에서 자동으로 읽습니다.

  • Service Account 사용 시 환경변수 NWORKS_PRIVATE_KEY_PATH도 필요합니다.

■ 설정 후 다음 단계:

  • 캘린더/메일/드라이브/할일/게시판 → nworks_login_user tool로 브라우저 로그인 필요

  • 메시지/구성원조회 → Service Account 인증 (serviceAccount + botId + NWORKS_PRIVATE_KEY_PATH)

■ 환경변수 NWORKS_CLIENT_SECRET이 없으면 이 tool은 실패합니다. 실패 시 사용자에게 위 사전 준비 단계를 안내하세요.

OAuth Redirect URI: http://localhost:9876/callback

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
botIdNoBot ID (메시지 전송 시 필요)
clientIdYesClient ID (Developer Console에서 발급)
domainIdNoDomain ID
serviceAccountNoService Account ID (예: xxxxx.serviceaccount@domain)
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond what annotations offer (idempotent, non-destructive mutation), it discloses a hard failure mode — the tool fails without NWORKS_CLIENT_SECRET — plus the NWORKS_PRIVATE_KEY_PATH dependency for Service Account flows and the OAuth redirect URI. It warns that an agent should walk users through prerequisites on failure, turning a simple config call into a predictable, recoverable operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but every section earns its place — prerequisites, tool role, workflow routing, and failure handling are scannable via headers, block bullets, and numbered lists. The one blemish is the OAuth redirect URI appearing as an orphaned final line after the error-handling note, which slightly undercuts the otherwise clean structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity tool (4 flat params, 1 required, no output schema, no enums, no nested objects), the description is over-complete: it covers prerequisites, environment dependencies, post-conditions, and failure recovery. Nothing an agent needs to invoke it correctly is missing, and the absence of return-value docs is immaterial for a credential-storage tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already has 100% coverage with Korean descriptions, setting a baseline of 3, and the prose adds value on top: it reveals clientId is the required anchor, explains Client Secret is deliberately absent as a param for security, and surfaces pairwise semantics like serviceAccount+botId for message features. That relational context isn't in the schema's individual parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Immediately states its purpose: 'NAVER WORKS API 인증 정보를 설정합니다' (configures NAVER WORKS API authentication), then the '이 tool의 역할' section explicitly clarifies it stores clientId plus optional serviceAccount, botId, domainId. This setup-verb-plus-resource purpose distinguishes it cleanly from the 35+ operation-oriented siblings (send, list, create, etc.) without needing to name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The '설정 후 다음 단계' section explicitly routes the agent conditionally: calendar/mail/drive/task/board features require calling nworks_login_user next, while message/member features require Service Account auth. It lacks an explicit 'do NOT use this when' exclusion, but the workflow context and the failure-remediation note ('실패 시 사용자에게...안내하세요') provide strong, practical invocation guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yjcho9317/nworks'

If you have feedback or need assistance with the MCP directory API, please join our Discord server