dryhack-mcp 2.3.1__tar.gz → 2.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/PKG-INFO +26 -9
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/README.md +25 -8
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/__init__.py +1 -1
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp.egg-info/PKG-INFO +26 -9
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/pyproject.toml +1 -1
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/LICENSE +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/__main__.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/config.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/server.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/tools/__init__.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/tools/authorize.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/tools/browser_tool.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/tools/curl_tool.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/tools/exec.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/tools/python_tool.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/tools/scope.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp/tools/shell_tool.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp.egg-info/SOURCES.txt +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp.egg-info/dependency_links.txt +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp.egg-info/entry_points.txt +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp.egg-info/requires.txt +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/dryhack_mcp.egg-info/top_level.txt +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/setup.cfg +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/tests/test_authorize.py +0 -0
- {dryhack_mcp-2.3.1 → dryhack_mcp-2.3.2}/tests/test_browser.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dryhack-mcp
|
|
3
|
-
Version: 2.3.
|
|
3
|
+
Version: 2.3.2
|
|
4
4
|
Summary: DryHack-MCP - an MCP server providing offensive-security tooling (curl, python, shell, Playwright browser) and a scope-gated authorize engine for authorized penetration testing.
|
|
5
5
|
Author: Afrizal F.A
|
|
6
6
|
License: MIT License
|
|
@@ -74,13 +74,19 @@ With [uv](https://docs.astral.sh/uv/) you can run the server directly from PyPI
|
|
|
74
74
|
— no manual install needed:
|
|
75
75
|
|
|
76
76
|
```bash
|
|
77
|
-
|
|
77
|
+
# recommended: pull the browser extra so the `browser` tool is guaranteed
|
|
78
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp
|
|
78
79
|
# http transport
|
|
79
|
-
uvx dryhack-mcp --transport http --host 0.0.0.0 --port 8000
|
|
80
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp --transport http --host 0.0.0.0 --port 8000
|
|
80
81
|
# pin a version
|
|
81
|
-
uvx dryhack-mcp
|
|
82
|
+
uvx --from 'dryhack-mcp[browser]==2.3.2' dryhack-mcp
|
|
82
83
|
```
|
|
83
84
|
|
|
85
|
+
> `uvx dryhack-mcp` (without `--from`) also works — Playwright is a core
|
|
86
|
+
> dependency — but the explicit `--from 'dryhack-mcp[browser]'` form is the
|
|
87
|
+
> recommended, unambiguous way to get everything the `browser` tool needs even
|
|
88
|
+
> if a stale cache is involved.
|
|
89
|
+
|
|
84
90
|
For development:
|
|
85
91
|
|
|
86
92
|
```bash
|
|
@@ -90,10 +96,17 @@ python3 -m pip install -e ".[dev]"
|
|
|
90
96
|
### Browser tool (Playwright)
|
|
91
97
|
|
|
92
98
|
Playwright is a **core dependency**, so a plain `pip install dryhack-mcp` /
|
|
93
|
-
`uvx dryhack-mcp` already ships it
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
99
|
+
`uvx dryhack-mcp` already ships it. For MCP clients using uvx, the recommended,
|
|
100
|
+
unambiguous invocation is:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
The browser *binaries* (Chromium/Firefox/WebKit) are not distributed via pip, so
|
|
107
|
+
the first time the `browser` tool launches an engine it **auto-runs
|
|
108
|
+
`playwright install <browser>`** if the binary is missing (you'll see a
|
|
109
|
+
`[setup] auto-installed ...` note in the tool output on that first call).
|
|
97
110
|
|
|
98
111
|
To pre-install the binaries (optional, avoids the one-time first-use download):
|
|
99
112
|
|
|
@@ -157,7 +170,7 @@ CLI options:
|
|
|
157
170
|
"mcpServers": {
|
|
158
171
|
"dryhack": {
|
|
159
172
|
"command": "uvx",
|
|
160
|
-
"args": ["dryhack-mcp"],
|
|
173
|
+
"args": ["--from", "dryhack-mcp[browser]", "dryhack-mcp"],
|
|
161
174
|
"env": {
|
|
162
175
|
"DRYHACK_COMMAND_TIMEOUT": "120"
|
|
163
176
|
}
|
|
@@ -166,6 +179,10 @@ CLI options:
|
|
|
166
179
|
}
|
|
167
180
|
```
|
|
168
181
|
|
|
182
|
+
> The `--from dryhack-mcp[browser]` args ensure the `browser` tool's Playwright
|
|
183
|
+
> dependency is present. The browser binary still auto-installs on first use
|
|
184
|
+
> (`DRYHACK_BROWSER_AUTO_INSTALL`, default on).
|
|
185
|
+
|
|
169
186
|
### http
|
|
170
187
|
|
|
171
188
|
```json
|
|
@@ -28,13 +28,19 @@ With [uv](https://docs.astral.sh/uv/) you can run the server directly from PyPI
|
|
|
28
28
|
— no manual install needed:
|
|
29
29
|
|
|
30
30
|
```bash
|
|
31
|
-
|
|
31
|
+
# recommended: pull the browser extra so the `browser` tool is guaranteed
|
|
32
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp
|
|
32
33
|
# http transport
|
|
33
|
-
uvx dryhack-mcp --transport http --host 0.0.0.0 --port 8000
|
|
34
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp --transport http --host 0.0.0.0 --port 8000
|
|
34
35
|
# pin a version
|
|
35
|
-
uvx dryhack-mcp
|
|
36
|
+
uvx --from 'dryhack-mcp[browser]==2.3.2' dryhack-mcp
|
|
36
37
|
```
|
|
37
38
|
|
|
39
|
+
> `uvx dryhack-mcp` (without `--from`) also works — Playwright is a core
|
|
40
|
+
> dependency — but the explicit `--from 'dryhack-mcp[browser]'` form is the
|
|
41
|
+
> recommended, unambiguous way to get everything the `browser` tool needs even
|
|
42
|
+
> if a stale cache is involved.
|
|
43
|
+
|
|
38
44
|
For development:
|
|
39
45
|
|
|
40
46
|
```bash
|
|
@@ -44,10 +50,17 @@ python3 -m pip install -e ".[dev]"
|
|
|
44
50
|
### Browser tool (Playwright)
|
|
45
51
|
|
|
46
52
|
Playwright is a **core dependency**, so a plain `pip install dryhack-mcp` /
|
|
47
|
-
`uvx dryhack-mcp` already ships it
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
53
|
+
`uvx dryhack-mcp` already ships it. For MCP clients using uvx, the recommended,
|
|
54
|
+
unambiguous invocation is:
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
The browser *binaries* (Chromium/Firefox/WebKit) are not distributed via pip, so
|
|
61
|
+
the first time the `browser` tool launches an engine it **auto-runs
|
|
62
|
+
`playwright install <browser>`** if the binary is missing (you'll see a
|
|
63
|
+
`[setup] auto-installed ...` note in the tool output on that first call).
|
|
51
64
|
|
|
52
65
|
To pre-install the binaries (optional, avoids the one-time first-use download):
|
|
53
66
|
|
|
@@ -111,7 +124,7 @@ CLI options:
|
|
|
111
124
|
"mcpServers": {
|
|
112
125
|
"dryhack": {
|
|
113
126
|
"command": "uvx",
|
|
114
|
-
"args": ["dryhack-mcp"],
|
|
127
|
+
"args": ["--from", "dryhack-mcp[browser]", "dryhack-mcp"],
|
|
115
128
|
"env": {
|
|
116
129
|
"DRYHACK_COMMAND_TIMEOUT": "120"
|
|
117
130
|
}
|
|
@@ -120,6 +133,10 @@ CLI options:
|
|
|
120
133
|
}
|
|
121
134
|
```
|
|
122
135
|
|
|
136
|
+
> The `--from dryhack-mcp[browser]` args ensure the `browser` tool's Playwright
|
|
137
|
+
> dependency is present. The browser binary still auto-installs on first use
|
|
138
|
+
> (`DRYHACK_BROWSER_AUTO_INSTALL`, default on).
|
|
139
|
+
|
|
123
140
|
### http
|
|
124
141
|
|
|
125
142
|
```json
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dryhack-mcp
|
|
3
|
-
Version: 2.3.
|
|
3
|
+
Version: 2.3.2
|
|
4
4
|
Summary: DryHack-MCP - an MCP server providing offensive-security tooling (curl, python, shell, Playwright browser) and a scope-gated authorize engine for authorized penetration testing.
|
|
5
5
|
Author: Afrizal F.A
|
|
6
6
|
License: MIT License
|
|
@@ -74,13 +74,19 @@ With [uv](https://docs.astral.sh/uv/) you can run the server directly from PyPI
|
|
|
74
74
|
— no manual install needed:
|
|
75
75
|
|
|
76
76
|
```bash
|
|
77
|
-
|
|
77
|
+
# recommended: pull the browser extra so the `browser` tool is guaranteed
|
|
78
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp
|
|
78
79
|
# http transport
|
|
79
|
-
uvx dryhack-mcp --transport http --host 0.0.0.0 --port 8000
|
|
80
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp --transport http --host 0.0.0.0 --port 8000
|
|
80
81
|
# pin a version
|
|
81
|
-
uvx dryhack-mcp
|
|
82
|
+
uvx --from 'dryhack-mcp[browser]==2.3.2' dryhack-mcp
|
|
82
83
|
```
|
|
83
84
|
|
|
85
|
+
> `uvx dryhack-mcp` (without `--from`) also works — Playwright is a core
|
|
86
|
+
> dependency — but the explicit `--from 'dryhack-mcp[browser]'` form is the
|
|
87
|
+
> recommended, unambiguous way to get everything the `browser` tool needs even
|
|
88
|
+
> if a stale cache is involved.
|
|
89
|
+
|
|
84
90
|
For development:
|
|
85
91
|
|
|
86
92
|
```bash
|
|
@@ -90,10 +96,17 @@ python3 -m pip install -e ".[dev]"
|
|
|
90
96
|
### Browser tool (Playwright)
|
|
91
97
|
|
|
92
98
|
Playwright is a **core dependency**, so a plain `pip install dryhack-mcp` /
|
|
93
|
-
`uvx dryhack-mcp` already ships it
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
99
|
+
`uvx dryhack-mcp` already ships it. For MCP clients using uvx, the recommended,
|
|
100
|
+
unambiguous invocation is:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
uvx --from 'dryhack-mcp[browser]' dryhack-mcp
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
The browser *binaries* (Chromium/Firefox/WebKit) are not distributed via pip, so
|
|
107
|
+
the first time the `browser` tool launches an engine it **auto-runs
|
|
108
|
+
`playwright install <browser>`** if the binary is missing (you'll see a
|
|
109
|
+
`[setup] auto-installed ...` note in the tool output on that first call).
|
|
97
110
|
|
|
98
111
|
To pre-install the binaries (optional, avoids the one-time first-use download):
|
|
99
112
|
|
|
@@ -157,7 +170,7 @@ CLI options:
|
|
|
157
170
|
"mcpServers": {
|
|
158
171
|
"dryhack": {
|
|
159
172
|
"command": "uvx",
|
|
160
|
-
"args": ["dryhack-mcp"],
|
|
173
|
+
"args": ["--from", "dryhack-mcp[browser]", "dryhack-mcp"],
|
|
161
174
|
"env": {
|
|
162
175
|
"DRYHACK_COMMAND_TIMEOUT": "120"
|
|
163
176
|
}
|
|
@@ -166,6 +179,10 @@ CLI options:
|
|
|
166
179
|
}
|
|
167
180
|
```
|
|
168
181
|
|
|
182
|
+
> The `--from dryhack-mcp[browser]` args ensure the `browser` tool's Playwright
|
|
183
|
+
> dependency is present. The browser binary still auto-installs on first use
|
|
184
|
+
> (`DRYHACK_BROWSER_AUTO_INSTALL`, default on).
|
|
185
|
+
|
|
169
186
|
### http
|
|
170
187
|
|
|
171
188
|
```json
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "dryhack-mcp"
|
|
7
|
-
version = "2.3.
|
|
7
|
+
version = "2.3.2"
|
|
8
8
|
description = "DryHack-MCP - an MCP server providing offensive-security tooling (curl, python, shell, Playwright browser) and a scope-gated authorize engine for authorized penetration testing."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { file = "LICENSE" }
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|