@proars/ghost-mcp-server 2.1.0 → 2.1.1

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.
package/CHANGELOG.md ADDED
@@ -0,0 +1,30 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project are listed here. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and versions follow [Semantic Versioning](https://semver.org/).
4
+
5
+ ## [Unreleased]
6
+
7
+ ## [2.1.1] - 2026-11-01
8
+
9
+ ### Changed
10
+
11
+ - README: Claude Code install uses `--scope user`, with steps to check and remove the server, a note on updating, and a warning about running `npx` inside a clone of this repository.
12
+
13
+ ## [2.1.0] - 2026-11-01
14
+
15
+ First release on npm as `@proars/ghost-mcp-server`.
16
+
17
+ ### Added
18
+
19
+ - `delete_member` tool (`DELETE /members/{id}/`). The server now has 59 tools.
20
+ - `ghost-mcp-server` command (`bin` with a shebang), so the package runs with `npx -y @proars/ghost-mcp-server`.
21
+ - GitHub Actions workflow that runs typecheck, build and tests on Node 20 and 22.
22
+ - README warning that destructive tools are available, and an install section for `npx`.
23
+
24
+ ### Changed
25
+
26
+ - `npm start` runs the compiled `dist/index.js` instead of `tsx`.
27
+ - Published files are limited to `dist`, `README.md`, `LICENSE` and `.env.example`.
28
+ - `prepublishOnly` builds the project and runs the tests before every publish.
29
+ - Minimum `@modelcontextprotocol/sdk` raised from `^1.0.0` to `^1.32.0`.
30
+ - README rewritten with a quick start, FAQ and access notes.
package/README.md CHANGED
@@ -45,12 +45,20 @@ Config file locations: Claude Desktop on macOS uses `~/Library/Application Suppo
45
45
  **Claude Code:**
46
46
 
47
47
  ```bash
48
- claude mcp add ghost \
48
+ claude mcp add ghost --scope user \
49
49
  -e GHOST_API_URL=https://your-blog.com \
50
50
  -e GHOST_ADMIN_API_KEY=64f1a2b3c4d5e6f7a8b9c0d1:3e5f7a9b1c2d4e6f8a0b2c4d6e8f0a1b3c5d7e9f1a2b4c6d8e0f2a3b5c7d9e1f \
51
51
  -- npx -y @proars/ghost-mcp-server
52
52
  ```
53
53
 
54
+ `--scope user` makes the server available in every folder. Without it, the server is registered only for the folder where you ran the command. Claude Code starts and stops the server itself, so you don't need to keep a terminal open.
55
+
56
+ Check the connection with `claude mcp get ghost`, which should report `Connected`, or type `/mcp` inside a `claude` session. To remove the server, run `claude mcp remove ghost -s user`.
57
+
58
+ **Updating:** `npx` keeps a cached copy and may not fetch a new release right away. To update, run `rm -rf ~/.npm/_npx` and restart your client, or use `@proars/ghost-mcp-server@latest` in the command so npx checks the registry on every start. To stay on one version, pin it, for example `@proars/ghost-mcp-server@2.1.0`. See the [changelog](CHANGELOG.md) for what changed in each release.
59
+
60
+ Don't run `npx` from inside a clone of this repository: npm finds the local `package.json` with the same name and fails with `ghost-mcp-server: command not found`. Run it from any other folder.
61
+
54
62
  Any other stdio MCP client can run the same command, `npx -y @proars/ghost-mcp-server`, with the two environment variables.
55
63
 
56
64
  ## Install from source
package/dist/index.js CHANGED
@@ -4,7 +4,7 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
4
4
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
5
5
  import { assertSafePath, assertSafeSegment, buildForm, ghostRequest, GhostError, } from "./client.js";
6
6
  import { accessNote, filterRoutes, hintFor, matchRoute, routeKey, ROUTES } from "./routes.js";
7
- const SERVER_VERSION = "2.1.0";
7
+ const SERVER_VERSION = "2.1.1";
8
8
  const MAX_RESULT_CHARS = 100_000;
9
9
  /** Calls Ghost and, on 401, 403 and 404, adds what the route catalog knows about the failure. */
10
10
  async function request(method, path, query = {}, body, form, options) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proars/ghost-mcp-server",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "description": "MCP server for Ghost CMS: manage posts, pages, tags, SEO metadata, members, newsletters and themes through the Ghost Admin API from Claude, Cursor and other AI agents",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -10,6 +10,7 @@
10
10
  "dist",
11
11
  "README.md",
12
12
  "LICENSE",
13
+ "CHANGELOG.md",
13
14
  ".env.example"
14
15
  ],
15
16
  "type": "module",