formbro-mcp-server 1.0.0 → 1.0.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/README.md +355 -35
- package/dist/tools/find.js +1 -1
- package/dist/tools/find.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@ MCP server for FormBro immigration management system - provides access to applic
|
|
|
6
6
|
|
|
7
7
|
## Features
|
|
8
8
|
|
|
9
|
-
- 🔍 **Smart Find Tool** -
|
|
9
|
+
- 🔍 **Smart Find Tool** - Intelligent name search with automatic order matching (e.g., "Zhang Wei" or "Wei Zhang")
|
|
10
10
|
- 📋 **List Operations** - Paginated listing with search and filtering
|
|
11
11
|
- 📄 **Detail Views** - Comprehensive entity information retrieval
|
|
12
12
|
- 🔐 **Secure Authentication** - Token-based API authentication
|
|
@@ -15,25 +15,45 @@ MCP server for FormBro immigration management system - provides access to applic
|
|
|
15
15
|
|
|
16
16
|
## Installation
|
|
17
17
|
|
|
18
|
+
### Option 1: Using npx (Recommended)
|
|
19
|
+
|
|
20
|
+
No installation needed - run directly:
|
|
21
|
+
|
|
18
22
|
```bash
|
|
19
|
-
# Using npx (recommended)
|
|
20
23
|
npx formbro-mcp-server
|
|
24
|
+
```
|
|
21
25
|
|
|
22
|
-
|
|
26
|
+
### Option 2: Global Installation
|
|
27
|
+
|
|
28
|
+
```bash
|
|
23
29
|
npm install -g formbro-mcp-server
|
|
24
30
|
```
|
|
25
31
|
|
|
26
|
-
|
|
32
|
+
### Option 3: Local Installation
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
npm install formbro-mcp-server
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Quick Start
|
|
27
39
|
|
|
28
|
-
###
|
|
40
|
+
### Get Your API Token
|
|
41
|
+
|
|
42
|
+
1. Log in to FormBro
|
|
43
|
+
2. Navigate to Settings > API Tokens
|
|
44
|
+
3. Generate a new token (starts with `fb_`)
|
|
45
|
+
|
|
46
|
+
### Run the Server
|
|
47
|
+
|
|
48
|
+
#### stdio mode (for Claude Desktop)
|
|
29
49
|
|
|
30
50
|
```bash
|
|
31
51
|
FORMBRO_API_URL=https://api.formbro.com \
|
|
32
|
-
FORMBRO_API_TOKEN=
|
|
52
|
+
FORMBRO_API_TOKEN=fb_your_token_here \
|
|
33
53
|
formbro-mcp-server
|
|
34
54
|
```
|
|
35
55
|
|
|
36
|
-
|
|
56
|
+
#### HTTP mode (for remote access / Claude Code HTTP)
|
|
37
57
|
|
|
38
58
|
```bash
|
|
39
59
|
FORMBRO_API_URL=https://api.formbro.com \
|
|
@@ -42,29 +62,32 @@ PORT=3000 \
|
|
|
42
62
|
formbro-mcp-server
|
|
43
63
|
```
|
|
44
64
|
|
|
65
|
+
**Note:** In HTTP mode, the token is provided per-request via the `Authorization` header, not in the environment.
|
|
66
|
+
|
|
45
67
|
## Configuration
|
|
46
68
|
|
|
47
69
|
### Environment Variables
|
|
48
70
|
|
|
49
|
-
| Variable | Required | Description | Default |
|
|
50
|
-
|
|
51
|
-
| `FORMBRO_API_URL` | Yes | Base URL of FormBro API | - |
|
|
52
|
-
| `FORMBRO_API_TOKEN` | Yes
|
|
53
|
-
| `TRANSPORT` | No | Transport mode: `stdio` or `http` | `stdio` |
|
|
54
|
-
| `PORT` | No | HTTP
|
|
71
|
+
| Variable | Required | Mode | Description | Default |
|
|
72
|
+
|----------|----------|------|-------------|---------|
|
|
73
|
+
| `FORMBRO_API_URL` | ✅ Yes | Both | Base URL of FormBro API | - |
|
|
74
|
+
| `FORMBRO_API_TOKEN` | ✅ Yes | stdio only | API token for authentication | - |
|
|
75
|
+
| `TRANSPORT` | No | Both | Transport mode: `stdio` or `http` | `stdio` |
|
|
76
|
+
| `PORT` or `MCP_PORT` | No | HTTP only | HTTP server port | `3000` |
|
|
55
77
|
|
|
56
|
-
|
|
78
|
+
## Connecting to Claude
|
|
57
79
|
|
|
58
|
-
|
|
59
|
-
2. Navigate to Settings > API Tokens
|
|
60
|
-
3. Generate a new token
|
|
80
|
+
### Claude Desktop Configuration
|
|
61
81
|
|
|
62
|
-
|
|
82
|
+
Claude Desktop uses **stdio transport** for local process communication.
|
|
63
83
|
|
|
64
|
-
|
|
84
|
+
#### Method 1: Using npx (Recommended)
|
|
65
85
|
|
|
66
86
|
Add to your `claude_desktop_config.json`:
|
|
67
87
|
|
|
88
|
+
**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
89
|
+
**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
|
|
90
|
+
|
|
68
91
|
```json
|
|
69
92
|
{
|
|
70
93
|
"mcpServers": {
|
|
@@ -73,77 +96,316 @@ Add to your `claude_desktop_config.json`:
|
|
|
73
96
|
"args": ["-y", "formbro-mcp-server"],
|
|
74
97
|
"env": {
|
|
75
98
|
"FORMBRO_API_URL": "https://api.formbro.com",
|
|
76
|
-
"FORMBRO_API_TOKEN": "
|
|
99
|
+
"FORMBRO_API_TOKEN": "fb_your_token_here"
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
#### Method 2: Using global installation
|
|
107
|
+
|
|
108
|
+
```json
|
|
109
|
+
{
|
|
110
|
+
"mcpServers": {
|
|
111
|
+
"formbro": {
|
|
112
|
+
"command": "formbro-mcp-server",
|
|
113
|
+
"env": {
|
|
114
|
+
"FORMBRO_API_URL": "https://api.formbro.com",
|
|
115
|
+
"FORMBRO_API_TOKEN": "fb_your_token_here"
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
#### Method 3: Using local Node.js
|
|
123
|
+
|
|
124
|
+
```json
|
|
125
|
+
{
|
|
126
|
+
"mcpServers": {
|
|
127
|
+
"formbro": {
|
|
128
|
+
"command": "node",
|
|
129
|
+
"args": ["/path/to/formbro-mcp-server/dist/index.js"],
|
|
130
|
+
"env": {
|
|
131
|
+
"FORMBRO_API_URL": "https://api.formbro.com",
|
|
132
|
+
"FORMBRO_API_TOKEN": "fb_your_token_here"
|
|
77
133
|
}
|
|
78
134
|
}
|
|
79
135
|
}
|
|
80
136
|
}
|
|
81
137
|
```
|
|
82
138
|
|
|
83
|
-
|
|
139
|
+
**Restart Claude Desktop** after updating the configuration.
|
|
140
|
+
|
|
141
|
+
### Claude Code Configuration
|
|
142
|
+
|
|
143
|
+
Claude Code supports both **stdio** and **HTTP** transports.
|
|
144
|
+
|
|
145
|
+
#### Method 1: HTTP Transport (Recommended for Claude Code)
|
|
146
|
+
|
|
147
|
+
**Step 1**: Start the HTTP server
|
|
84
148
|
|
|
85
149
|
```bash
|
|
86
|
-
#
|
|
150
|
+
# In a terminal, run:
|
|
87
151
|
FORMBRO_API_URL=https://api.formbro.com \
|
|
88
152
|
TRANSPORT=http \
|
|
153
|
+
PORT=3000 \
|
|
89
154
|
formbro-mcp-server
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
Or create an `.env` file:
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
# .env
|
|
161
|
+
FORMBRO_API_URL=https://api.formbro.com
|
|
162
|
+
TRANSPORT=http
|
|
163
|
+
MCP_PORT=3000
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
Then run:
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
formbro-mcp-server
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Step 2**: Add to Claude Code with your token
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
# Option A: Using Bearer token format
|
|
176
|
+
claude mcp add --transport http formbro http://localhost:3000/mcp \
|
|
177
|
+
--header "Authorization: Bearer fb_your_token_here"
|
|
178
|
+
|
|
179
|
+
# Option B: Direct token format (also supported)
|
|
180
|
+
claude mcp add --transport http formbro http://localhost:3000/mcp \
|
|
181
|
+
--header "Authorization: fb_your_token_here"
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
**Verify connection:**
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
claude mcp list
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
#### Method 2: stdio Transport
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
claude mcp add --transport stdio formbro -- \
|
|
194
|
+
env FORMBRO_API_URL=https://api.formbro.com \
|
|
195
|
+
FORMBRO_API_TOKEN=fb_your_token_here \
|
|
196
|
+
npx -y formbro-mcp-server
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
#### Method 3: stdio with global installation
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
claude mcp add --transport stdio formbro -- \
|
|
203
|
+
env FORMBRO_API_URL=https://api.formbro.com \
|
|
204
|
+
FORMBRO_API_TOKEN=fb_your_token_here \
|
|
205
|
+
formbro-mcp-server
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
### Managing MCP Servers in Claude Code
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
# List all MCP servers
|
|
212
|
+
claude mcp list
|
|
213
|
+
|
|
214
|
+
# Remove a server
|
|
215
|
+
claude mcp remove formbro
|
|
90
216
|
|
|
91
|
-
#
|
|
217
|
+
# Update server configuration
|
|
218
|
+
claude mcp remove formbro
|
|
92
219
|
claude mcp add --transport http formbro http://localhost:3000/mcp \
|
|
93
|
-
--header "Authorization: Bearer
|
|
220
|
+
--header "Authorization: Bearer fb_new_token"
|
|
94
221
|
```
|
|
95
222
|
|
|
96
223
|
## Available Tools
|
|
97
224
|
|
|
98
|
-
### `formbro_find` (Recommended)
|
|
225
|
+
### `formbro_find` ⭐ (Recommended)
|
|
99
226
|
|
|
100
|
-
Smart search across all entity types with name matching
|
|
227
|
+
**Smart search across all entity types with intelligent name matching.**
|
|
228
|
+
|
|
229
|
+
**Why use this first?**
|
|
230
|
+
- Combines search and detail fetching in one call
|
|
231
|
+
- Handles "First Last" and "Last First" name order automatically
|
|
232
|
+
- Returns compact JSON optimized for AI processing
|
|
233
|
+
- Can include related applications in the same response
|
|
234
|
+
|
|
235
|
+
**Examples:**
|
|
101
236
|
|
|
102
237
|
```typescript
|
|
103
|
-
// Find
|
|
104
|
-
formbro_find({
|
|
238
|
+
// Find applicant by name
|
|
239
|
+
formbro_find({ name: "Zhang Wei" })
|
|
240
|
+
|
|
241
|
+
// Find with applications included
|
|
242
|
+
formbro_find({ name: "John Smith", include: ["applications"] })
|
|
243
|
+
|
|
244
|
+
// Filter by program
|
|
245
|
+
formbro_find({ name: "Wei", program: "tr", include: ["applications"] })
|
|
105
246
|
|
|
106
|
-
//
|
|
107
|
-
formbro_find({
|
|
247
|
+
// Limit results
|
|
248
|
+
formbro_find({ name: "Smith", limit: 10 })
|
|
108
249
|
```
|
|
109
250
|
|
|
251
|
+
**Parameters:**
|
|
252
|
+
- `name` (required): Name to search for. Supports full name in any order.
|
|
253
|
+
- `program` (optional): Filter by `"tr"`, `"pr"`, or `"lmia"`
|
|
254
|
+
- `include` (optional): Array of `["applications"]` or `["applications", "employer"]`
|
|
255
|
+
- `limit` (optional): Maximum results to return (1-20, default: 5)
|
|
256
|
+
|
|
110
257
|
### `formbro_list_applicants`
|
|
111
258
|
|
|
112
259
|
List applicants with search, program filtering, and pagination.
|
|
113
260
|
|
|
261
|
+
**Parameters:**
|
|
262
|
+
- `limit` (optional): Maximum results to return (1-100, default: 20)
|
|
263
|
+
- `offset` (optional): Number of results to skip for pagination (default: 0)
|
|
264
|
+
- `search` (optional): Search query to filter by name, email, etc.
|
|
265
|
+
- `program` (optional): Filter by program type (`"tr"`, `"pr"`, `"lmia"`)
|
|
266
|
+
- `response_format` (optional): `"markdown"` or `"json"` (default: `"markdown"`)
|
|
267
|
+
|
|
114
268
|
### `formbro_get_applicant`
|
|
115
269
|
|
|
116
270
|
Get detailed applicant information by ID.
|
|
117
271
|
|
|
272
|
+
**Parameters:**
|
|
273
|
+
- `id` (required): The applicant's unique identifier (MongoDB ObjectId)
|
|
274
|
+
- `response_format` (optional): `"markdown"` or `"json"` (default: `"markdown"`)
|
|
275
|
+
|
|
118
276
|
### `formbro_list_applications`
|
|
119
277
|
|
|
120
|
-
List applications by program type
|
|
278
|
+
List applications by program type with status filtering.
|
|
279
|
+
|
|
280
|
+
**Programs:**
|
|
281
|
+
- `tr` - Temporary Residence (Work permits, study permits, visitor visas)
|
|
282
|
+
- `pr` - Permanent Residence (Family sponsorship, Express Entry, PNP)
|
|
283
|
+
- `lmia` - Labour Market Impact Assessment (Employer applications)
|
|
284
|
+
|
|
285
|
+
**Parameters:**
|
|
286
|
+
- `limit` (optional): Maximum results to return (1-100, default: 20)
|
|
287
|
+
- `offset` (optional): Number of results to skip for pagination (default: 0)
|
|
288
|
+
- `search` (optional): Search query to filter by case name
|
|
289
|
+
- `program` (optional): Filter by program type (`"tr"`, `"pr"`, `"lmia"`)
|
|
290
|
+
- `status` (optional): Filter by status (`"draft"`, `"in_progress"`, `"submitted"`, `"approved"`, `"refused"`)
|
|
291
|
+
- `response_format` (optional): `"markdown"` or `"json"` (default: `"markdown"`)
|
|
121
292
|
|
|
122
293
|
### `formbro_get_application`
|
|
123
294
|
|
|
124
295
|
Get detailed application information by ID.
|
|
125
296
|
|
|
297
|
+
**Parameters:**
|
|
298
|
+
- `id` (required): The application's unique identifier (MongoDB ObjectId)
|
|
299
|
+
- `response_format` (optional): `"markdown"` or `"json"` (default: `"markdown"`)
|
|
300
|
+
|
|
126
301
|
### `formbro_list_employers`
|
|
127
302
|
|
|
128
303
|
List employers with search and pagination.
|
|
129
304
|
|
|
305
|
+
**Parameters:**
|
|
306
|
+
- `limit` (optional): Maximum results to return (1-100, default: 20)
|
|
307
|
+
- `offset` (optional): Number of results to skip for pagination (default: 0)
|
|
308
|
+
- `search` (optional): Search query to filter by company name, business number, etc.
|
|
309
|
+
- `response_format` (optional): `"markdown"` or `"json"` (default: `"markdown"`)
|
|
310
|
+
|
|
130
311
|
### `formbro_get_employer`
|
|
131
312
|
|
|
132
313
|
Get detailed employer information by ID.
|
|
133
314
|
|
|
315
|
+
**Parameters:**
|
|
316
|
+
- `id` (required): The employer's unique identifier (MongoDB ObjectId)
|
|
317
|
+
- `response_format` (optional): `"markdown"` or `"json"` (default: `"markdown"`)
|
|
318
|
+
|
|
134
319
|
## API Response Formats
|
|
135
320
|
|
|
136
321
|
All tools support two response formats:
|
|
137
322
|
|
|
138
|
-
-
|
|
139
|
-
-
|
|
323
|
+
- **`markdown`** (default) - Human-readable formatted output for Claude
|
|
324
|
+
- **`json`** - Machine-readable structured data
|
|
325
|
+
|
|
326
|
+
## HTTP API Endpoints
|
|
327
|
+
|
|
328
|
+
When running in HTTP mode, the server exposes:
|
|
329
|
+
|
|
330
|
+
### `GET /health`
|
|
331
|
+
|
|
332
|
+
Health check endpoint returning server status.
|
|
333
|
+
|
|
334
|
+
**Response:**
|
|
335
|
+
```json
|
|
336
|
+
{
|
|
337
|
+
"status": "ok",
|
|
338
|
+
"server": "formbro-mcp-server",
|
|
339
|
+
"version": "1.0.0",
|
|
340
|
+
"apiUrl": "https://api.formbro.com",
|
|
341
|
+
"apiConfigured": true
|
|
342
|
+
}
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
### `POST /mcp`
|
|
346
|
+
|
|
347
|
+
Main MCP endpoint using Streamable HTTP transport.
|
|
348
|
+
|
|
349
|
+
**Headers:**
|
|
350
|
+
```
|
|
351
|
+
Authorization: Bearer fb_your_token_here
|
|
352
|
+
Content-Type: application/json
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
**Request Body:** MCP protocol JSON-RPC message
|
|
356
|
+
|
|
357
|
+
### `GET /mcp`
|
|
358
|
+
|
|
359
|
+
Returns server information and available tools.
|
|
360
|
+
|
|
361
|
+
## Troubleshooting
|
|
362
|
+
|
|
363
|
+
### Claude Desktop Issues
|
|
364
|
+
|
|
365
|
+
**Server not connecting:**
|
|
366
|
+
1. Check the config file location is correct for your OS
|
|
367
|
+
2. Verify JSON syntax (use a JSON validator)
|
|
368
|
+
3. Ensure the token starts with `fb_`
|
|
369
|
+
4. Restart Claude Desktop after config changes
|
|
370
|
+
5. Check Claude Desktop logs: `~/Library/Logs/Claude/` (macOS)
|
|
371
|
+
|
|
372
|
+
**Token errors:**
|
|
373
|
+
1. Generate a new token from FormBro Settings
|
|
374
|
+
2. Ensure no extra spaces in the token
|
|
375
|
+
3. Token should start with `fb_`
|
|
376
|
+
|
|
377
|
+
### Claude Code Issues
|
|
378
|
+
|
|
379
|
+
**HTTP connection failed:**
|
|
380
|
+
1. Ensure the server is running (`curl http://localhost:3000/health`)
|
|
381
|
+
2. Check the port is not in use by another service
|
|
382
|
+
3. Verify the Authorization header format
|
|
383
|
+
4. Test with `curl`:
|
|
384
|
+
```bash
|
|
385
|
+
curl -X POST http://localhost:3000/mcp \
|
|
386
|
+
-H "Authorization: Bearer fb_your_token" \
|
|
387
|
+
-H "Content-Type: application/json" \
|
|
388
|
+
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}'
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
**stdio connection failed:**
|
|
392
|
+
1. Check if `npx` or `formbro-mcp-server` is in PATH
|
|
393
|
+
2. Verify environment variables are set correctly
|
|
394
|
+
3. Test manually:
|
|
395
|
+
```bash
|
|
396
|
+
FORMBRO_API_URL=https://api.formbro.com \
|
|
397
|
+
FORMBRO_API_TOKEN=fb_your_token \
|
|
398
|
+
formbro-mcp-server
|
|
399
|
+
```
|
|
140
400
|
|
|
141
401
|
## Development
|
|
142
402
|
|
|
403
|
+
### Setup
|
|
404
|
+
|
|
143
405
|
```bash
|
|
144
406
|
# Clone the repository
|
|
145
|
-
git clone https://github.com/
|
|
146
|
-
cd formbro
|
|
407
|
+
git clone https://github.com/jackyzhang69/formbro.git
|
|
408
|
+
cd formbro/mcp-server
|
|
147
409
|
|
|
148
410
|
# Install dependencies
|
|
149
411
|
pnpm install
|
|
@@ -155,6 +417,57 @@ pnpm build
|
|
|
155
417
|
pnpm dev
|
|
156
418
|
```
|
|
157
419
|
|
|
420
|
+
### Testing
|
|
421
|
+
|
|
422
|
+
```bash
|
|
423
|
+
# Test stdio mode
|
|
424
|
+
FORMBRO_API_URL=https://api.formbro.com \
|
|
425
|
+
FORMBRO_API_TOKEN=fb_your_token \
|
|
426
|
+
pnpm start
|
|
427
|
+
|
|
428
|
+
# Test HTTP mode
|
|
429
|
+
FORMBRO_API_URL=https://api.formbro.com \
|
|
430
|
+
TRANSPORT=http \
|
|
431
|
+
PORT=3000 \
|
|
432
|
+
pnpm start
|
|
433
|
+
|
|
434
|
+
# Test health endpoint
|
|
435
|
+
curl http://localhost:3000/health
|
|
436
|
+
|
|
437
|
+
# Test MCP endpoint
|
|
438
|
+
curl -X POST http://localhost:3000/mcp \
|
|
439
|
+
-H "Authorization: Bearer fb_your_token" \
|
|
440
|
+
-H "Content-Type: application/json" \
|
|
441
|
+
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}'
|
|
442
|
+
```
|
|
443
|
+
|
|
444
|
+
### Project Structure
|
|
445
|
+
|
|
446
|
+
```
|
|
447
|
+
mcp-server/
|
|
448
|
+
├── src/
|
|
449
|
+
│ ├── index.ts # Main entry point, transport setup
|
|
450
|
+
│ ├── services/
|
|
451
|
+
│ │ └── api-client.ts # FormBro API client
|
|
452
|
+
│ └── tools/
|
|
453
|
+
│ ├── find.ts # Smart find tool
|
|
454
|
+
│ ├── applicants.ts # Applicant tools
|
|
455
|
+
│ ├── applications.ts # Application tools
|
|
456
|
+
│ └── employers.ts # Employer tools
|
|
457
|
+
├── dist/ # Compiled JavaScript (generated)
|
|
458
|
+
├── package.json
|
|
459
|
+
├── tsconfig.json
|
|
460
|
+
└── README.md
|
|
461
|
+
```
|
|
462
|
+
|
|
463
|
+
## Security Notes
|
|
464
|
+
|
|
465
|
+
- **Token Security**: Never commit API tokens to version control
|
|
466
|
+
- **HTTP Mode**: Uses per-request authentication via `Authorization` header
|
|
467
|
+
- **stdio Mode**: Token is passed via environment variables (process-scoped)
|
|
468
|
+
- **Production**: Use HTTPS for HTTP transport in production environments
|
|
469
|
+
- **Token Format**: All FormBro API tokens start with `fb_`
|
|
470
|
+
|
|
158
471
|
## License
|
|
159
472
|
|
|
160
473
|
MIT
|
|
@@ -164,3 +477,10 @@ MIT
|
|
|
164
477
|
- [FormBro](https://formbro.com)
|
|
165
478
|
- [Model Context Protocol](https://modelcontextprotocol.io)
|
|
166
479
|
- [npm Package](https://www.npmjs.com/package/formbro-mcp-server)
|
|
480
|
+
- [GitHub Repository](https://github.com/jackyzhang69/formbro/tree/main/mcp-server)
|
|
481
|
+
|
|
482
|
+
## Support
|
|
483
|
+
|
|
484
|
+
For issues and questions:
|
|
485
|
+
- GitHub Issues: https://github.com/jackyzhang69/formbro/issues
|
|
486
|
+
- FormBro Support: support@formbro.com
|
package/dist/tools/find.js
CHANGED
|
@@ -96,7 +96,7 @@ WHEN TO USE OTHER TOOLS:
|
|
|
96
96
|
if (args.include && args.include.length > 0) {
|
|
97
97
|
params.include = args.include.join(",");
|
|
98
98
|
}
|
|
99
|
-
const response = await makeApiRequest("/mcp/find", "GET", undefined, params);
|
|
99
|
+
const response = await makeApiRequest("/api/mcp/find", "GET", undefined, params);
|
|
100
100
|
return {
|
|
101
101
|
content: [
|
|
102
102
|
{
|
package/dist/tools/find.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/tools/find.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/tools/find.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED