# mcsm-mcp
## 基本信息
- Slug: `smgoro-mcsm-mcp`
- Source: modelscope
- Publisher: @SMGoro/mcsm-mcp
- Categories: app-automation / games-and-gamification / virtualization
- Hosted: No
- License: Unknown
- Source URL: https://www.modelscope.cn/mcp/servers/@SMGoro/mcsm-mcp
## 简介
暂无描述。
## 安装提示

```bash
git clone https://github.com/SMGoro/mcsm-mcp.git cd mcsm-mcp npm install npm run build
```

## MCP Server 详情

# mcsm-mcp

English | [**中文**](docs/README_CN.md)

## Overview

`mcsm-mcp` is a lightweight **MCP (Model Context Protocol) client library** that enables your applications to communicate with MCPcompatible servers. It supports multiple transport mechanisms  **STDIO**, **SSE**, and **Streamable HTTP**  and can be used from both **CLI** scripts and **UI** tools.

---

## Installation

```bash
git clone https://github.com/SMGoro/mcsm-mcp.git
cd mcsm-mcp
npm install
npm run build
```

The package works on Windows, macOS and Linux.

---

## Configuration & Usage

The client reads its configuration from a JSON file (default name `mcp.json`). Below are examples for the three supported transports.

### STDIO (default)
```json
{
  "mcpServers": {
    "my-stdio-server": {
      "type": "stdio",
      "command": "node",
      "args": ["build/index.js", "--debug"],
      "env": {
        "MCSM_API_KEY": "your-api-key",
        "MCSM_API_URL": "http://localhost:23333",
        "DEBUG": "true"
      }
    }
  }
}
```

### Streamable HTTP
```json
{
  "mcpServers": {
    "my-http-server": {
      "type": "streamable-http",
      "url": "http://localhost:3010/mcp?mcsm-api-key=your-api-key&mcsm-api-url=http://localhost:23333"
    }
  }
}
```

Save the file as `mcp.json` in your project root or specify a custom path with the `--config` flag.

---

## Testing the Client

### CLI Mode (scriptable)
The library ships with a CLI wrapper that can be invoked via `npx @modelcontextprotocol/inspector`.

```bash
# Basic usage  start a server and open the UI
npx @modelcontextprotocol/inspector node build/index.js

# CLI mode  run a single command without UI
npx @modelcontextprotocol/inspector --cli node build/index.js --method tools/list

# Using a custom config file
npx @modelcontextprotocol/inspector --cli --config ./mcp.json --server my-stdio-server
```

### UI Mode (interactive)
Running the command without `--cli` starts the **MCP Inspector UI** on `http://localhost:6274`.

```bash
npx @modelcontextprotocol/inspector node build/index.js
```

You can also launch the UI directly from an existing configuration:

```bash
npx @modelcontextprotocol/inspector --config ./mcp.json
```

The project includes a comprehensive test suite that validates each transport (STDIO, SSE, Streamable HTTP). Tests are based on the **MCP Inspector** documentation in `docs/MCPInspector_README.md`.

1. Open the Inspector UI (see *UI Mode* above).
2. In the **Servers File** panel click **"Servers File"** to copy a full configuration for the transport you want to test.
3. Save the JSON to a temporary file, e.g. `mcp-test.json`.
4. Run the CLI test command:
   ```bash
   npx @modelcontextprotocol/inspector --cli --config ./mcp-test.json --method tools/list
   ```
5. Verify the output matches the expected tool list for your server.

Both GUI and CLI modes are exercised automatically by the CI pipeline.

### Project Links

- GitHub Repository: <https://github.com/SMGoro/mcsm-mcp>
- MCSManager Site: <https://mcsmanager.com/>
- Model Context Protocol: <https://modelcontextprotocol.io/>

---

## License

AGPL-3.0

