Skip to main content
Glama
kalivaraprasad-gonapa

https://github.com/Streen9/react-mcp

React MCP(モデルコンテキストプロトコル)

鍛冶屋のバッジ

Claude AI がモデル コンテキスト プロトコルを通じて React アプリケーションと対話できるようにする強力なサーバー実装。

使用例

Related MCP server: MCP-Claude Code Bridge

概要

React MCP は、Claude AI と React エコシステムの間に橋渡しをし、Claude に次のことを可能にします。

  • 新しいReactアプリケーションを作成する

  • React開発サーバーを実行する

  • ファイルとディレクトリを管理する

  • npmパッケージをインストールする

  • 端末コマンドを実行する

  • 長時間実行されるプロセスを追跡および管理する

このサーバーはモデルコンテキストプロトコルを実装し、開発環境で実際のアクションを実行する機能を Claude に提供します。

特徴

  • Reactプロジェクト管理

    • オプションのテンプレートを使用して新しい React アプリケーションを作成する

    • 開発サーバーを実行する

    • 依存関係を管理する

  • ファイル操作

    • ファイルの読み取りと書き込み

    • Reactコンポーネントと設定を編集する

  • プロセス管理

    • 長時間実行プロセスを開始および監視する

    • プロセス出力をリアルタイムで追跡

    • 必要に応じてプロセスを終了する

  • コマンド実行

    • 任意のターミナルコマンドを実行する

    • npmパッケージをインストールする

    • 開発タスクを実行する

  • 包括的なログ記録

    • 詳細なJSONおよびテキストログ

    • タイムスタンプによるプロセス追跡

    • 実行履歴

インストール

  1. このリポジトリをクローンする

  2. 依存関係をインストールします:

npm install

使用法

claude_desktop_configに以下を追加します:

{
  "mcpServers": {
    "react-mcp": {
      "command": "node",
      "args": [
        "C:/Users/kalip/OneDrive/Desktop/react-mcp/index.js"
      ]
    },
  }
}

サーバーは stdio トランスポート上で実行されるため、Desktop Claude APP でモデル コンテキスト プロトコル ツールとして使用できます。

利用可能なツール

create-react-app

新しい React アプリケーションを作成します。

パラメータ:

  • name (必須): Reactアプリの名前

  • template (オプション):使用するテンプレート(例:typescript、cra-template-pwa)

  • directory (オプション):アプリを作成するベースディレクトリ(デフォルトはホームディレクトリ)

run-react-app

React アプリケーションを開発モードで実行します。

パラメータ:

  • projectPath (必須): React プロジェクト フォルダへのパス

run-command

ターミナルコマンドを実行します。

パラメータ:

  • command (必須): 実行するコマンド

  • directory (オプション):コマンドを実行するディレクトリ(デフォルトは現在のディレクトリ)

get-process-output

実行中または完了したプロセスから出力を取得します。

パラメータ:

  • processId (必須): 出力を取得するプロセスのID

stop-process

実行中のプロセスを停止します。

パラメータ:

  • processId (必須): 停止するプロセスのID

list-processes

実行中のすべてのプロセスを一覧表示します。

edit-file

ファイルを作成または編集します。

パラメータ:

  • filePath (必須): 編集するファイルへのパス

  • content (必須): ファイルに書き込むコンテンツ

read-file

ファイルの内容を読み取ります。

パラメータ:

  • filePath (必須): 読み取るファイルへのパス

install-package

プロジェクトに npm パッケージをインストールします。

パラメータ:

  • packageName (必須): インストールするパッケージの名前 (バージョンを含めることができます)

  • directory (オプション):プロジェクトのディレクトリ(デフォルトは現在のディレクトリ)

  • dev (オプション): 開発依存関係としてインストールするかどうか

check-installation-status

パッケージのインストール プロセスのステータスを確認します。

パラメータ:

  • processId (必須): 確認するインストールプロセスのID

ログ記録

サーバーはlogsディレクトリに詳細なログを保持します。

  • react-mcp-logs.json : 構造化されたJSONログ

  • react-mcp-logs.txt : 人間が読めるテキストログ

建築

サーバーは次の主要コンポーネントを使用します。

  • モデルコンテキストプロトコルSDK :Claude AIとの通信用

  • StdioServerTransport : 標準入出力を介したI/O用

  • Zod : スキーマ検証と型安全性

  • 子プロセス: 外部プロセスの生成と管理

ライセンス

マサチューセッツ工科大学

著者

@streen9さん

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。

Available Tools

9 tools
create-react-appC

Create a new React application

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the React app
templateNoTemplate to use (e.g., typescript, cra-template-pwa)
directoryNoBase directory to create the app in (defaults to home directory)

TDQS

C2.6/5.0
Behavior1/5

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

No annotations provided, and the description only says 'Create a new React application' without disclosing behavioral traits (e.g., file creation, dependency installation, destructiveness). This is insufficient for an agent.

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

Conciseness3/5

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

Single sentence is concise, but it lacks additional structure or context. It is not overly verbose, but could include more essential info without harming conciseness.

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?

No output schema, and description does not explain return values or side effects. For a tool that creates files and runs commands, this is incomplete.

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?

Schema coverage is 100%, so baseline applies. The description adds no meaning beyond the schema, which already describes the parameters. Adequate but not enhanced.

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 creates a new React app, which is a specific verb+resource. However, it does not differentiate from sibling tools like run-react-app, but the purpose is clear.

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?

No guidance on when to use this tool versus alternatives like run-react-app or install-package. The description lacks context for selection.

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

edit-fileC

Create or edit a file

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYesContent to write to the file
filePathYesPath to the file to edit

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description should disclose if the file is overwritten, permissions needed, or directory creation behavior. It only states 'create or edit' without details.

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 concise single sentence with no wasted words, but it could benefit from slight expansion.

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 no output schema and no annotations, the description lacks information on return value, error handling, or behavior for edge cases.

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?

Schema coverage is 100%, so the description adds no extra meaning beyond the schema. Baseline score of 3 is appropriate.

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 'Create or edit a file' clearly states the action and resource, distinguishing it from siblings like 'read-file' which only reads.

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?

No guidance is provided on when to use this tool versus alternatives, nor when not to use it.

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

get-process-outputB

Get the output from a running or completed process

ParametersJSON Schema
NameRequiredDescriptionDefault
processIdYesID of the process to get output from

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description must disclose behaviors like whether the output includes stdout/stderr, if it blocks, or if it works only for completed processes. It only states 'output from a running or completed process' without specifics.

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?

A single sentence that is concise and front-loaded with the purpose. No superfluous information.

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

Completeness3/5

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

For a simple tool with one parameter and no output schema, the description covers the basic purpose but omits critical details like error handling, output format, or whether it requires a process started by a specific sibling tool.

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?

Schema description coverage is 100%, so the baseline is 3. The description does not augment parameter meaning beyond what the schema already provides (just 'ID of the process').

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 uses a specific verb ('Get') and resource ('output from a process'), clearly differentiating from sibling tools like list-processes, stop-process, or run-command.

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?

No guidance is provided on when to use this tool versus alternatives such as run-command (to start a process) or list-processes (to obtain IDs). The description does not mention prerequisites or context.

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

install-packageC

Install a npm package in a project

ParametersJSON Schema
NameRequiredDescriptionDefault
devNoWhether to install as a dev dependency
directoryNoDirectory of the project (defaults to current directory)
packageNameYesName of the package to install (can include version)

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 action but doesn't mention permissions needed, side effects (e.g., modifies package.json), error handling, or output format. This leaves significant gaps for a mutation tool.

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 a single, clear sentence with zero waste, front-loading the core action. It's appropriately sized for the tool's complexity, making it easy to parse quickly.

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 mutation tool with no annotations and no output schema, the description is incomplete. It lacks behavioral details like what happens on success/failure, dependencies, or system impacts, which are crucial for safe and effective use by an AI agent.

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?

