domeneshop-mcp 1.0.1 → 1.0.2

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.
Files changed (3) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +180 -11
  3. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # domeneshop-mcp
2
2
 
3
+ ## 1.0.2
4
+
5
+ ### Patch Changes
6
+
7
+ - [#10](https://github.com/martinzachariassen/domeneshop-mcp/pull/10) [`c21008b`](https://github.com/martinzachariassen/domeneshop-mcp/commit/c21008bf12dd1c9f60aa434439dcddca3b59d499) Thanks [@martinzachariassen](https://github.com/martinzachariassen)! - Document that this is a standard MCP server usable with any MCP-compatible client, not just Claude, and add setup instructions for Claude Desktop, Cursor, VS Code, Codex and other clients alongside Claude Code.
8
+
3
9
  ## 1.0.1
4
10
 
5
11
  ### Patch Changes
package/README.md CHANGED
@@ -10,11 +10,17 @@ manage your domains, DNS records, HTTP forwards and invoices.
10
10
  Every operation the Domeneshop API offers is available as a tool — 15 of them,
11
11
  covering domains, DNS, HTTP forwarding, dynamic DNS and invoices.
12
12
 
13
+ This is a standard MCP server communicating over stdio, so it works with
14
+ **any MCP-compatible client**. That includes Claude Code,
15
+ Claude Desktop, Cursor, VS Code (with GitHub Copilot), Codex, Windsurf, Cline,
16
+ and anything else that speaks MCP. See [Configuration](#configuration) for
17
+ setup in each of those, and [Tools](#tools) for everything the server can do.
18
+
13
19
  ## Quick start
14
20
 
15
21
  1. Get an API token and secret from
16
22
  [domeneshop.no/admin?view=api](https://www.domeneshop.no/admin?view=api).
17
- 2. Register the server with Claude Code:
23
+ 2. Register the server with your MCP client. For Claude Code:
18
24
 
19
25
  ```sh
20
26
  claude mcp add domeneshop \
@@ -23,11 +29,10 @@ covering domains, DNS, HTTP forwarding, dynamic DNS and invoices.
23
29
  -- npx -y domeneshop-mcp
24
30
  ```
25
31
 
26
- That's it — ask Claude to list your domains and it will pick up the new
27
- tools. This registers the server for the current project only; add `-s user`
28
- to make it available everywhere. See [Configuration](#configuration) for
29
- Claude Desktop and other MCP clients, and [Tools](#tools) for everything the
30
- server can do.
32
+ That's it — ask your assistant to list your domains and it will pick up the
33
+ new tools. This registers the server for the current project only; add
34
+ `--scope user` to make it available everywhere. If you're using a different
35
+ client, jump to [Configuration](#configuration) for the equivalent setup.
31
36
 
32
37
  ## Contents
33
38
 
@@ -71,9 +76,17 @@ start without them:
71
76
  | `DOMENESHOP_API_SECRET` | The matching API secret |
72
77
 
73
78
  It speaks MCP over stdio, so it is launched by your MCP client rather than run
74
- directly.
79
+ directly — `npx -y domeneshop-mcp` is the command every client below runs to
80
+ start it. Swap in your real token and secret wherever you see the placeholders.
81
+
82
+ Most clients also let you scope a server to just the current project (private,
83
+ or shared with your team via a file checked into version control) or make it
84
+ available everywhere on your machine — usually by picking which config file
85
+ you write to. Each client below notes this where it applies; Claude Desktop
86
+ and Codex only have a single, machine-wide config file.
75
87
 
76
- ### Claude Code
88
+ <details>
89
+ <summary><strong>Claude Code</strong></summary>
77
90
 
78
91
  ```sh
79
92
  claude mcp add domeneshop \
@@ -82,10 +95,85 @@ claude mcp add domeneshop \
82
95
  -- npx -y domeneshop-mcp
83
96
  ```
84
97
 
85
- ### Claude Desktop and other clients
98
+ This defaults to `--scope local` (private to you, only in this project). Use
99
+ `--scope project` to write it to `<your-project>/.mcp.json` instead (shared via
100
+ version control — see the block below), or `--scope user` for every project on
101
+ your account.
102
+
103
+ If you'd rather not resolve the package via `npx` on every launch, install it
104
+ once and point Claude Code at the binary directly:
105
+
106
+ ```sh
107
+ npm install -g domeneshop-mcp
108
+ claude mcp add domeneshop \
109
+ --env DOMENESHOP_API_TOKEN=your-token \
110
+ --env DOMENESHOP_API_SECRET=your-secret \
111
+ -- domeneshop-mcp
112
+ ```
113
+
114
+ You can also add it from raw JSON:
115
+
116
+ ```sh
117
+ claude mcp add-json domeneshop '{"command":"npx","args":["-y","domeneshop-mcp"],"env":{"DOMENESHOP_API_TOKEN":"your-token","DOMENESHOP_API_SECRET":"your-secret"}}'
118
+ ```
119
+
120
+ Or, for `--scope project`, edit `<your-project>/.mcp.json` directly:
121
+
122
+ ```json
123
+ {
124
+ "mcpServers": {
125
+ "domeneshop": {
126
+ "command": "npx",
127
+ "args": ["-y", "domeneshop-mcp"],
128
+ "env": {
129
+ "DOMENESHOP_API_TOKEN": "your-token",
130
+ "DOMENESHOP_API_SECRET": "your-secret"
131
+ }
132
+ }
133
+ }
134
+ }
135
+ ```
136
+
137
+ </details>
138
+
139
+ <details>
140
+ <summary><strong>Claude Desktop</strong></summary>
141
+
142
+ Edit `claude_desktop_config.json` (Settings → Developer → Edit Config), found at:
143
+
144
+ | Platform | Full path |
145
+ | --- | --- |
146
+ | macOS | `~/Library/Application Support/Claude/claude_desktop_config.json` |
147
+ | Windows | `%APPDATA%\Claude\claude_desktop_config.json` |
148
+ | Linux (unofficial builds) | `~/.config/Claude/claude_desktop_config.json` |
149
+
150
+ ```json
151
+ {
152
+ "mcpServers": {
153
+ "domeneshop": {
154
+ "command": "npx",
155
+ "args": ["-y", "domeneshop-mcp"],
156
+ "env": {
157
+ "DOMENESHOP_API_TOKEN": "your-token",
158
+ "DOMENESHOP_API_SECRET": "your-secret"
159
+ }
160
+ }
161
+ }
162
+ }
163
+ ```
164
+
165
+ </details>
166
+
167
+ <details>
168
+ <summary><strong>Cursor</strong></summary>
86
169
 
87
- Add the server to your client's MCP configuration — for Claude Desktop that is
88
- `claude_desktop_config.json`:
170
+ Add the same `mcpServers` block to a `mcp.json` file, found at:
171
+
172
+ | Scope | Full path |
173
+ | --- | --- |
174
+ | This project only | `<your-project>/.cursor/mcp.json` |
175
+ | Every project (macOS/Linux) | `~/.cursor/mcp.json` |
176
+ | Every project (Windows) | `%USERPROFILE%\.cursor\mcp.json` |
89
177
 
90
178
  ```json
91
179
  {
@@ -102,6 +190,87 @@ Add the server to your client's MCP configuration — for Claude Desktop that is
102
190
  }
103
191
  ```
104
192
 
193
+ </details>
194
+
195
+ <details>
196
+ <summary><strong>VS Code (GitHub Copilot)</strong></summary>
197
+
198
+ VS Code uses a `servers` key instead of `mcpServers`. For this project only,
199
+ add it to `<your-project>/.vscode/mcp.json`:
200
+
201
+ ```json
202
+ {
203
+ "servers": {
204
+ "domeneshop": {
205
+ "type": "stdio",
206
+ "command": "npx",
207
+ "args": ["-y", "domeneshop-mcp"],
208
+ "env": {
209
+ "DOMENESHOP_API_TOKEN": "your-token",
210
+ "DOMENESHOP_API_SECRET": "your-secret"
211
+ }
212
+ }
213
+ }
214
+ }
215
+ ```
216
+
217
+ For every project, run the command palette action **MCP: Open User
218
+ Configuration** and add the same block there — or register it in one line
219
+ from a terminal:
220
+
221
+ ```sh
222
+ code --add-mcp '{"name":"domeneshop","command":"npx","args":["-y","domeneshop-mcp"],"env":{"DOMENESHOP_API_TOKEN":"your-token","DOMENESHOP_API_SECRET":"your-secret"}}'
223
+ ```
224
+
225
+ </details>
226
+
227
+ <details>
228
+ <summary><strong>Codex</strong></summary>
229
+
230
+ Codex CLI reads MCP servers from `mcp_servers` in its config file, found at:
231
+
232
+ | Platform | Full path |
233
+ | --- | --- |
234
+ | macOS/Linux | `~/.codex/config.toml` |
235
+ | Windows | `%USERPROFILE%\.codex\config.toml` |
236
+
237
+ ```toml
238
+ [mcp_servers.domeneshop]
239
+ command = "npx"
240
+ args = ["-y", "domeneshop-mcp"]
241
+ env = { DOMENESHOP_API_TOKEN = "your-token", DOMENESHOP_API_SECRET = "your-secret" }
242
+ ```
243
+
244
+ Or register it from the command line:
245
+
246
+ ```sh
247
+ codex mcp add domeneshop -- npx -y domeneshop-mcp
248
+ ```
249
+
250
+ Then set the two env vars in the `[mcp_servers.domeneshop]` block it creates,
251
+ since `codex mcp add` doesn't take them as flags.
252
+
253
+ </details>
254
+
255
+ <details>
256
+ <summary><strong>Any other MCP client</strong></summary>
257
+
258
+ Any client that supports MCP servers over stdio can run this server — Windsurf,
259
+ Cline, Continue, LM Studio, or a client you've built yourself with the MCP SDK.
260
+ Most follow the same `mcpServers`-with-`command`/`args`/`env` shape used above
261
+ for Claude Desktop and Cursor; check your client's documentation for the exact
262
+ config file and key name, then point it at:
263
+
264
+ - **command**: `npx`
265
+ - **args**: `["-y", "domeneshop-mcp"]`
266
+ - **env**: `DOMENESHOP_API_TOKEN` and `DOMENESHOP_API_SECRET`
267
+
268
+ If your client can't run `npx` directly, install the package globally with
269
+ `npm install -g domeneshop-mcp` and use `domeneshop-mcp` as the command with no
270
+ args instead.
271
+
272
+ </details>
273
+
105
274
  ## Tools
106
275
 
107
276
  Read-only tools are annotated as such, and the tools that overwrite or delete
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "domeneshop-mcp",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "MCP server exposing the Domeneshop API — manage domains, DNS records, HTTP forwards, dynamic DNS and invoices from an AI assistant.",
5
5
  "type": "module",
6
6
  "bin": {