Skip to main content
Glama
Bigsy
by Bigsy

シャドウ-cljs-mcp

npmバージョン

shadow-cljs ビルドを監視し、リアルタイムのビルド ステータス更新を提供するモデル コンテキスト プロトコル (MCP) サーバー。

インストール

Cline/Cursor/Claude の設定に以下を追加します。

{
  "mcpServers": {
    "shadow-cljs-mcp": {
      "command": "npx",
      "args": [
        "shadow-cljs-mcp"
      ],
      "disabled": false,
      "autoApprove": [],
      "timeout": 60
    }
  }
}

オプションのサーバーロケーション

{
  "mcpServers": {
    "shadow-cljs-mcp": {
      "command": "npx",
      "args": [
        "shadow-cljs-mcp",
        "--host",
        "localhost",
        "--port",
        "9630"
      ],
      "disabled": false,
      "autoApprove": [],
      "timeout": 60
    }
  }
}

--hostおよび--port引数はオプションです。指定しない場合、サーバーはデフォルトでlocalhost:9630に接続します。

Related MCP server: clj-kondo MCP Server

概要

このMCPサーバーは、実行中のshadow-cljsインスタンスに接続し、ビルドの進行状況、失敗、完了を追跡します。LLMがClojureScriptファイルに変更を加えた後にビルドステータスを確認するために使用できるMCPツールを提供します。

LLM統合

LLMノートに追加する

LLM のノート ファイル (例: CLAUDE.md、cursorrules.md) に次の内容を追加します。

After any edits to ClojureScript files, use the shadow-cljs-mcp server's get_last_build_status tool to verify the build succeeded:

<use_mcp_tool>
<server_name>shadow-cljs-mcp</server_name>
<tool_name>get_last_build_status</tool_name>
<arguments>
{}
</arguments>
</use_mcp_tool>

This will show:
- Build status (completed/failed)
- Which files were compiled
- Any errors or warnings
- Build duration and metrics

ツール応答の例

ビルド成功:

{
  "status": "completed",
  "resources": 317,
  "compiled": 1,
  "warnings": 0,
  "duration": 0.609,
  "compiledFiles": [
    "path/to/your/file.cljs (505ms)"
  ]
}

ビルドに失敗しました:

{
  "status": "failed",
  "message": "Build failed",
  "details": {
    // Error information
  }
}

使用上の注意

  • LLMは各ClojureScriptファイルの編集後にget_last_build_statusを呼び出す必要があります。

  • コンパイルエラーが詳細に表示されるのでデバッグが容易になります

  • ビルドが成功すると、どのファイルがコンパイルされ、どのくらいの時間がかかったかが表示されます。

  • このサーバーを起動する前に、shadow-cljs が実行されていることを確認してください。

要件

  • shadow-cljs インスタンスを実行しています (特に設定されていない場合はデフォルトで localhost:9630 になります)

Available Tools

1 tool
get_last_build_statusA

Get the status of the last shadow-cljs build including any warnings or errors. Call this after making edits to ClojureScript files to verify if the build succeeded or failed.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It effectively describes the tool's behavior: it retrieves build status and includes warnings/errors, which is useful for understanding output. However, it doesn't mention potential side effects, error handling, or response format details, leaving some behavioral aspects unspecified.

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 two sentences that are front-loaded with the tool's purpose and followed by usage guidance. Every sentence adds value without redundancy, making it appropriately sized and efficient.

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

Completeness4/5

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

Given the tool's simplicity (0 parameters, no annotations, no output schema), the description is mostly complete. It explains what the tool does and when to use it. However, without an output schema, it could benefit from more detail on the return format (e.g., what 'status' includes), but this is a minor gap for such a straightforward 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 tool has 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description doesn't discuss parameters, which is appropriate. A baseline of 4 is applied since no parameters exist, and the description doesn't add unnecessary information.

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?

The description clearly states the specific action ('Get the status'), target resource ('last shadow-cljs build'), and scope ('including any warnings or errors'). It precisely defines what the tool does without being tautological or vague, and since there are no sibling tools, no differentiation is needed.

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

Usage Guidelines5/5

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

The description explicitly states when to use this tool: 'Call this after making edits to ClojureScript files to verify if the build succeeded or failed.' This provides clear context and timing guidance. Since there are no sibling tools, no alternative comparisons are necessary.

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. 1 tool update
    • First observedget_last_build_status

TDQS

A4.3/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is clearly defined and distinct by default.

Naming Consistency5/5

The single tool name 'get_last_build_status' follows a clear verb_noun pattern, and there are no other tools to create inconsistency. The naming is straightforward and predictable.

Tool Count2/5

A single tool is too few for a server's purpose, as it severely limits functionality and suggests an incomplete or overly narrow scope. This makes the server feel thin and underdeveloped.

Completeness2/5

The server is severely incomplete for a build tool domain. It only provides status checking, with no tools for initiating builds, managing configurations, handling dependencies, or other essential operations, creating significant gaps.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    F
    maintenance
    A Model Context Protocol server that enables AI assistants to build and test Xcode projects directly through a standardized interface, with capabilities for running tests, monitoring progress, and accessing logs in real-time.
    18
    127 npm
    53
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    A Model Context Protocol server that provides clj-kondo linting capabilities for Clojure/ClojureScript/EDN files, useful for environments like Claude code and desktop that lack built-in linting.
    1
    10 npm
    4
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables AI coding assistants like Claude Code to manage long-running development processes, solving the problem where Claude Code cannot see output from processes like 'npm run dev' that don't exit immediately.
    6 npm
    2
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that analyzes application codebases with real-time file watching, providing AI assistants like Claude with deep insights into project structure, code patterns, and architecture.
    MIT