Schema description coverage is 100%, so the schema fully documents all three parameters. The description adds no additional meaning beyond implying installation context, but doesn't compensate for any gaps since there are none. Baseline 3 is appropriate as the schema does the heavy lifting.

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 action ('install') and resource ('npm package in a project'), making the purpose immediately understandable. However, it doesn't differentiate from the only sibling tool 'read-file', which is unrelated, so it doesn't need sibling differentiation but could be more specific about what type of installation it performs.

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, prerequisites, or context. It's a standalone statement with no usage instructions, making it unclear if there are other installation methods or constraints.

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

list-processesA

List all running processes

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations provided, the description bears full responsibility for disclosing behavior. It clearly indicates a read-only operation (list), which is good, but it omits any details about potential side effects, permissions, or return format. The statement is minimal but not misleading.

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 a single concise sentence with no unnecessary words. It efficiently conveys the tool's purpose without redundancy.

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

Completeness3/5

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

Given the tool's simplicity, the description covers the basic purpose, but it lacks details about the output format or what information is returned for each process (e.g., PID, name). Without an output schema, this leaves ambiguity for the agent.

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 input schema has no parameters, so parameter description is not needed. Per guidelines, 0 parameters sets a baseline of 4. The description adds no parameter information, but that is acceptable since none exist.

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 explicitly states the verb 'list' and the resource 'running processes', which is specific and unambiguous. It distinguishes from sibling tools like 'get-process-output' and 'stop-process' by focusing on listing all processes rather than retrieving output or stopping them.

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

Usage Guidelines3/5

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

The description implies usage for viewing all running processes, but it does not provide explicit guidance on when to use this tool versus alternatives. It lacks statements like 'Use this when you need to see all processes' or 'Do not use this to interact with a specific process; use get-process-output instead.'

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

read-fileB

Read the contents of a file

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath to the file to read

TDQS

B3.1/5.0
Behavior2/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 of behavioral disclosure. It states the action ('Read') but doesn't mention potential side effects (e.g., file locking, permissions required, error handling for missing files, or character encoding issues). For a file operation tool with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves in practice.

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 a single, clear sentence that efficiently conveys the core functionality without any wasted words. It is front-loaded with the essential action and resource, making it immediately scannable and easy to understand. Every part of the sentence earns its place by directly contributing to the tool's purpose.

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

Completeness3/5

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

Given the tool's low complexity (single parameter, no output schema, no annotations), the description is minimally adequate. It covers the basic action but lacks details on behavioral aspects like error conditions or return formats. Without annotations or an output schema, the agent must rely on the description alone, which is insufficient for fully informed usage but meets the bare minimum for a simple read operation.

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 description adds no parameter-specific information beyond what the input schema already provides. Since schema description coverage is 100% (the 'filePath' parameter is fully documented in the schema), the baseline score of 3 applies. The description doesn't compensate with additional context like path format examples or constraints, but it doesn't need to given the schema's completeness.

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 action ('Read') and the target resource ('contents of a file'), making the purpose immediately understandable. It doesn't differentiate from the sibling tool 'install-package', but since these tools serve completely different domains (file operations vs package management), explicit differentiation isn't necessary for clarity. The description avoids tautology by specifying what is being read rather than just restating the tool name.

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 or in what context it should be applied. While the sibling tool 'install-package' is unrelated, there's no mention of prerequisites, file system constraints, or typical use cases. The agent must infer usage purely from the tool name and description without explicit direction.

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

run-commandC

Run a terminal command

ParametersJSON Schema
NameRequiredDescriptionDefault
commandYesCommand to execute
directoryNoDirectory to run the command in (defaults to current directory)

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose side effects, permissions, error behavior, or what happens to the terminal session. The minimal description fails to add necessary transparency beyond the bare purpose.

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?

