@omkar273/mcp-temp 0.0.45 → 0.0.47
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 +45 -33
- package/bin/mcp-server.js +5 -5
- package/bin/mcp-server.js.map +4 -4
- package/esm/lib/config.d.ts +2 -2
- package/esm/lib/config.js +2 -2
- package/esm/mcp-server/mcp-server.js +1 -1
- package/esm/mcp-server/server.js +1 -1
- package/esm/tsconfig.tsbuildinfo +1 -1
- package/examples/README.md +7 -0
- package/examples/claude-desktop-config.example.json +16 -0
- package/examples/cursor-mcp-config.example.json +16 -0
- package/examples/dynamic-mode.example.json +18 -0
- package/manifest.json +1 -1
- package/package.json +1 -1
- package/src/lib/config.ts +2 -2
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +1 -1
package/README.md
CHANGED
|
@@ -1,14 +1,25 @@
|
|
|
1
|
-
#
|
|
1
|
+
# flexprice MCP Server
|
|
2
2
|
|
|
3
|
-
A Model Context Protocol (MCP) server that exposes the
|
|
3
|
+
A Model Context Protocol (MCP) server that exposes the flexprice API as tools for AI assistants (e.g. Claude, Cursor, VS Code, Windsurf). Use it to manage customers, plans, prices, subscriptions, invoices, payments, events, and more from your IDE or CLI.
|
|
4
|
+
|
|
5
|
+
## Table of contents
|
|
6
|
+
|
|
7
|
+
- [Prerequisites](#prerequisites)
|
|
8
|
+
- [How to use the flexprice MCP server](#how-to-use-the-flexprice-mcp-server)
|
|
9
|
+
- [Add to your MCP client](#add-to-your-mcp-client)
|
|
10
|
+
- [Tools](#tools)
|
|
11
|
+
- [Progressive discovery (dynamic mode)](#progressive-discovery-dynamic-mode)
|
|
12
|
+
- [Scopes](#scopes)
|
|
13
|
+
- [Troubleshooting](#troubleshooting)
|
|
14
|
+
- [Generating the MCP server](#generating-the-mcp-server)
|
|
4
15
|
|
|
5
16
|
## Prerequisites
|
|
6
17
|
|
|
7
18
|
- **Node.js** v20 or higher
|
|
8
19
|
- **npm** or **yarn**
|
|
9
|
-
- **
|
|
20
|
+
- **flexprice API key** from your [flexprice account](https://app.flexprice.io)
|
|
10
21
|
|
|
11
|
-
## How to use the
|
|
22
|
+
## How to use the flexprice MCP server
|
|
12
23
|
|
|
13
24
|
You can run the server in two ways: **npm package** (one command) or **local repo** (clone and run). Pick one, then [add it to your MCP client](#add-to-your-mcp-client).
|
|
14
25
|
|
|
@@ -16,13 +27,13 @@ You can run the server in two ways: **npm package** (one command) or **local rep
|
|
|
16
27
|
|
|
17
28
|
### Option 1: npm package
|
|
18
29
|
|
|
19
|
-
Install: `npm i @
|
|
30
|
+
Install: `npm i @flexprice/mcp-server`. Or run with one command (no clone or build):
|
|
20
31
|
|
|
21
32
|
```bash
|
|
22
|
-
npx @
|
|
33
|
+
npx @flexprice/mcp-server start --server-url https://us.api.flexprice.io/v1 --api-key-auth YOUR_API_KEY
|
|
23
34
|
```
|
|
24
35
|
|
|
25
|
-
Replace `YOUR_API_KEY` with your
|
|
36
|
+
Replace `YOUR_API_KEY` with your flexprice API key. Next: [Add to your MCP client](#add-to-your-mcp-client).
|
|
26
37
|
|
|
27
38
|
---
|
|
28
39
|
|
|
@@ -33,7 +44,7 @@ Use this if you want to change code or run without npm:
|
|
|
33
44
|
1. Clone the repository and go to the MCP server directory (e.g. `api/mcp` or the repo that contains it).
|
|
34
45
|
2. Install dependencies: `npm install`
|
|
35
46
|
3. Create a `.env` file (from `.env.example` if present) with:
|
|
36
|
-
- `BASE_URL=https://api.
|
|
47
|
+
- `BASE_URL=https://us.api.flexprice.io/v1` (must include `/v1`, no trailing slash)
|
|
37
48
|
- `API_KEY_APIKEYAUTH=your_api_key_here`
|
|
38
49
|
4. Build: `npm run build`
|
|
39
50
|
5. Start: `npm start`
|
|
@@ -42,14 +53,16 @@ Use this if you want to change code or run without npm:
|
|
|
42
53
|
|
|
43
54
|
```bash
|
|
44
55
|
docker build -t flexprice-mcp .
|
|
45
|
-
docker run -i -e API_KEY_APIKEYAUTH=your_api_key_here -e BASE_URL=https://api.
|
|
56
|
+
docker run -i -e API_KEY_APIKEYAUTH=your_api_key_here -e BASE_URL=https://us.api.flexprice.io/v1 flexprice-mcp node bin/mcp-server.js start
|
|
46
57
|
```
|
|
47
58
|
|
|
48
59
|
Next: [Add to your MCP client](#add-to-your-mcp-client) and use the **Node from repo** or **Docker** config below.
|
|
49
60
|
|
|
50
61
|
## Add to your MCP client
|
|
51
62
|
|
|
52
|
-
Add the
|
|
63
|
+
Add the flexprice MCP server in your editor. Replace `YOUR_API_KEY` with your flexprice API key in all examples. Example config snippets are in [examples/](examples/).
|
|
64
|
+
|
|
65
|
+
**After connecting:** In Cursor, open the MCP panel and confirm the server is connected. You can list tools and try an operation (e.g. list customers) from your assistant. In Claude, use `/mcp` to see connected servers and available tools.
|
|
53
66
|
|
|
54
67
|
### Config file locations
|
|
55
68
|
|
|
@@ -74,10 +87,10 @@ Add the FlexPrice MCP server in your editor. Replace `YOUR_API_KEY` with your Fl
|
|
|
74
87
|
"command": "npx",
|
|
75
88
|
"args": [
|
|
76
89
|
"-y",
|
|
77
|
-
"@
|
|
90
|
+
"@flexprice/mcp-server",
|
|
78
91
|
"start",
|
|
79
92
|
"--server-url",
|
|
80
|
-
"https://api.
|
|
93
|
+
"https://us.api.flexprice.io/v1",
|
|
81
94
|
"--api-key-auth",
|
|
82
95
|
"YOUR_API_KEY"
|
|
83
96
|
]
|
|
@@ -101,10 +114,10 @@ Add the FlexPrice MCP server in your editor. Replace `YOUR_API_KEY` with your Fl
|
|
|
101
114
|
"command": "npx",
|
|
102
115
|
"args": [
|
|
103
116
|
"-y",
|
|
104
|
-
"@
|
|
117
|
+
"@flexprice/mcp-server",
|
|
105
118
|
"start",
|
|
106
119
|
"--server-url",
|
|
107
|
-
"https://api.
|
|
120
|
+
"https://us.api.flexprice.io/v1",
|
|
108
121
|
"--api-key-auth",
|
|
109
122
|
"YOUR_API_KEY"
|
|
110
123
|
]
|
|
@@ -118,7 +131,7 @@ Add the FlexPrice MCP server in your editor. Replace `YOUR_API_KEY` with your Fl
|
|
|
118
131
|
### Claude Code
|
|
119
132
|
|
|
120
133
|
```bash
|
|
121
|
-
claude mcp add
|
|
134
|
+
claude mcp add flexprice -- npx -y @flexprice/mcp-server start --server-url https://us.api.flexprice.io/v1 --api-key-auth YOUR_API_KEY
|
|
122
135
|
```
|
|
123
136
|
|
|
124
137
|
Then run `claude` and use `/mcp` to confirm the server is connected.
|
|
@@ -136,10 +149,10 @@ Add to your Claude Desktop config file (path in the table above):
|
|
|
136
149
|
"command": "npx",
|
|
137
150
|
"args": [
|
|
138
151
|
"-y",
|
|
139
|
-
"@
|
|
152
|
+
"@flexprice/mcp-server",
|
|
140
153
|
"start",
|
|
141
154
|
"--server-url",
|
|
142
|
-
"https://api.
|
|
155
|
+
"https://us.api.flexprice.io/v1",
|
|
143
156
|
"--api-key-auth",
|
|
144
157
|
"YOUR_API_KEY"
|
|
145
158
|
]
|
|
@@ -164,7 +177,7 @@ Quit and reopen Claude Desktop.
|
|
|
164
177
|
"args": ["/path/to/mcp-server/bin/mcp-server.js", "start"],
|
|
165
178
|
"env": {
|
|
166
179
|
"API_KEY_APIKEYAUTH": "your_api_key_here",
|
|
167
|
-
"BASE_URL": "https://api.
|
|
180
|
+
"BASE_URL": "https://us.api.flexprice.io/v1"
|
|
168
181
|
}
|
|
169
182
|
}
|
|
170
183
|
}
|
|
@@ -181,7 +194,7 @@ Quit and reopen Claude Desktop.
|
|
|
181
194
|
"args": ["run", "-i", "--rm", "-e", "API_KEY_APIKEYAUTH", "-e", "BASE_URL", "flexprice-mcp"],
|
|
182
195
|
"env": {
|
|
183
196
|
"API_KEY_APIKEYAUTH": "your_api_key_here",
|
|
184
|
-
"BASE_URL": "https://api.
|
|
197
|
+
"BASE_URL": "https://us.api.flexprice.io/v1"
|
|
185
198
|
}
|
|
186
199
|
}
|
|
187
200
|
}
|
|
@@ -192,7 +205,7 @@ After editing, save and **restart Cursor or quit and reopen Claude Desktop** so
|
|
|
192
205
|
|
|
193
206
|
## Tools
|
|
194
207
|
|
|
195
|
-
The server exposes
|
|
208
|
+
The server exposes flexprice API operations as MCP tools. **Only operations with certain OpenAPI tags are included** (e.g. Customers, Invoices, Events). The allowed tags are configured in the repo; the filtered spec is `docs/swagger/swagger-3-0-mcp.json`. Tool names and parameters follow the OpenAPI spec. For the full list, see your MCP client’s tool list after connecting, or the OpenAPI spec (e.g. `docs/swagger/swagger-3-0.json`) in the repo.
|
|
196
209
|
|
|
197
210
|
## Progressive discovery (dynamic mode)
|
|
198
211
|
|
|
@@ -205,7 +218,7 @@ Servers with many tools can bloat context and token usage. **Dynamic mode** expo
|
|
|
205
218
|
To enable dynamic mode, add `--mode dynamic` when starting the server:
|
|
206
219
|
|
|
207
220
|
```json
|
|
208
|
-
"args": ["-y", "@
|
|
221
|
+
"args": ["-y", "@flexprice/mcp-server", "start", "--server-url", "https://us.api.flexprice.io/v1", "--api-key-auth", "YOUR_API_KEY", "--mode", "dynamic"]
|
|
209
222
|
```
|
|
210
223
|
|
|
211
224
|
This reduces tokens per request and can improve tool choice when there are many operations.
|
|
@@ -215,7 +228,7 @@ This reduces tokens per request and can improve tool choice when there are many
|
|
|
215
228
|
If the server is configured with scopes (e.g. `read`, `write`), you can limit tools by scope:
|
|
216
229
|
|
|
217
230
|
```bash
|
|
218
|
-
npx @
|
|
231
|
+
npx @flexprice/mcp-server start --server-url https://us.api.flexprice.io/v1 --api-key-auth YOUR_API_KEY --scope read
|
|
219
232
|
```
|
|
220
233
|
|
|
221
234
|
Use `read` for read-only access when the server defines a `read` scope.
|
|
@@ -225,14 +238,14 @@ Use `read` for read-only access when the server defines a `read` scope.
|
|
|
225
238
|
### "Invalid URL" or request errors
|
|
226
239
|
|
|
227
240
|
- The server builds request URLs from `BASE_URL` + path. If `BASE_URL` is unset or wrong, requests fail.
|
|
228
|
-
- **Fix:** Set `BASE_URL=https://api.
|
|
241
|
+
- **Fix:** Set `BASE_URL=https://us.api.flexprice.io/v1` (no trailing slash after `v1`). For npx, pass `--server-url https://us.api.flexprice.io/v1`.
|
|
229
242
|
- If you get **404** on tool calls, ensure the base URL includes `/v1`.
|
|
230
243
|
|
|
231
244
|
### API connection issues
|
|
232
245
|
|
|
233
|
-
1. **Credentials:** Check that your API key and base URL are correct. Test the key with the
|
|
234
|
-
2. **Network:** Confirm the host can reach the
|
|
235
|
-
3. **Rate limiting:** If you see rate-limit errors, reduce request frequency or contact
|
|
246
|
+
1. **Credentials:** Check that your API key and base URL are correct. Test the key with the flexprice API (e.g. `curl -H "x-api-key: your_key" https://us.api.flexprice.io/v1/customers`).
|
|
247
|
+
2. **Network:** Confirm the host can reach the flexprice API (firewall, proxy).
|
|
248
|
+
3. **Rate limiting:** If you see rate-limit errors, reduce request frequency or contact flexprice support.
|
|
236
249
|
|
|
237
250
|
### Server issues
|
|
238
251
|
|
|
@@ -248,12 +261,11 @@ Use `read` for read-only access when the server defines a `read` scope.
|
|
|
248
261
|
|
|
249
262
|
## Generating the MCP server
|
|
250
263
|
|
|
251
|
-
The server is generated
|
|
264
|
+
The server is generated from a tag-filtered OpenAPI spec (`docs/swagger/swagger-3-0-mcp.json`), not the full spec. Only operations whose tags are listed in the allowed-tags configuration are included. To regenerate after API or overlay changes:
|
|
252
265
|
|
|
253
|
-
1.
|
|
254
|
-
2.
|
|
255
|
-
3.
|
|
256
|
-
4.
|
|
257
|
-
5. Build and run: `npm run build` and `npm start` from the MCP output directory.
|
|
266
|
+
1. (Optional) Edit the allowed-tags configuration to add or remove tags; then run `make filter-mcp-spec` to rebuild the filtered spec.
|
|
267
|
+
2. From the repo root, run `make sdk-all` (this runs `filter-mcp-spec` automatically, then generates the MCP server).
|
|
268
|
+
3. Run `make merge-custom` so custom files (including this README) are merged into the output.
|
|
269
|
+
4. Build and run: `npm run build` and `npm start` from the MCP output directory.
|
|
258
270
|
|
|
259
|
-
See the main repo README and
|
|
271
|
+
See the main repo README and AGENTS.md for SDK/MCP generation and publishing.
|
package/bin/mcp-server.js
CHANGED
|
@@ -50418,9 +50418,9 @@ var init_config = __esm(() => {
|
|
|
50418
50418
|
SDK_METADATA = {
|
|
50419
50419
|
language: "typescript",
|
|
50420
50420
|
openapiDocVersion: "1.0",
|
|
50421
|
-
sdkVersion: "0.0.
|
|
50421
|
+
sdkVersion: "0.0.47",
|
|
50422
50422
|
genVersion: "2.845.1",
|
|
50423
|
-
userAgent: "speakeasy-sdk/mcp-typescript 0.0.
|
|
50423
|
+
userAgent: "speakeasy-sdk/mcp-typescript 0.0.47 2.845.1 1.0 @omkar273/mcp-temp"
|
|
50424
50424
|
};
|
|
50425
50425
|
});
|
|
50426
50426
|
|
|
@@ -57802,7 +57802,7 @@ Use when cancelling an invoice (e.g. order cancelled or duplicate). Only unpaid
|
|
|
57802
57802
|
function createMCPServer(deps) {
|
|
57803
57803
|
const server = new McpServer({
|
|
57804
57804
|
name: "Flexprice",
|
|
57805
|
-
version: "0.0.
|
|
57805
|
+
version: "0.0.47"
|
|
57806
57806
|
});
|
|
57807
57807
|
const getClient = deps.getSDK || (() => new FlexpriceCore({
|
|
57808
57808
|
security: deps.security,
|
|
@@ -61585,7 +61585,7 @@ var routes = buildRouteMap({
|
|
|
61585
61585
|
var app = buildApplication(routes, {
|
|
61586
61586
|
name: "mcp",
|
|
61587
61587
|
versionInfo: {
|
|
61588
|
-
currentVersion: "0.0.
|
|
61588
|
+
currentVersion: "0.0.47"
|
|
61589
61589
|
}
|
|
61590
61590
|
});
|
|
61591
61591
|
run(app, process4.argv.slice(2), buildContext(process4));
|
|
@@ -61593,5 +61593,5 @@ export {
|
|
|
61593
61593
|
app
|
|
61594
61594
|
};
|
|
61595
61595
|
|
|
61596
|
-
//# debugId=
|
|
61596
|
+
//# debugId=CBBDDED48FBE1BCD64756E2164756E21
|
|
61597
61597
|
//# sourceMappingURL=mcp-server.js.map
|