mcp-recipes 1.3.0 → 2.0.0

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 CHANGED
@@ -1,9 +1,30 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.0.0
4
+
5
+ - **This server now needs node 24 or later.** Node 20 reached its end of
6
+ support on 2026-04-30 and node 22 is no longer what this code is built and
7
+ typed against. That is what makes this a major version: an install on an
8
+ older node is refused rather than left to fail somewhere later.
9
+ - **Every refusal of an argument opens with `invalid_input`.** A value outside
10
+ its bounds, of the wrong type, or outside the set an argument reads used to
11
+ come back in the validator's own words, with no code to branch on.
12
+ - **A container image is published for each version**, on ghcr, for amd64 and
13
+ arm64. The readme carries the configuration that runs it.
14
+ - The published package carries its changelog, and the entry point it declares
15
+ for the package root now publishes its types.
16
+
3
17
  All notable changes to this project are documented here. The format follows
4
18
  [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and the versions follow
5
19
  [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
20
 
21
+ ## 1.3.1
22
+
23
+ - The README carries the same badge row as every server here: npm, CI, the
24
+ licence, the MCP registry entry, the Glama score, and one-click installs for
25
+ Cursor and VS Code. Each install link encodes this package. npm serves the
26
+ README frozen at publish time, so a release is what puts it there.
27
+
7
28
  ## 1.3.0
8
29
 
9
30
  ### Added
package/README.md CHANGED
@@ -2,9 +2,12 @@
2
2
 
3
3
  [![npm](https://img.shields.io/npm/v/mcp-recipes.svg)](https://www.npmjs.com/package/mcp-recipes)
4
4
  [![CI](https://github.com/smeet666/mcp-recipes/actions/workflows/ci.yml/badge.svg)](https://github.com/smeet666/mcp-recipes/actions/workflows/ci.yml)
5
- [![license](https://img.shields.io/npm/l/mcp-recipes.svg)](LICENSE)
5
+ [![license](https://img.shields.io/npm/l/mcp-recipes.svg)](./LICENSE)
6
6
  [![MCP Registry](https://img.shields.io/badge/MCP_Registry-listed-6E56CF)](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.smeet666/mcp-recipes)
7
7
  [![Glama](https://glama.ai/mcp/servers/smeet666/mcp-recipes/badges/score.svg)](https://glama.ai/mcp/servers/smeet666/mcp-recipes)
8
+ [![M8ven](https://m8ven.ai/badge/mcp/smeet666-mcp-recipes-1o0x5l?variant=verified)](https://m8ven.ai/mcp/smeet666-mcp-recipes-1o0x5l)
9
+ [![Install in Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en/install-mcp?name=recipes&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIm1jcC1yZWNpcGVzIl19)
10
+ [![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=recipes&config=%7B%22name%22%3A%22recipes%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22mcp-recipes%22%5D%7D)
8
11
 
9
12
  One question, several kitchens. An MCP server that asks every recipe source it
10
13
  reads at the same time, merges what they say, and scales quantities in French
@@ -121,7 +124,7 @@ line says what it was rounded from and in which direction.
121
124
 
122
125
  ## Install
123
126
 
124
- Node 20 or later.
127
+ Node 24 or later.
125
128
 
126
129
  ```bash
127
130
  npx -y mcp-recipes
@@ -140,6 +143,23 @@ npx -y mcp-recipes
140
143
  }
141
144
  ```
142
145
 
146
+ ### With Docker
147
+
148
+ ```json
149
+ {
150
+ "mcpServers": {
151
+ "recipes": {
152
+ "command": "docker",
153
+ "args": ["run", "-i", "--rm", "ghcr.io/smeet666/mcp-recipes:2.0.0"]
154
+ }
155
+ }
156
+ }
157
+ ```
158
+
159
+ `-i` keeps stdin open, which is where the protocol travels, and no `-t` is
160
+ passed: a TTY rewrites the stream and breaks it. The container needs outbound
161
+ HTTPS to `www.marmiton.org`, `en.wikibooks.org` and `api.wikimedia.org`, and nothing else: no volume, no port, no environment variable, no credential.
162
+
143
163
  ### From a clone
144
164
 
145
165
  ```bash
@@ -572,7 +592,7 @@ arrondie dit depuis quelle valeur et dans quel sens.
572
592
 
573
593
  ## Installation
574
594
 
575
- Node 20 ou plus récent.
595
+ Node 24 ou plus récent.
576
596
 
577
597
  ```bash
578
598
  npx -y mcp-recipes
@@ -591,6 +611,24 @@ npx -y mcp-recipes
591
611
  }
592
612
  ```
593
613
 
614
+ ### Avec Docker
615
+
616
+ ```json
617
+ {
618
+ "mcpServers": {
619
+ "recipes": {
620
+ "command": "docker",
621
+ "args": ["run", "-i", "--rm", "ghcr.io/smeet666/mcp-recipes:2.0.0"]
622
+ }
623
+ }
624
+ }
625
+ ```
626
+
627
+ `-i` garde l'entrée standard ouverte, qui est le canal du protocole, et aucun
628
+ `-t` n'est passé : un terminal réécrit le flux et le casse. Le conteneur a besoin
629
+ d'un accès HTTPS sortant vers `www.marmiton.org`, `en.wikibooks.org` et `api.wikimedia.org`, et de rien d'autre :
630
+ aucun volume, aucun port, aucune variable d'environnement, aucun identifiant.
631
+
594
632
  ---
595
633
 
596
634
  ## Les quatre outils