Skip to content

Commit f634d01

Browse files
committed
ci: add github action to create releases
1 parent b590c33 commit f634d01

File tree

3 files changed

+102
-56
lines changed

3 files changed

+102
-56
lines changed

.github/workflows/create-release.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Create Release
2+
on:
3+
push:
4+
tags:
5+
- 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
6+
jobs:
7+
build:
8+
runs-on: macos-latest
9+
steps:
10+
- name: Checkout
11+
uses: actions/checkout@v4
12+
- name: Install Dependencies
13+
run: npm install
14+
- name: Build for Mac
15+
run: npm run build -- --target=bun-darwin-arm64 --minify --sourcemap --outfile dist/algolia-mcp-darwin-arm64-${{ github.ref_name }}
16+
- name: Zip Release
17+
run: zip -r dist/algolia-mcp-darwin-arm64-${{ github.ref_name }}.zip dist/algolia-mcp-darwin-arm64-${{ github.ref_name }}
18+
- name: Release
19+
uses: softprops/action-gh-release@v2
20+
with:
21+
make_latest: "true"
22+
files: dist/*

README.md

Lines changed: 79 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,79 @@
11
# Algolia NodeJS MCP implementation
22

3-
## Getting Started
3+
- [Running the MCP Server (Mac Only)](#running-the-mcp-server-mac-only)
4+
- [What can I ask for?](#what-can-i-ask-for)
5+
- [Account](#account)
6+
- [Apps](#apps)
7+
- [Search](#search)
8+
- [AB Testing](#ab-testing)
9+
- [Analytics](#analytics)
10+
- [Monitoring](#monitoring)
11+
- [CLI options](#cli-options)
12+
- [List available commands](#list-available-commands)
13+
- [Server options](#server-options)
14+
- [Setup dev environment](#setup-dev-environment)
415

5-
### Installation
16+
## Running the MCP Server (Mac Only)
617

7-
You need at least Node 22
18+
1. Download the latest version of the Algolia MCP server at https://github.com/algolia/mcp-node/releases
819

9-
```sh
10-
git clone https://github.com/algolia/mcp-node
11-
cd mcp-node
12-
npm i
13-
```
20+
2. Extract the Zip file
1421

15-
### Claude MCP configuration
22+
3. From a terminal, run `xattr -r -d com.apple.quarantine <path_to_executable>`
23+
24+
> [!IMPORTANT]
25+
> Why do you need to run this command?
26+
> This executable is not signed because I don't have a payed Apple Developer Account.
27+
> This means that MacOs will "quarantine" it by default when it is downloaded from the internet.
28+
> The command remove the quarantine, allowing you to run the program. If you don't trust the build,
29+
> you can always build it yourself from source with `npm run build` (see development environment setup below) 😄.
30+
31+
4. Configure Claude Desktop
1632

1733
```json
1834
{
1935
"mcpServers": {
2036
"algolia-mcp": {
21-
"command": "<PATH_TO_BIN>/node",
37+
"command": "<path_to_executable>",
2238
"args": [
23-
"--experimental-strip-types",
24-
"--no-warnings=ExperimentalWarning",
25-
"<PATH_TO_PROJECT>/src/app.ts"
39+
// See CLI options below
2640
]
2741
}
2842
}
2943
}
3044
```
3145

32-
### Advanced
46+
## What can I ask for?
3347

34-
If you want to restrict or allow more operationIds, you can pass more options (see CLI usage below)
48+
Algolia Node MCP lets you interact with your Algolia apps and indices. Here are some example prompts to get you started:
3549

36-
```json
37-
{
38-
"mcpServers": {
39-
"algolia-mcp": {
40-
"command": "<PATH_TO_BIN>/node",
41-
"args": [
42-
"--experimental-strip-types",
43-
"--no-warnings=ExperimentalWarning",
44-
"<PATH_TO_PROJECT>/src/app.ts",
45-
"-t getSettings"
46-
]
47-
}
48-
}
49-
}
50-
```
50+
### Account
51+
52+
- "What is the email address associated to my account?"
53+
54+
### Apps
55+
56+
- "List all my apps Algolia apps."
57+
- "List all the apps that I own."
58+
- "What's the ID for app Latency?"
59+
60+
### Search
61+
62+
- "Search all items in the products index of app Latency where brand = 'Nike' and price < 100."
63+
64+
### AB Testing
65+
66+
- "Do I have any AB Tests currently running on application <APPLICATION_ID>?"
67+
68+
### Analytics
69+
70+
- "I have an index named <index_name> on application <application_id>, can you generate a graph for no results rate in DE region over the past month? Please use react and recharts."
5171

52-
## CLI
72+
### Monitoring
73+
74+
- "Are there any incidents going on at Algolia currently?"
75+
76+
## CLI options
5377

5478
### List available commands
5579

@@ -80,32 +104,32 @@ Options:
80104
-h, --help display help for command
81105
```
82106

83-
## What can I ask for?
84-
85-
Algolia Node MCP lets you interact with your Algolia apps and indices. Here are some example prompts to get you started:
86-
87-
### Account
88-
89-
- "What is the email address associated to my account?"
90-
91-
### Apps
92-
93-
- "List all my apps Algolia apps."
94-
- "List all the apps that I own."
95-
- "What's the ID for app Latency?"
96-
97-
### Search
98-
99-
- "Search all items in the products index of app Latency where brand = 'Nike' and price < 100."
107+
## Setup dev environment
100108

101-
### AB Testing
102-
103-
- "Do I have any AB Tests currently running on application <APPLICATION_ID>?"
109+
You need at least Node 22
104110

105-
### Analytics
111+
```sh
112+
git clone https://github.com/algolia/mcp-node
113+
cd mcp-node
114+
npm i
115+
```
106116

107-
- "I have an index named <index_name> on application <application_id>, can you generate a graph for no results rate in DE region over the past month? Please use react and recharts."
117+
And then you'll need to configure Claude Desktop like so:
108118

109-
### Monitoring
119+
```json
120+
{
121+
"mcpServers": {
122+
"algolia-mcp": {
123+
"command": "<PATH_TO_BIN>/node",
124+
"args": [
125+
"--experimental-strip-types",
126+
"--no-warnings=ExperimentalWarning",
127+
"<PATH_TO_PROJECT>/src/app.ts"
128+
]
129+
}
130+
}
131+
}
132+
```
110133

111-
- "Are there any incidents going on at Algolia currently?"
134+
> [!TIP]
135+
> You'll need to restart Claude Desktop every time you make a modification.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"start": "node --experimental-strip-types --no-warnings=ExperimentalWarnings src/app.ts",
77
"type-check": "tsc --noEmit",
88
"lint": "eslint --ext .ts src",
9-
"build": "bun build ./src/app.ts --compile --minify --sourcemap --target=bun-darwin-arm64 --outfile dist/algolia-mcp-darwin-arm64"
9+
"build": "bun build ./src/app.ts --compile"
1010
},
1111
"type": "module",
1212
"keywords": [],

0 commit comments

Comments
 (0)