Single sentence, no wasted words. However, it could be slightly more informative without becoming verbose, so not a perfect 5.

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 command-runner with security implications and no output schema, the description lacks completeness. No mention of return values, error handling, or prerequisites relative to siblings. Schema richness is low, so description should compensate but does not.

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?

Schema description coverage is 100% with both parameters having descriptions ('Command to execute' and 'Directory to run the command in'). The tool description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

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?

Description states 'Run a terminal command', which is clear in verb and resource but lacks specificity about the type of command (e.g., shell command). It does not differentiate from siblings like 'get-process-output' or 'install-package', which also involve running commands.

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?

No guidance on when to use this tool versus siblings (e.g., run-react-app for starting an app, install-package for package installation). The description provides no context for selection.

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

run-react-appC

Run a React application in development mode

ParametersJSON Schema
NameRequiredDescriptionDefault
projectPathYesPath to the React project folder

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only states the action, without mentioning side effects like port usage, blocking behavior, or how to stop the process. This is insufficient for safe invocation.

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

Conciseness2/5

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

The description is too brief for a tool that runs a development server. It saves space but at the cost of essential context. A single sentence is insufficient.

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 complexity of running a React app (dev server, possible browser launch, process lifecycle), the description omits many details. It assumes prior knowledge and does not cover return values or post-conditions.

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?

Schema coverage is 100%, so the description adds no value beyond the schema's parameter description. The description repeats the schema's meaning without elaboration on path requirements.

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 action ('Run') and resource ('React application') with a specific mode ('development mode'). It distinguishes from siblings like create-react-app (create) and run-command (generic).

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?

No guidance on when to use this tool versus alternatives (e.g., run-command for non-React projects) or prerequisites (e.g., dependencies installed). The description lacks explicit exclusions or context.

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

stop-processB

Stop a running process

ParametersJSON Schema
NameRequiredDescriptionDefault
processIdYesID of the process to stop

TDQS

B3.1/5.0
Behavior2/5

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

Without annotations, the description carries full burden. It only states 'stop' but omits details like signal used, whether it is forceful or graceful, and any side effects. This lacks necessary transparency.

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 sentence that is clear and to the point. However, it may be too terse given the lack of annotations.

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 simple tool, the description is minimal. It does not explain what happens to process output, logs, or child processes. More context is needed for completeness.

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?

Schema coverage is 100% with a description for processId. The description adds no extra meaning beyond the schema, meeting the baseline expectation.

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 'Stop a running process' clearly states the action (stop) and the resource (a running process). It distinguishes from sibling tools like 'list-processes' and 'get-process-output' by indicating a different operation.

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?

No guidance on when to use this tool versus alternatives, such as how it compares to killing a process or whether it performs a graceful shutdown. No prerequisites or exclusions are mentioned.

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. 9 tool updatesv1.0.0
    • First observedcreate-react-app
    • First observededit-file
    • First observedget-process-output
    • First observedinstall-package
    • First observedlist-processes
    • First observedread-file
    • First observedrun-command
    • First observedrun-react-app
    • First observedstop-process

TDQS

B3.3/5.0

Scored across 9 tools

Disambiguation4/5

Tools are mostly distinct: process management (list, stop, get output), file operations (read/edit), and React-specific actions (create/run app) are clearly separated. However, 'run-react-app' and generic 'run-command' could be confused if an agent doesn't read descriptions, and 'run-command' overlaps slightly with the dev server startup.

Naming Consistency5/5

All tools follow a consistent verb_noun snake_case pattern (e.g., stop-process, create-react-app, list-processes). No deviations or mixed conventions, making the naming predictable and intuitive.

Tool Count5/5

With 9 tools, the server covers the core React development workflow (create, run, manage processes, edit files, install packages) without redundancy. Each tool serves a clear purpose and the count is well within the ideal 3-15 range.

Completeness4/5

The toolset covers the essential React development lifecycle: project creation, dev server management, file editing, package installation, and process monitoring. Minor gaps like build/test commands or file deletion are missing but agents can work around them using run-command or edit-file.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers