Hot reload for MCP servers. Like nodemon, but for MCP.
Project description
mcpmon
Hot reload for MCP servers. Like nodemon, but for MCP.
Install
pip install mcpmon
Usage
mcpmon --watch src/ -- python -m my_mcp_server
Options
--watch, -w- Directory to watch (default: current directory)--ext, -e- File extensions to watch, comma-separated (default: py)
Examples
# Watch current directory for .py changes
mcpmon -- python server.py
# Watch src/ for .py and .json changes
mcpmon --watch src/ --ext py,json -- python -m myserver
# With crucible-mcp
mcpmon --watch src/crucible/ -- crucible-mcp
# With sage-mcp
mcpmon --watch ~/.sage/ --ext py,yaml -- sage-mcp
How it works
- Starts your MCP server as a subprocess
- Watches specified directory for file changes
- On change: SIGTERM → wait 2s → SIGKILL → restart
- Claude Code automatically reconnects to the restarted server
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcpmon-0.1.0.tar.gz.
File metadata
- Download URL: mcpmon-0.1.0.tar.gz
- Upload date:
- Size: 3.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1108dc4bb0a75df1d6a3ce22ae114be338417f263a99ef3ea8593493c44d768
|
|
| MD5 |
f55f40e73aafec42e6cd9949c85dea39
|
|
| BLAKE2b-256 |
c6ba2ab667f89a248fd2f1d9e1e4dba565e3ff5939aa28bf68d6b87db7d341ae
|
Provenance
The following attestation bundles were made for mcpmon-0.1.0.tar.gz:
Publisher:
publish.yml on b17z/mcpmon
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcpmon-0.1.0.tar.gz -
Subject digest:
a1108dc4bb0a75df1d6a3ce22ae114be338417f263a99ef3ea8593493c44d768 - Sigstore transparency entry: 854583606
- Sigstore integration time:
-
Permalink:
b17z/mcpmon@ee7b2fbb6cab396788eac35f79b93f9dd6c6fb72 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/b17z
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ee7b2fbb6cab396788eac35f79b93f9dd6c6fb72 -
Trigger Event:
release
-
Statement type:
File details
Details for the file mcpmon-0.1.0-py3-none-any.whl.
File metadata
- Download URL: mcpmon-0.1.0-py3-none-any.whl
- Upload date:
- Size: 3.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b93a871e034d69c7b31db2404049ffb2ce59f2e704daf9ae33e7293970498403
|
|
| MD5 |
7a03670b06ae43599f2e046b248c8139
|
|
| BLAKE2b-256 |
3dc1c54f6fd71e990138f3f4f57d3d02908fe629623939c7f5ea2008adb84e66
|
Provenance
The following attestation bundles were made for mcpmon-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on b17z/mcpmon
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcpmon-0.1.0-py3-none-any.whl -
Subject digest:
b93a871e034d69c7b31db2404049ffb2ce59f2e704daf9ae33e7293970498403 - Sigstore transparency entry: 854583607
- Sigstore integration time:
-
Permalink:
b17z/mcpmon@ee7b2fbb6cab396788eac35f79b93f9dd6c6fb72 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/b17z
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ee7b2fbb6cab396788eac35f79b93f9dd6c6fb72 -
Trigger Event:
release
-
Statement type: