@gloriginmind/mcp 0.1.2 → 0.1.4
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 +28 -25
- package/dist/tools.d.ts +2 -0
- package/dist/tools.js +21 -2
- package/package.json +16 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OriginMind MCP
|
|
2
2
|
|
|
3
|
-
MCP server for OriginMind dual-auth skill routes. Auth is the same Bootstrap OAuth path as skills (`ORIGINMIND_API_KEY`
|
|
3
|
+
MCP server for OriginMind dual-auth skill routes. Auth is the same Bootstrap OAuth path as skills (`ORIGINMIND_API_KEY`). No MCP-specific OAuth.
|
|
4
4
|
|
|
5
5
|
## Prerequisites
|
|
6
6
|
|
|
@@ -8,32 +8,30 @@ MCP server for OriginMind dual-auth skill routes. Auth is the same Bootstrap OAu
|
|
|
8
8
|
. ./skills/create/scripts/setup-oauth.ps1
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
Key lands in `~/.originmind/.env`.
|
|
11
|
+
Key lands in `~/.originmind/.env`. Expose it to Cursor via OS/user env or Cursor settings — do **not** paste into committed `mcp.json`.
|
|
12
12
|
|
|
13
|
-
## Cursor — preferred (HTTP
|
|
14
|
-
|
|
15
|
-
Run the HTTP server once (separate terminal / service):
|
|
16
|
-
|
|
17
|
-
```powershell
|
|
18
|
-
npx -y -p @gloriginmind/mcp originmind-mcp-http
|
|
19
|
-
# or local: node path/to/skills/mcp/dist/http.js
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
Defaults: `http://127.0.0.1:3920/mcp` (`ORIGINMIND_MCP_PORT`, `ORIGINMIND_MCP_HOST`).
|
|
23
|
-
|
|
24
|
-
Cursor `mcp.json`:
|
|
13
|
+
## Cursor — preferred (hosted HTTP)
|
|
25
14
|
|
|
26
15
|
```json
|
|
27
16
|
{
|
|
28
17
|
"mcpServers": {
|
|
29
18
|
"originmind": {
|
|
30
|
-
"url": "
|
|
19
|
+
"url": "https://api.originmind.ai/mcp",
|
|
20
|
+
"headers": {
|
|
21
|
+
"X-OriAI-Api-Key": "${env:ORIGINMIND_API_KEY}"
|
|
22
|
+
}
|
|
31
23
|
}
|
|
32
24
|
}
|
|
33
25
|
}
|
|
34
26
|
```
|
|
35
27
|
|
|
36
|
-
|
|
28
|
+
Bearer JWT also works: `"Authorization": "Bearer ${env:SUPABASE_ACCESS_TOKEN}"` (or your session token).
|
|
29
|
+
|
|
30
|
+
Health: `GET https://api.originmind.ai/mcp/health`
|
|
31
|
+
|
|
32
|
+
## Local fallbacks
|
|
33
|
+
|
|
34
|
+
**Local HTTP** (orchestrator `npm run dev`, or package HTTP entry):
|
|
37
35
|
|
|
38
36
|
```json
|
|
39
37
|
{
|
|
@@ -48,11 +46,9 @@ The HTTP process reads `ORIGINMIND_API_KEY` from the machine env / `~/.originmin
|
|
|
48
46
|
}
|
|
49
47
|
```
|
|
50
48
|
|
|
51
|
-
|
|
49
|
+
Package HTTP server: `npx -y -p @gloriginmind/mcp originmind-mcp-http` (port `ORIGINMIND_MCP_PORT`, default 3920). When using orchestrator locally, MCP is at the same host as the API (e.g. `http://127.0.0.1:<port>/mcp`).
|
|
52
50
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
Avoids a long-running process; `npx` can be slow on some networks:
|
|
51
|
+
**stdio:**
|
|
56
52
|
|
|
57
53
|
```json
|
|
58
54
|
{
|
|
@@ -66,24 +62,23 @@ Avoids a long-running process; `npx` can be slow on some networks:
|
|
|
66
62
|
}
|
|
67
63
|
```
|
|
68
64
|
|
|
69
|
-
Or `npx -y @gloriginmind/mcp` (
|
|
65
|
+
Or `npx -y @gloriginmind/mcp` (first connect may be slow on some networks).
|
|
70
66
|
|
|
71
67
|
## Transports
|
|
72
68
|
|
|
73
69
|
| Transport | Entry | Use |
|
|
74
70
|
|-----------|-------|-----|
|
|
75
|
-
| **HTTP** | `originmind
|
|
71
|
+
| **Hosted HTTP** | `https://api.originmind.ai/mcp` | Cursor `url` (primary) |
|
|
72
|
+
| **Package HTTP** | `originmind-mcp-http` / `dist/http.js` | Local / LiveKit |
|
|
76
73
|
| **stdio** | `mcp` / `originmind-mcp` / `dist/stdio.js` | Cursor command |
|
|
77
74
|
|
|
78
|
-
Health: `GET /health`.
|
|
79
|
-
|
|
80
75
|
### LiveKit (documented, not wired this pass)
|
|
81
76
|
|
|
82
77
|
```python
|
|
83
78
|
from livekit.agents import mcp
|
|
84
79
|
|
|
85
80
|
mcp.MCPServerHTTP(
|
|
86
|
-
url=
|
|
81
|
+
url="https://api.originmind.ai/mcp",
|
|
87
82
|
headers={"Authorization": f"Bearer {jwt}"},
|
|
88
83
|
)
|
|
89
84
|
```
|
|
@@ -97,6 +92,14 @@ mcp.MCPServerHTTP(
|
|
|
97
92
|
|
|
98
93
|
Notion tools are **not** exposed (parked).
|
|
99
94
|
|
|
95
|
+
## Package exports
|
|
96
|
+
|
|
97
|
+
```ts
|
|
98
|
+
import { createServer } from "@gloriginmind/mcp/server";
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Used by the orchestrator to host `/mcp`. Server metadata includes OriginMind icons from `https://app.originmind.ai/icon-128.png` (plus 96 / 512).
|
|
102
|
+
|
|
100
103
|
## Dev
|
|
101
104
|
|
|
102
105
|
```bash
|
package/dist/tools.d.ts
CHANGED
|
@@ -5,6 +5,8 @@ export type ToolAuthContext = {
|
|
|
5
5
|
getAuthorizationHeader?: () => string | null | undefined;
|
|
6
6
|
/** Per-request X-OriAI-Api-Key (HTTP / Cursor headers). */
|
|
7
7
|
getApiKeyHeader?: () => string | null | undefined;
|
|
8
|
+
/** Override API base URL (orchestrator self-call / local). */
|
|
9
|
+
baseUrl?: string;
|
|
8
10
|
};
|
|
9
11
|
/** Zod shapes exported for unit tests. */
|
|
10
12
|
export declare const toolSchemas: {
|
package/dist/tools.js
CHANGED
|
@@ -16,7 +16,7 @@ function clientFor(ctx) {
|
|
|
16
16
|
});
|
|
17
17
|
if ("error" in auth)
|
|
18
18
|
return { error: MISSING_KEY_MESSAGE };
|
|
19
|
-
return new OriginMindClient(auth);
|
|
19
|
+
return new OriginMindClient(auth, ctx.baseUrl);
|
|
20
20
|
}
|
|
21
21
|
async function runTool(ctx, fn) {
|
|
22
22
|
const client = clientFor(ctx);
|
|
@@ -106,7 +106,26 @@ export const toolSchemas = {
|
|
|
106
106
|
export function createServer(authCtx = {}) {
|
|
107
107
|
const server = new McpServer({
|
|
108
108
|
name: "originmind",
|
|
109
|
-
|
|
109
|
+
title: "OriginMind",
|
|
110
|
+
version: "0.1.4",
|
|
111
|
+
websiteUrl: "https://app.originmind.ai",
|
|
112
|
+
icons: [
|
|
113
|
+
{
|
|
114
|
+
src: "https://app.originmind.ai/icon-128.png",
|
|
115
|
+
mimeType: "image/png",
|
|
116
|
+
sizes: ["128x128"],
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
src: "https://app.originmind.ai/icon-96.png",
|
|
120
|
+
mimeType: "image/png",
|
|
121
|
+
sizes: ["96x96"],
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
src: "https://app.originmind.ai/2505_OM_logo_Icon_512.png",
|
|
125
|
+
mimeType: "image/png",
|
|
126
|
+
sizes: ["512x512"],
|
|
127
|
+
},
|
|
128
|
+
],
|
|
110
129
|
});
|
|
111
130
|
server.tool("list_projects", "List OriginMind projects for the authenticated user (GET /api/v1/projects).", toolSchemas.list_projects.shape, async () => runTool(authCtx, (c) => c.get("/api/v1/projects")));
|
|
112
131
|
server.tool("search_creative_dna", "Search Creative DNA for a project (POST /api/v1/projects/{id}/query).", toolSchemas.search_creative_dna.shape, async (args) => runTool(authCtx, (c) => c.post(`/api/v1/projects/${encodeURIComponent(args.project_id)}/query`, {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gloriginmind/mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "OriginMind MCP server — dual-auth skill routes via Bootstrap OAuth API key",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -9,6 +9,21 @@
|
|
|
9
9
|
"originmind-mcp-http": "dist/http.js"
|
|
10
10
|
},
|
|
11
11
|
"main": "./dist/stdio.js",
|
|
12
|
+
"exports": {
|
|
13
|
+
".": "./dist/stdio.js",
|
|
14
|
+
"./server": {
|
|
15
|
+
"types": "./dist/tools.d.ts",
|
|
16
|
+
"import": "./dist/tools.js"
|
|
17
|
+
},
|
|
18
|
+
"./auth": {
|
|
19
|
+
"types": "./dist/auth.d.ts",
|
|
20
|
+
"import": "./dist/auth.js"
|
|
21
|
+
},
|
|
22
|
+
"./client": {
|
|
23
|
+
"types": "./dist/client.d.ts",
|
|
24
|
+
"import": "./dist/client.js"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
12
27
|
"files": [
|
|
13
28
|
"dist",
|
|
14
29
|
"README.md"
|