pog-mcp 1.1.8 → 1.1.9

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 +14 -0
  2. package/README.md +37 -9
  3. package/package.json +9 -4
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog — pog-mcp
2
2
 
3
+ ## 1.1.9 — prepared, npm publication on security hold
4
+
5
+ - Pin MCP SDK 1.32.0 to include the security fixes tracked in #1015. The
6
+ executable remains stdio-only; exported-server consumers adding HTTP must
7
+ separately configure input-element and request-body limits.
8
+ - Update the test toolchain to the matched, patched Vitest 4.1.12 family.
9
+ - Replace token-based GitHub publication with npm Trusted Publishing (OIDC),
10
+ using verified Node 24.22.1 / npm 11.19.1 and no credential fallback. Add the
11
+ repository metadata used to bind the package to its publishing workflow.
12
+ - This version is prepared for review, **not yet published**. Under #778,
13
+ npm publication remains disabled until credential rotation, publish-history
14
+ verification and separate owner approval are complete. Merging this code
15
+ must not imply that existing npm users have received the update.
16
+
3
17
  ## 1.1.8 — 2026-10-14
4
18
 
5
19
  - Refresh bundled shared game rules and account ownership types for the common
package/README.md CHANGED
@@ -61,21 +61,49 @@ claude mcp add proof-of-goal -- node /absolute/path/to/packages/mcp/dist/index.j
61
61
 
62
62
  ## Releasing
63
63
 
64
- Publishing is automated: merge to `main` with a new `version` in `package.json`
64
+ Publishing is on a **security hold (#778)**. The release workflow requires the
65
+ repository Actions variable `POG_NPM_PUBLISH_ENABLED` to equal `true`, as well
66
+ as a non-PR run on `main`; an absent effective value or `false` skips the whole publish
67
+ job before it can request an OIDC credential. Re-enable only after credential
68
+ revocation/rotation, publication-history verification and separate owner
69
+ approval following [the operator checklist](https://github.com/1XP-AI/solana-world-soccer-2026/blob/main/SECURITY-FOLLOWUPS.md#npm-778-npm-publication-security-hold-2026-10-22).
70
+ Keep the repository variable explicitly `false` rather than deleting an
71
+ override of a possible organization value. Do not use manual publication to
72
+ bypass this hold.
73
+
74
+ After that approval, merge to `main` with a new `version` in `package.json`
65
75
  and `.github/workflows/publish-mcp.yml` puts it on npm. A pull request that
66
76
  changes shipped files (`src/`, `skill/`, `README.md`, the manifest) while the
67
77
  version is already on npm fails the check — npm cannot overwrite a version, so
68
78
  without the bump the merge would publish nothing and `npx -y pog-mcp` would keep
69
79
  handing out the old server.
70
80
 
71
- Two things are set up once, by hand:
72
-
73
- - **The first publish.** A granular token can only be scoped to a package that
74
- exists, so the order is: `npm publish --access public` from this directory,
75
- then create the token. Nothing to decide first — the licence is in place.
76
- - **`NPM_TOKEN`.** A granular npm access token with read-and-write rights on
77
- this package, stored as the repository secret `NPM_TOKEN`. Nothing in CI can
78
- create it.
81
+ The PR version check and secret-free publish rehearsal remain enabled during
82
+ the hold. A passing check or a merge does not lift it. Release setup is
83
+ owner-operated:
84
+
85
+ - **The first publish (already completed for `pog-mcp`).** A granular token
86
+ scoped to a package requires that package to exist. This bootstrap is not a
87
+ recovery step and must not be repeated to bypass the security hold.
88
+ - **Trusted Publishing (OIDC).** In npm's `pog-mcp` Settings, authorize GitHub
89
+ owner `1XP-AI`, repository `solana-world-soccer-2026`, workflow filename
90
+ `publish-mcp.yml`, with direct publishing enabled. The workflow uses a fresh
91
+ GitHub-hosted runner, verified Node 24.22.1 / npm 11.19.1 and a short-lived
92
+ OIDC exchange; no `NPM_TOKEN` secret or token renewal is needed. PR checks
93
+ never receive `id-token: write`. Newly configured trust must be used within
94
+ npm's activation window (currently two days).
95
+ - After the first verified OIDC publication, revoke any temporary npm token
96
+ and remove the old `NPM_TOKEN` Actions secret. Trusted Publishing does not
97
+ revoke credentials by itself. Require 2FA and disallow bypass tokens in the
98
+ package settings; these settings do not disable Trusted Publishing.
99
+ - This repository stays private, so the publish command explicitly disables
100
+ provenance (npm provenance requires a public source repository). OIDC
101
+ authentication still works. Never make the repository public to enable it.
102
+
103
+ See [npm's Trusted Publishing documentation](https://docs.npmjs.com/trusted-publishers/)
104
+ for the provider requirements. A successful dry-run verifies packaging, not the
105
+ registry's OIDC authorization; verify the actual release run and registry
106
+ version, `gitHead`, integrity and `latest` tag after publication.
79
107
 
80
108
  ## Licence
81
109
 
package/package.json CHANGED
@@ -1,10 +1,15 @@
1
1
  {
2
2
  "name": "pog-mcp",
3
- "version": "1.1.8",
3
+ "version": "1.1.9",
4
4
  "type": "module",
5
5
  "description": "MCP server that lets an AI agent play Proof of Goal — wallet, sign-in, squad building, and matches as typed tools.",
6
6
  "license": "MIT",
7
7
  "homepage": "https://pog.soccer/agents",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/1XP-AI/solana-world-soccer-2026.git",
11
+ "directory": "packages/mcp"
12
+ },
8
13
  "keywords": [
9
14
  "mcp",
10
15
  "model-context-protocol",
@@ -48,7 +53,7 @@
48
53
  "prepublishOnly": "pnpm build"
49
54
  },
50
55
  "dependencies": {
51
- "@modelcontextprotocol/sdk": "^1.13.0",
56
+ "@modelcontextprotocol/sdk": "1.32.0",
52
57
  "@noble/curves": "^1.8.2",
53
58
  "@noble/hashes": "^1.8.0",
54
59
  "@scure/bip39": "^1.6.0",
@@ -57,8 +62,8 @@
57
62
  },
58
63
  "devDependencies": {
59
64
  "@types/node": "^22.15.30",
60
- "@vitest/coverage-v8": "^3.2.4",
65
+ "@vitest/coverage-v8": "4.1.12",
61
66
  "typescript": "*",
62
- "vitest": "^3.2.4"
67
+ "vitest": "4.1.12"
63
68
  }
64
69
  }