@schaferandrew/mealie-mcp-server 0.1.1 → 0.1.3
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/README.md +67 -52
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -24,13 +24,16 @@ Once connected, you can ask Claude things like:
|
|
|
24
24
|
|
|
25
25
|
## Installation
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
No installation required — run directly with `npx`:
|
|
28
28
|
|
|
29
29
|
```bash
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
npx @schaferandrew/mealie-mcp-server
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Or install globally if you prefer:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
npm install -g @schaferandrew/mealie-mcp-server
|
|
34
37
|
```
|
|
35
38
|
|
|
36
39
|
## Claude Desktop Setup
|
|
@@ -44,8 +47,8 @@ Add the server to your Claude Desktop config file:
|
|
|
44
47
|
{
|
|
45
48
|
"mcpServers": {
|
|
46
49
|
"mealie": {
|
|
47
|
-
"command": "
|
|
48
|
-
"args": ["/
|
|
50
|
+
"command": "npx",
|
|
51
|
+
"args": ["-y", "@schaferandrew/mealie-mcp-server"],
|
|
49
52
|
"env": {
|
|
50
53
|
"MEALIE_URL": "http://your-mealie-instance:9000",
|
|
51
54
|
"MEALIE_API_KEY": "your-api-key-here"
|
|
@@ -55,17 +58,12 @@ Add the server to your Claude Desktop config file:
|
|
|
55
58
|
}
|
|
56
59
|
```
|
|
57
60
|
|
|
58
|
-
|
|
59
|
-
```bash
|
|
60
|
-
which node
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Then restart Claude Desktop. You should see the Mealie tools available in Claude.
|
|
61
|
+
Restart Claude Desktop — you should see the Mealie tools available in Claude.
|
|
64
62
|
|
|
65
63
|
## Claude Code Setup
|
|
66
64
|
|
|
67
65
|
```bash
|
|
68
|
-
claude mcp add mealie
|
|
66
|
+
claude mcp add mealie -- npx -y @schaferandrew/mealie-mcp-server \
|
|
69
67
|
-e MEALIE_URL=http://your-mealie-instance:9000 \
|
|
70
68
|
-e MEALIE_API_KEY=your-api-key-here
|
|
71
69
|
```
|
|
@@ -76,62 +74,79 @@ Add `--scope global` to make it available in all projects.
|
|
|
76
74
|
|
|
77
75
|
| Tool | Description |
|
|
78
76
|
|---|---|
|
|
79
|
-
| `search_recipes` | Search recipes by name or keyword |
|
|
80
|
-
| `get_recipe` | Get full recipe details including ingredients & instructions |
|
|
81
|
-
| `list_recipes` | List all recipes
|
|
82
|
-
| `add_recipe_from_url` | Import a recipe by scraping a URL |
|
|
83
|
-
| `search_by_ingredient` | Find recipes containing a specific ingredient |
|
|
77
|
+
| `search_recipes` | Search recipes by name or keyword.<br>Example: `search_recipes pasta` |
|
|
78
|
+
| `get_recipe` | Get full recipe details including ingredients & instructions.<br>Example: `get_recipe "Spaghetti Carbonara"` |
|
|
79
|
+
| `list_recipes` | List all recipes, optionally filtered by tag or category.<br>Example: `list_recipes tag=vegetarian` |
|
|
80
|
+
| `add_recipe_from_url` | Import a recipe by scraping a URL.<br>Example: `add_recipe_from_url https://example.com/recipe` |
|
|
81
|
+
| `search_by_ingredient` | Find recipes containing a specific ingredient.<br>Example: `search_by_ingredient chicken` |
|
|
84
82
|
|
|
85
|
-
##
|
|
83
|
+
## Configuration
|
|
86
84
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
85
|
+
| Environment Variable | Required | Description |
|
|
86
|
+
|---|---|---|
|
|
87
|
+
| `MEALIE_URL` | Yes | Base URL of your Mealie instance (e.g. `http://localhost:9000`) |
|
|
88
|
+
| `MEALIE_API_KEY` | Yes | API token generated in your Mealie profile |
|
|
89
|
+
|
|
90
|
+
## Security Notes
|
|
91
|
+
|
|
92
|
+
- API keys are never logged — credentials are redacted from all error messages
|
|
93
|
+
- Never hardcode credentials; use environment variables
|
|
94
|
+
- `.env` is gitignored — `.env.example` is safe to commit
|
|
95
|
+
|
|
96
|
+
## Development
|
|
97
|
+
|
|
98
|
+
Clone the repo and install dependencies:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
git clone https://github.com/schaferandrew/mealie-mcp-server.git
|
|
102
|
+
cd mealie-mcp-server
|
|
103
|
+
npm install
|
|
104
|
+
npm run build
|
|
99
105
|
```
|
|
100
106
|
|
|
101
|
-
|
|
107
|
+
Test your Mealie connection:
|
|
102
108
|
|
|
103
109
|
```bash
|
|
104
110
|
MEALIE_URL=http://your-instance MEALIE_API_KEY=your-key npm run test-connection
|
|
105
111
|
```
|
|
106
112
|
|
|
107
|
-
|
|
113
|
+
### Releasing a New Version
|
|
108
114
|
|
|
109
|
-
|
|
110
|
-
- Never hardcode credentials; use environment variables or a `.env` file
|
|
111
|
-
- `.env` is gitignored — `.env.example` is safe to commit
|
|
115
|
+
Releases are published to npm automatically when a GitHub Release is published.
|
|
112
116
|
|
|
113
|
-
|
|
117
|
+
**Step 1 — bump the version and open a PR:**
|
|
114
118
|
|
|
115
|
-
|
|
119
|
+
```bash
|
|
120
|
+
# Pick one based on the nature of your changes:
|
|
121
|
+
npm version patch --no-git-tag-version # 0.1.0 → 0.1.1 (bug fixes)
|
|
122
|
+
npm version minor --no-git-tag-version # 0.1.0 → 0.2.0 (new features)
|
|
123
|
+
npm version major --no-git-tag-version # 0.1.0 → 1.0.0 (breaking changes)
|
|
124
|
+
|
|
125
|
+
VERSION=$(node -p "require('./package.json').version")
|
|
126
|
+
|
|
127
|
+
git checkout -b release/v$VERSION
|
|
128
|
+
git add package.json package-lock.json
|
|
129
|
+
git commit -m "chore: bump version to $VERSION"
|
|
130
|
+
git push -u origin release/v$VERSION
|
|
131
|
+
gh pr create --title "chore: release v$VERSION" --body "Version bump to v$VERSION." --base main
|
|
132
|
+
```
|
|
116
133
|
|
|
117
|
-
|
|
134
|
+
**Step 2 — after the PR is merged, create the GitHub Release:**
|
|
118
135
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
npm version minor --no-git-tag-version # 0.1.0 → 0.2.0 (new features)
|
|
123
|
-
npm version major --no-git-tag-version # 0.1.0 → 1.0.0 (breaking changes)
|
|
124
|
-
```
|
|
136
|
+
```bash
|
|
137
|
+
# Make sure you're on main with the latest changes
|
|
138
|
+
git checkout main && git pull origin main
|
|
125
139
|
|
|
126
|
-
|
|
140
|
+
VERSION=$(node -p "require('./package.json').version")
|
|
127
141
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
142
|
+
gh release create "v$VERSION" \
|
|
143
|
+
--title "v$VERSION" \
|
|
144
|
+
--generate-notes
|
|
145
|
+
```
|
|
131
146
|
|
|
132
|
-
GitHub Actions will publish to npm automatically
|
|
147
|
+
GitHub Actions will publish to npm automatically.
|
|
133
148
|
|
|
134
|
-
> **Note:**
|
|
149
|
+
> **Note:** `NPM_TOKEN` must be set in your repo under **Settings → Secrets and variables → Actions**. Requires the [GitHub CLI](https://cli.github.com) (`gh`).
|
|
135
150
|
|
|
136
151
|
## License
|
|
137
152
|
|