Skip to main content
Glama

teams-guide-mcp

클린 코드 가이드 문서를 제공하고 외부 프로젝트의 코드를 검사할 수 있는 MCP(Model Context Protocol) 서버입니다.

✨ 주요 기능

  • 📚 가이드 문서 제공: 클린 코드 작성 가이드 등 다양한 가이드 문서 읽기

  • 📖 외부 파일 읽기: 외부 프로젝트의 파일을 읽어서 분석 가능

  • 🔍 클린 코드 검사: 가이드를 기반으로 코드 품질 검사 및 개선 제안

Related MCP server: Smart Code Reviewer

🚀 빠른 시작

1. 설치

npm 패키지로 설치되어 있다면 바로 사용할 수 있습니다.

2. MCP 클라이언트 설정

Cursor/Claude Desktop 설정 예시:

{
  "mcpServers": {
    "guide-mcp": {
      "command": "npx",
      "args": ["-y", "teams-guide-mcp"]
    }
  }
}

설정 후 MCP 클라이언트를 재시작하세요.

🛠️ 사용 가능한 도구

get_guide

가이드 문서의 내용을 읽어서 반환합니다.

매개변수:

  • fileName (필수): 읽을 가이드 파일명 (예: clean-code-guide.md)

사용 예시:

"clean-code-guide.md 가이드를 읽어줘"

read_file

외부 프로젝트의 파일을 읽어서 반환합니다.

매개변수:

  • filePath (필수): 읽을 파일 경로 (상대 경로 또는 절대 경로)

사용 예시:

"read_file 도구로 ./src/utils.js 파일을 읽어줘"

check_clean_code

클린 코드 가이드를 기반으로 파일을 검사합니다.

매개변수:

  • filePath (필수): 검사할 파일 경로

  • guideName (선택): 사용할 가이드 파일명 (기본값: clean-code-guide.md)

사용 예시:

"check_clean_code로 ./src/index.js 파일을 클린 코드 가이드로 검사해줘"

📚 사용 가능한 리소스

MCP 클라이언트에서 guide://파일명 형태로 가이드 문서에 직접 접근할 수 있습니다.

예: guide://clean-code-guide.md

💡 사용 시나리오

시나리오 1: 클린 코드 가이드 읽기

"클린 코드 가이드의 네이밍 규칙을 알려줘"

시나리오 2: 외부 파일 읽기

"read_file로 ./src/utils.js를 읽어줘"

시나리오 3: 클린 코드 검사

"check_clean_code로 ./src/index.js를 검사하고 개선 사항을 제안해줘"

📁 프로젝트 구조

teams-guide-mcp/
├── src/
│   └── index.js          # MCP 서버 메인 코드
├── guides/
│   └── clean-code-guide.md   # 클린 코드 가이드 문서
└── package.json

🔧 개발자용

가이드 문서 추가

guides/ 디렉토리에 .md 또는 .txt 파일을 추가하면 자동으로 인식됩니다.

버전 관리 및 배포

이 프로젝트는 GitHub Actions를 사용하여 자동 배포를 지원합니다.

자동 배포 설정

태그가 v*.*.* 형식으로 푸시되면 자동으로:

  • package.json 버전 업데이트

  • npm에 패키지 배포

  • GitHub Release 생성

📋 요구사항

  • Node.js v20.18.0 이상

  • npm

📄 라이선스

MIT

Available Tools

3 tools
check_clean_codeC

클린 코드 가이드를 기반으로 파일을 검사합니다. 가이드 문서를 참조하여 코드 품질을 분석합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYes검사할 파일 경로 (예: ./src/utils.js)
guideNameNo사용할 가이드 파일명 (기본값: clean-code-guide.md)clean-code-guide.md

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. While it states the tool analyzes code quality based on guidelines, it doesn't describe what the analysis produces (report format, scoring system), whether it modifies files (likely read-only but not stated), performance characteristics, or error conditions. The description is too vague about the actual behavior.

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 appropriately concise with two sentences that directly address the tool's function. The first sentence states the core action, and the second adds context about the analysis framework. There's no wasted text, though it could be slightly more informative given the lack of annotations and output schema.

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

Completeness2/5

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

For a code analysis tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what kind of output to expect (analysis report, score, recommendations), how comprehensive the analysis is, what happens with invalid inputs, or how the guide integration works. The agent would be operating with significant uncertainty about the tool's behavior and results.

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

Parameters3/5

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

The schema description coverage is 100%, so both parameters are well-documented in the schema itself. The description doesn't add any meaningful parameter semantics beyond what's already in the schema - it mentions '가이드 문서를 참조하여' (referring to guide documents) which loosely relates to the 'guideName' parameter but provides no additional context about parameter interactions or usage patterns.

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

Purpose4/5

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

The description clearly states the tool's purpose: '검사합니다' (inspects/examines) files based on clean code guidelines. It specifies the resource (files) and the framework (clean code guide). However, it doesn't explicitly differentiate from sibling tools like 'get_guide' or 'read_file' - this tool performs analysis while those likely retrieve documents or raw file content.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when this analysis tool should be chosen over simply reading the guide with 'get_guide' or examining raw file content with 'read_file'. There's no context about prerequisites, appropriate scenarios, or limitations.

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

get_guideC

가이드 문서의 내용을 읽어서 반환합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
fileNameYes읽을 가이드 파일명 (예: clean-code-guide.md)

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions reading and returning content, implying a read-only operation, but doesn't specify permissions, rate limits, error handling, or output format. This leaves significant gaps in understanding the tool's behavior beyond basic functionality.

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 a single, efficient sentence that directly states the tool's function without unnecessary words. It's appropriately sized for a simple tool, though it could be more front-loaded with key details like output type or constraints.

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

Completeness2/5

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

Given the tool's simplicity (1 parameter, no annotations, no output schema), the description is incomplete. It lacks information on return values (e.g., format of the content), error cases, or any behavioral traits like file access permissions. This makes it inadequate for full agent understanding.

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

Parameters3/5

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

The input schema has 100% description coverage, with 'fileName' documented as '읽을 가이드 파일명' (guide filename to read). The description adds no additional parameter semantics beyond what the schema provides, such as file format details or path requirements. Baseline 3 is appropriate since the schema does the heavy lifting.

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

Purpose3/5

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

The description '가이드 문서의 내용을 읽어서 반환합니다' (reads and returns the content of a guide document) clearly states the tool's purpose with a specific verb ('읽어서' - reads) and resource ('가이드 문서' - guide document). However, it doesn't differentiate from sibling tools like 'read_file' which might have overlapping functionality, making it somewhat vague in context.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like 'read_file' or 'check_clean_code'. It states what the tool does but offers no context about appropriate use cases, exclusions, or prerequisites, leaving the agent without usage direction.

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

read_fileC

외부 프로젝트의 파일을 읽어서 반환합니다. 절대 경로 또는 현재 작업 디렉토리 기준 상대 경로를 사용할 수 있습니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYes읽을 파일 경로 (예: ./src/utils.js 또는 C:/project/src/utils.js)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool reads and returns files, implying a read-only operation, but doesn't address critical behaviors like error handling (e.g., what happens if the file doesn't exist or is unreadable), file size limits, encoding assumptions, or security considerations. The description adds minimal context beyond the basic operation.

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

Conciseness5/5

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

The description is extremely concise—just two sentences that directly state the tool's function and path usage. Every word earns its place with no redundancy or fluff. It's front-loaded with the core purpose and follows up with practical details.

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

Completeness2/5

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

For a file-reading tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'returns' means (e.g., content as string, binary data, structured format), error conditions, or performance implications. Given the complexity of file I/O and lack of structured safety hints, more behavioral context is needed for safe and effective use.

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

Parameters3/5

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

The input schema has 100% description coverage, with 'filePath' clearly documented as the path to read (including examples). The description adds marginal value by mentioning support for both absolute paths and relative paths from the current working directory, which slightly expands on the schema's example. However, this doesn't significantly enhance understanding beyond what the schema already provides.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'read files from external projects and return them' (verb+resource). It distinguishes itself from siblings like 'check_clean_code' and 'get_guide' by focusing on file reading rather than code analysis or documentation retrieval. However, it doesn't explicitly differentiate itself beyond the general domain difference.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It mentions 'external projects' but doesn't clarify what qualifies as external or when to use this over other file-reading methods. There's no mention of prerequisites, limitations, or comparison with sibling tools.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.0.0
    • First observedcheck_clean_code
    • First observedget_guide
    • First observedread_file

TDQS

C2.9/5.0

Scored across 3 tools

Disambiguation4/5

The tools have distinct primary purposes: check_clean_code analyzes code quality, get_guide retrieves guide content, and read_file reads external project files. However, there is some potential overlap between get_guide and read_file, as both involve reading content, but their specific targets (guide vs. general files) help differentiate them.

Naming Consistency4/5

The tools follow a consistent verb_noun pattern (check_clean_code, get_guide, read_file), with all using snake_case. The naming is clear and predictable, though 'check' and 'read' are slightly different verb styles, but this minor deviation does not hinder usability.

Tool Count3/5

With only 3 tools, the server feels thin for a 'Teams Guide' purpose, as it might lack operations like updating guides or managing team-specific settings. However, the tools cover basic reading and analysis functions, making it borderline but not severely inadequate.

Completeness2/5

The tool surface is significantly incomplete for a 'Teams Guide' domain. It only supports reading and checking code against guides, with no tools for creating, updating, or deleting guides, managing teams, or handling user interactions, which are typical in such systems.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers