portkey-admin-mcp 0.10.0 → 0.10.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 +50 -27
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -10,19 +10,23 @@
|
|
|
10
10
|
|
|
11
11
|
<p align="center">
|
|
12
12
|
<a href="https://www.npmjs.com/package/portkey-admin-mcp"><img src="https://img.shields.io/npm/v/portkey-admin-mcp.svg" alt="npm version"></a>
|
|
13
|
-
<a href="https://www.npmjs.com/package/portkey-admin-mcp"><img src="https://img.shields.io/npm/dm/portkey-admin-mcp.svg" alt="npm downloads"></a>
|
|
14
13
|
<a href="https://nodejs.org/"><img src="https://img.shields.io/badge/node-%3E%3D24-brightgreen.svg" alt="Node.js"></a>
|
|
15
14
|
<a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
|
|
16
|
-
|
|
15
|
+
</p>
|
|
16
|
+
|
|
17
|
+
<p align="center">
|
|
17
18
|
<a href="https://github.com/CodesWhat/portkey-admin-mcp/actions/workflows/ci.yml"><img src="https://github.com/CodesWhat/portkey-admin-mcp/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
18
19
|
<a href="https://securityscorecards.dev/viewer/?uri=github.com/CodesWhat/portkey-admin-mcp"><img src="https://img.shields.io/ossf-scorecard/github.com/CodesWhat/portkey-admin-mcp?label=openssf+scorecard&style=flat" alt="OpenSSF Scorecard"></a>
|
|
19
20
|
<a href="https://www.bestpractices.dev/projects/14031"><img src="https://www.bestpractices.dev/projects/14031/badge" alt="OpenSSF Best Practices"></a>
|
|
20
|
-
<a href="https://
|
|
21
|
-
<a href="https://
|
|
21
|
+
<a href="https://qlty.sh/gh/CodesWhat/projects/portkey-admin-mcp"><img src="https://qlty.sh/gh/CodesWhat/projects/portkey-admin-mcp/maintainability.svg" alt="Maintainability"></a>
|
|
22
|
+
<a href="https://qlty.sh/gh/CodesWhat/projects/portkey-admin-mcp"><img src="https://qlty.sh/gh/CodesWhat/projects/portkey-admin-mcp/coverage.svg" alt="Code Coverage"></a>
|
|
22
23
|
</p>
|
|
23
24
|
|
|
24
25
|
<p align="center">
|
|
25
|
-
<a href="https://
|
|
26
|
+
<a href="https://www.npmjs.com/package/portkey-admin-mcp"><img src="https://img.shields.io/npm/dm/portkey-admin-mcp.svg" alt="npm downloads"></a>
|
|
27
|
+
<a href="https://github.com/punkpeye/awesome-mcp-servers"><img src="https://awesome.re/mentioned-badge.svg" alt="Mentioned in Awesome MCP Servers"></a>
|
|
28
|
+
<a href="https://registry.modelcontextprotocol.io/v0/servers?search=io.github.CodesWhat/portkey-admin-mcp"><img src="https://img.shields.io/badge/MCP-Registry-blue" alt="MCP Registry"></a>
|
|
29
|
+
<a href="https://github.com/sponsors/CodesWhat"><img src="https://img.shields.io/badge/Sponsor-ea4aaa?logo=githubsponsors&logoColor=white" alt="Sponsor"></a>
|
|
26
30
|
</p>
|
|
27
31
|
|
|
28
32
|
<hr>
|
|
@@ -30,24 +34,25 @@
|
|
|
30
34
|
> [!IMPORTANT]
|
|
31
35
|
> **Active compatibility development.** Palo Alto Networks completed its Portkey acquisition on 2026‑05‑29 and now presents Portkey as the core of Prisma AIRS AI Gateway. The Portkey Admin API remains live, and its official OpenAPI and product changelog continued adding control-plane surfaces through August 2026; this project has therefore resumed API-coverage work. It targets the Portkey-compatible API (`x-portkey-api-key`), not Prisma AIRS/Strata Cloud Manager directly. Prisma AIRS AI Gateway currently has a different management and authentication surface, so it is not a `PORTKEY_BASE_URL` swap. See the short [Prisma AIRS interoperability guide](./docs/PRISMA_AIRS_INTEROPERABILITY.md) for the supported side-by-side model and adapter criteria.
|
|
32
36
|
|
|
33
|
-
<h2 align="center"
|
|
34
|
-
|
|
35
|
-
- [
|
|
36
|
-
- [
|
|
37
|
-
- [
|
|
38
|
-
- [
|
|
39
|
-
- [
|
|
40
|
-
- [
|
|
41
|
-
- [
|
|
42
|
-
- [
|
|
43
|
-
- [
|
|
44
|
-
- [
|
|
45
|
-
- [
|
|
46
|
-
- [
|
|
37
|
+
<h2 align="center">Contents</h2>
|
|
38
|
+
|
|
39
|
+
- [Quick Start](#quick-start)
|
|
40
|
+
- [What You Can Do](#what-you-can-do)
|
|
41
|
+
- [API Key Scopes](#api-key-scopes)
|
|
42
|
+
- [HTTP Server (Experimental)](#http-server)
|
|
43
|
+
- [Architecture](./docs/ARCHITECTURE.md)
|
|
44
|
+
- [Prisma AIRS interoperability](./docs/PRISMA_AIRS_INTEROPERABILITY.md)
|
|
45
|
+
- [Verify a release](./docs/VERIFY_RELEASE.md)
|
|
46
|
+
- [Development](#development)
|
|
47
|
+
- [Community](#community)
|
|
48
|
+
- [Contributing](./CONTRIBUTING.md)
|
|
49
|
+
- [Governance](./GOVERNANCE.md)
|
|
50
|
+
- [Security assurance](./SECURITY-ASSURANCE.md)
|
|
51
|
+
- [Full tool list — ENDPOINTS.md](./ENDPOINTS.md)
|
|
47
52
|
|
|
48
53
|
<hr>
|
|
49
54
|
|
|
50
|
-
<h2 align="center" id="quick-start"
|
|
55
|
+
<h2 align="center" id="quick-start">Quick Start</h2>
|
|
51
56
|
|
|
52
57
|
You need a **Portkey API key** with appropriate scopes. Get one from your [Portkey dashboard](https://app.portkey.ai/) under API Keys.
|
|
53
58
|
|
|
@@ -122,7 +127,7 @@ Then use this config:
|
|
|
122
127
|
|
|
123
128
|
<hr>
|
|
124
129
|
|
|
125
|
-
<h2 align="center" id="what-you-can-do"
|
|
130
|
+
<h2 align="center" id="what-you-can-do">What You Can Do</h2>
|
|
126
131
|
|
|
127
132
|
| Category | Tools | Examples |
|
|
128
133
|
|----------|-------|---------|
|
|
@@ -151,10 +156,15 @@ Then use this config:
|
|
|
151
156
|
|
|
152
157
|
<hr>
|
|
153
158
|
|
|
154
|
-
<h2 align="center" id="api-key-scopes"
|
|
159
|
+
<h2 align="center" id="api-key-scopes">API Key Scopes</h2>
|
|
155
160
|
|
|
156
161
|
Most tools work with a **workspace-scoped service key** that has Select All permissions enabled. That covers prompts, configs, virtual/API keys, providers, guardrails, workspace integrations, MCP servers, rate/usage limits, logs, prompt completions, and workspace user management.
|
|
157
162
|
|
|
163
|
+
If a tool returns a `403` with Portkey error `AB03`, it means missing scopes — not a broken endpoint.
|
|
164
|
+
|
|
165
|
+
<details>
|
|
166
|
+
<summary><strong>Enterprise-gated tools and other scope requirements</strong></summary>
|
|
167
|
+
|
|
158
168
|
### Enterprise-gated tools (40)
|
|
159
169
|
|
|
160
170
|
The following tools require an **organisation-level scope that is only available on Portkey Enterprise plans**. They return `403 You do not have enough permissions to execute this request` on workspace plans. Their descriptions include an `Enterprise-gated. Returns 403 on non-Enterprise Portkey plans.` suffix so MCP clients know upfront.
|
|
@@ -175,11 +185,11 @@ The following tools require an **organisation-level scope that is only available
|
|
|
175
185
|
| Prompt completions (`run_prompt_completion`) | `completions.write` scope + billing metadata (`app`, `env`) |
|
|
176
186
|
| Org-level service API key creation via `create_api_key` | `organisation_service_api_keys.create` (Enterprise) |
|
|
177
187
|
|
|
178
|
-
|
|
188
|
+
</details>
|
|
179
189
|
|
|
180
190
|
<hr>
|
|
181
191
|
|
|
182
|
-
<h2 align="center" id="http-server"
|
|
192
|
+
<h2 align="center" id="http-server">HTTP Server (Experimental)</h2>
|
|
183
193
|
|
|
184
194
|
> **Status**: The HTTP transport works locally and is covered by the integration test suite, but it is a proof of concept — there is **no hosted version** of this server, and hosted deployment is not currently a goal. Use stdio (npx) as the supported transport.
|
|
185
195
|
|
|
@@ -203,7 +213,8 @@ PORTKEY_API_KEY=your_key MCP_AUTH_MODE=bearer MCP_AUTH_TOKEN=your_secret \
|
|
|
203
213
|
|
|
204
214
|
For local-only HTTP use, leave `MCP_HOST` at its default `127.0.0.1`. Set `MCP_HOST=0.0.0.0` only when you intentionally need to accept connections from outside the local machine, such as Docker or a reverse proxy on another interface.
|
|
205
215
|
|
|
206
|
-
|
|
216
|
+
<details>
|
|
217
|
+
<summary><strong>Full environment variable reference</strong></summary>
|
|
207
218
|
|
|
208
219
|
| Variable | Default | Description |
|
|
209
220
|
|----------|---------|-------------|
|
|
@@ -243,6 +254,8 @@ Production containers must choose their rate-limit topology explicitly: set
|
|
|
243
254
|
`RATE_LIMIT_STORE=redis` for multi-instance deployments, or set
|
|
244
255
|
`RATE_LIMIT_SINGLE_PROCESS=true` only for a single long-lived process.
|
|
245
256
|
|
|
257
|
+
</details>
|
|
258
|
+
|
|
246
259
|
<details>
|
|
247
260
|
<summary><strong>Vercel deployment</strong></summary>
|
|
248
261
|
|
|
@@ -285,7 +298,7 @@ docker run \
|
|
|
285
298
|
|
|
286
299
|
<hr>
|
|
287
300
|
|
|
288
|
-
<h2 align="center" id="development"
|
|
301
|
+
<h2 align="center" id="development">Development</h2>
|
|
289
302
|
|
|
290
303
|
```bash
|
|
291
304
|
npm run dev # stdio with hot reload
|
|
@@ -309,6 +322,12 @@ documented in [`GOVERNANCE.md`](GOVERNANCE.md). Report vulnerabilities through
|
|
|
309
322
|
[`SECURITY.md`](SECURITY.md), and see [`SECURITY-ASSURANCE.md`](SECURITY-ASSURANCE.md)
|
|
310
323
|
for the public threat model and assurance case.
|
|
311
324
|
|
|
325
|
+
<hr>
|
|
326
|
+
|
|
327
|
+
<h2 align="center" id="community">Community</h2>
|
|
328
|
+
|
|
329
|
+
Questions and bug reports belong in [Issues](https://github.com/CodesWhat/portkey-admin-mcp/issues); broader discussion, ideas, and help using the server belong in [Discussions](https://github.com/CodesWhat/portkey-admin-mcp/discussions).
|
|
330
|
+
|
|
312
331
|
---
|
|
313
332
|
|
|
314
333
|
<div align="center">
|
|
@@ -336,7 +355,11 @@ for the public threat model and assurance case.
|
|
|
336
355
|
</picture>
|
|
337
356
|
</a>
|
|
338
357
|
|
|
339
|
-
[
|
|
358
|
+
Also listed on [LobeHub](https://lobehub.com/mcp/codeswhat-portkey-admin-mcp) and [Glama](https://glama.ai/mcp/servers/CodesWhat/portkey-admin-mcp):
|
|
359
|
+
|
|
360
|
+
[](https://lobehub.com/mcp/codeswhat-portkey-admin-mcp)
|
|
361
|
+
|
|
362
|
+
<a href="https://glama.ai/mcp/servers/CodesWhat/portkey-admin-mcp"><img src="https://glama.ai/mcp/servers/CodesWhat/portkey-admin-mcp/badges/card.svg" alt="portkey-admin-mcp MCP server"></a>
|
|
340
363
|
|
|
341
364
|
<a href="#portkey-admin-mcp-server">Back to top</a>
|
|
342
365
|
|
package/package.json
CHANGED
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
},
|
|
56
56
|
"name": "portkey-admin-mcp",
|
|
57
57
|
"mcpName": "io.github.CodesWhat/portkey-admin-mcp",
|
|
58
|
-
"version": "0.10.
|
|
58
|
+
"version": "0.10.1",
|
|
59
59
|
"main": "build/index.js",
|
|
60
60
|
"keywords": [
|
|
61
61
|
"mcp",
|
|
@@ -84,15 +84,15 @@
|
|
|
84
84
|
"url": "https://github.com/CodesWhat/portkey-admin-mcp/issues"
|
|
85
85
|
},
|
|
86
86
|
"devDependencies": {
|
|
87
|
-
"@biomejs/biome": "2.5.
|
|
87
|
+
"@biomejs/biome": "2.5.8",
|
|
88
88
|
"@types/cors": "2.8.19",
|
|
89
89
|
"@types/express": "5.0.6",
|
|
90
90
|
"@types/node": "24.13.3",
|
|
91
91
|
"dotenv": "17.4.2",
|
|
92
|
-
"esbuild": "0.28.
|
|
93
|
-
"knip": "6.
|
|
92
|
+
"esbuild": "0.28.2",
|
|
93
|
+
"knip": "6.32.2",
|
|
94
94
|
"lefthook": "2.1.10",
|
|
95
|
-
"tsx": "4.23.
|
|
95
|
+
"tsx": "4.23.12",
|
|
96
96
|
"typescript": "7.0.2"
|
|
97
97
|
}
|
|
98
98
|
}
|