foundr-companion 0.1.0 → 0.1.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.
@@ -6,7 +6,7 @@ import fs from 'node:fs/promises'
6
6
  import os from 'node:os'
7
7
  import path from 'node:path'
8
8
  import { loadBridgeAuth, saveBridgeAuth, deleteBridgeAuth } from './bridge-auth.mjs'
9
- import { createMcpClient, withVercelProtectionBypass } from './mcp-client.mjs'
9
+ import { createMcpClient, createOAuthCallbackWaiter, withVercelProtectionBypass } from './mcp-client.mjs'
10
10
  import { FileBackedOAuthProvider } from './oauth-provider.mjs'
11
11
  import { logoutFoundrBridge } from './logout.mjs'
12
12
  import { createCodexAppServerAdapter } from './codex-app-server-adapter.mjs'
@@ -42,9 +42,15 @@ export async function loginCompanion({
42
42
  onRedirect,
43
43
  log = console.log,
44
44
  } = {}) {
45
- const existingAuth = await loadBridgeAuth().catch(() => ({}))
46
- const auth = existingAuth.mcpUrl === mcpUrl ? existingAuth : {}
47
- let pairedAgent = auth.agent
45
+ // `login` is an explicit (re)pairing: register a fresh client whose loopback
46
+ // redirect URI uses a free OS-assigned port. This means a stale/in-use port
47
+ // (e.g. a previous login that left its callback bound) can never block login
48
+ // — the root cause of the 17893 EADDRINUSE. We bind the callback FIRST so its
49
+ // port is known before client registration builds the redirect URI.
50
+ const callback = createOAuthCallbackWaiter()
51
+ await callback.ready
52
+
53
+ let pairedAgent
48
54
  const persistAuth = async (nextAuth) => {
49
55
  await saveBridgeAuth({
50
56
  ...nextAuth,
@@ -57,14 +63,19 @@ export async function loginCompanion({
57
63
  const provider = new FileBackedOAuthProvider({
58
64
  mcpUrl,
59
65
  agentName,
60
- auth,
66
+ auth: {},
67
+ redirectPort: callback.port,
61
68
  onChange: persistAuth,
62
69
  onRedirect: onRedirect ?? ((url) => {
63
70
  log(`Open this URL to authorize the Foundr Companion:\n${withVercelProtectionBypass(url).toString()}`)
64
71
  }),
65
72
  })
66
73
 
67
- const mcp = await createMcpClient({ mcpUrl, authProvider: provider })
74
+ const mcp = await createMcpClient({
75
+ mcpUrl,
76
+ authProvider: provider,
77
+ oauthCallbackFactory: () => callback,
78
+ })
68
79
  try {
69
80
  const heartbeat = await mcp.callTool('heartbeat_private_chat_listener', {
70
81
  client_name: CLIENT_NAME,
@@ -75,6 +86,7 @@ export async function loginCompanion({
75
86
  await persistAuth(provider.auth)
76
87
  return { agent: heartbeat.agent }
77
88
  } finally {
89
+ callback.close()
78
90
  await mcp.close()
79
91
  }
80
92
  }
@@ -3,6 +3,7 @@ export function createOAuthCallbackWaiter({ port }?: {
3
3
  }): {
4
4
  ready: Promise<any>;
5
5
  code: Promise<any>;
6
+ readonly port: number;
6
7
  close(): void;
7
8
  };
8
9
  export function waitForOAuthCallback({ port }?: {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client.d.mts","sourceRoot":"","sources":["../../src/bridge/mcp-client.mjs"],"names":[],"mappings":"AAOA;;;;;;EAyFC;AAED;;iBAEC;AAED,+FAUC;AAED,iDAOC;AAED,0DAQC;AAiCD;;;iBA8BC;AA2BD,kDAOC;AAcD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CC;8CA9R6C,oDAAoD;uBAF3E,2CAA2C"}
1
+ {"version":3,"file":"mcp-client.d.mts","sourceRoot":"","sources":["../../src/bridge/mcp-client.mjs"],"names":[],"mappings":"AAOA;;;;;;;EAqGC;AAED;;iBAEC;AAED,+FAUC;AAED,iDAOC;AAED,0DAQC;AAiCD;;;iBA8BC;AA2BD,kDAOC;AAcD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CC;8CA1S6C,oDAAoD;uBAF3E,2CAA2C"}
@@ -5,10 +5,16 @@ import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/
5
5
 
6
6
  const CLIENT_INFO = { name: 'foundr-local-bridge', version: '0.1.0' }
7
7
 
8
- export function createOAuthCallbackWaiter({ port = 17893 } = {}) {
8
+ export function createOAuthCallbackWaiter({ port = 0 } = {}) {
9
+ // Default port 0 = let the OS assign a free loopback port. A hardcoded port
10
+ // (the old 17893) collides whenever anything already holds it — a previous
11
+ // login that didn't finish, a second instance, etc. — and bricks login for
12
+ // every founder, not just the first. The actual bound port is read back from
13
+ // the listening socket and used as the OAuth redirect URI.
9
14
  let server
10
15
  let settled = false
11
16
  let readySettled = false
17
+ let actualPort = port
12
18
  let resolveReady
13
19
  let rejectReady
14
20
 
@@ -16,7 +22,7 @@ export function createOAuthCallbackWaiter({ port = 17893 } = {}) {
16
22
  resolveReady = () => {
17
23
  if (readySettled) return
18
24
  readySettled = true
19
- resolve()
25
+ resolve(actualPort)
20
26
  }
21
27
  rejectReady = (error) => {
22
28
  if (readySettled) return
@@ -58,7 +64,7 @@ export function createOAuthCallbackWaiter({ port = 17893 } = {}) {
58
64
 
59
65
  server = createServer((req, res) => {
60
66
  try {
61
- const url = new URL(req.url ?? '/', `http://127.0.0.1:${port}`)
67
+ const url = new URL(req.url ?? '/', 'http://127.0.0.1')
62
68
  const oauthError = url.searchParams.get('error')
63
69
  const errorDescription = url.searchParams.get('error_description')
64
70
  const authCode = url.searchParams.get('code')
@@ -81,13 +87,19 @@ export function createOAuthCallbackWaiter({ port = 17893 } = {}) {
81
87
  })
82
88
 
83
89
  server.on('error', (error) => settle(rejectCode, error))
84
- server.listen(port, '127.0.0.1', resolveReady)
90
+ server.listen(port, '127.0.0.1', () => {
91
+ actualPort = server.address()?.port ?? port
92
+ resolveReady()
93
+ })
85
94
  })
86
95
  void code.catch(() => {})
87
96
 
88
97
  return {
89
98
  ready,
90
99
  code,
100
+ get port() {
101
+ return actualPort
102
+ },
91
103
  close() {
92
104
  if (settled) return
93
105
  settled = true
@@ -96,7 +108,7 @@ export function createOAuthCallbackWaiter({ port = 17893 } = {}) {
96
108
  }
97
109
  }
98
110
 
99
- export function waitForOAuthCallback({ port = 17893 } = {}) {
111
+ export function waitForOAuthCallback({ port = 0 } = {}) {
100
112
  return createOAuthCallbackWaiter({ port }).code
101
113
  }
102
114
 
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client.mjs","sourceRoot":"","sources":["../../src/bridge/mcp-client.mjs"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-client.mjs","sourceRoot":"","sources":["../../src/bridge/mcp-client.mjs"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAA;AAElG,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAErE,MAAM,UAAU,yBAAyB,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE;IACzD,4EAA4E;IAC5E,2EAA2E;IAC3E,2EAA2E;IAC3E,6EAA6E;IAC7E,2DAA2D;IAC3D,IAAI,MAAM,CAAA;IACV,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,IAAI,UAAU,GAAG,IAAI,CAAA;IACrB,IAAI,YAAY,CAAA;IAChB,IAAI,WAAW,CAAA;IAEf,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC5C,YAAY,GAAG,GAAG,EAAE;YAClB,IAAI,YAAY;gBAAE,OAAM;YACxB,YAAY,GAAG,IAAI,CAAA;YACnB,OAAO,CAAC,UAAU,CAAC,CAAA;QACrB,CAAC,CAAA;QACD,WAAW,GAAG,CAAC,KAAK,EAAE,EAAE;YACtB,IAAI,YAAY;gBAAE,OAAM;YACxB,YAAY,GAAG,IAAI,CAAA;YACnB,MAAM,CAAC,KAAK,CAAC,CAAA;QACf,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAAE,EAAE;QACzC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,CAAA;YACT,OAAM;QACR,CAAC;QACD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACrB,OAAM;QACR,CAAC;QACD,OAAO,EAAE,CAAA;IACX,CAAC,CAAA;IAED,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,MAAM,CAAC,KAAK,EAAE,CAAA;YACd,OAAM;QACR,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;IAChD,CAAC,CAAA;IAED,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;YAC3B,IAAI,OAAO;gBAAE,OAAM;YACnB,OAAO,GAAG,IAAI,CAAA;YACd,IAAI,EAAE,KAAK,UAAU,EAAE,CAAC;gBACtB,WAAW,CAAC,KAAK,CAAC,CAAA;YACpB,CAAC;YACD,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;QAC9B,CAAC,CAAA;QAED,MAAM,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;;YACjC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAA,GAAG,CAAC,GAAG,mCAAI,GAAG,EAAE,kBAAkB,CAAC,CAAA;gBACvD,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;gBAChD,MAAM,gBAAgB,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;gBAClE,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBAE7C,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,UAAU,KAAK,gBAAgB,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;gBACvF,CAAC;gBACD,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;gBACvC,CAAC;gBAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,2BAA2B,EAAE,CAAC,CAAA;gBACnE,GAAG,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAA;gBACpE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;YAC/B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,2BAA2B,EAAE,CAAC,CAAA;gBACnE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACtE,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;YAC3B,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAA;QACxD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE;;YACpC,UAAU,GAAG,MAAA,MAAA,MAAM,CAAC,OAAO,EAAE,0CAAE,IAAI,mCAAI,IAAI,CAAA;YAC3C,YAAY,EAAE,CAAA;QAChB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAEzB,OAAO;QACL,KAAK;QACL,IAAI;QACJ,IAAI,IAAI;YACN,OAAO,UAAU,CAAA;QACnB,CAAC;QACD,KAAK;YACH,IAAI,OAAO;gBAAE,OAAM;YACnB,OAAO,GAAG,IAAI,CAAA;YACd,kBAAkB,EAAE,CAAA;QACtB,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE;IACpD,OAAO,yBAAyB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAA;AACjD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAM,EAAE,YAAY;IAClD,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAA;IACjD,MAAM,WAAW,GAAG,gBAAgB;QAClC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,EAAE;QACjE,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO,IAAI,6BAA6B,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,kBACtD,YAAY,IACT,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACvC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,+BAA+B;QAC3C,OAAO,CAAC,GAAG,CAAC,+BAA+B;QAC3C,OAAO,CAAC,GAAG,CAAC,wBAAwB;QACpC,EAAE,CACH,CAAC,IAAI,EAAE,CAAA;AACV,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,GAAG;IAC5C,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAA;IACjD,IAAI,CAAC,gBAAgB;QAAE,OAAO,GAAG,CAAA;IAEjC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;IACvC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,4BAA4B,EAAE,gBAAgB,CAAC,CAAA;IACxE,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAAA;IAC9D,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,MAAM,EAAE,IAAI;IACjC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAA;IACrC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAA;AACzC,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,QAAQ;IACvC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAClC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAA;IACpB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAA,KAAK,QAAQ;QAC5C,CAAC,CAAC,OAAO,CAAC,IAAI;QACd,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;YAClD,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAA;IAC/B,MAAM,OAAO,GAAG,OAAO,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,KAAK,QAAQ;QAClD,CAAC,CAAC,OAAO,CAAC,OAAO;QACjB,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,4BAA4B,CAAA;IACvD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAA;IAC9C,KAAK,CAAC,IAAI,GAAG,IAAI,CAAA;IACjB,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA;IAC9B,KAAK,CAAC,OAAO,GAAG,OAAO,CAAA;IACvB,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACnC,MAAM,EACN,YAAY,EACZ,IAAI,EACJ,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,UAAU,CAAC,KAAK,GAC7B,GAAG,EAAE;;IACJ,MAAM,WAAW,GAAG,MAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,4DAAI,0CAAE,YAAY,CAAA;IAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;QAC5D,KAAK,CAAC,IAAI,GAAG,aAAa,CAAA;QAC1B,MAAM,KAAK,CAAA;IACb,CAAC;IAED,MAAM,OAAO,GAAG;QACd,MAAM,EAAE,kBAAkB;QAC1B,aAAa,EAAE,UAAU,WAAW,EAAE;QACtC,cAAc,EAAE,kBAAkB;KACnC,CAAA;IACD,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAA;IACjD,IAAI,gBAAgB;QAAE,OAAO,CAAC,4BAA4B,CAAC,GAAG,gBAAgB,CAAA;IAE9E,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE;QAC5D,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACjD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,eAAe,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;IAC9D,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAM;;IAC9B,OAAO,MAAA,MAAA,MAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,IAAI,CACzB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CACjE,0CAAE,IAAI,0CAAE,IAAI,EAAE,mCAAI,EAAE,CAAA;AACvB,CAAC;AAED,SAAS,cAAc,CAAC,IAAI;IAC1B,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAA;IAC3B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAM;;IAC9B,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACrC,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,IAAI,CAAA;IAChD,MAAM,OAAO,GAAG,MAAA,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,mCAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,OAAO,mCAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,mCAAI,IAAI,CAAA;IAElF,IAAI,IAAI,IAAI,OAAO;QAAE,OAAO,GAAG,IAAI,KAAK,OAAO,EAAE,CAAA;IACjD,OAAO,OAAO,IAAI,4BAA4B,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAM;IACpC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAA;IAC3C,CAAC;IAED,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACrC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AACrC,CAAC;AAED,SAAS,6BAA6B,CAAC,YAAY,EAAE,gBAAgB;IACnE,IAAI,CAAC,YAAY;QAAE,OAAO,YAAY,CAAA;IAEtC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IAC5C,QAAQ,CAAC,uBAAuB,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE;;QAC/C,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;QACxC,MAAM,aAAa,CAAC,KAAK,CAAA;QACzB,OAAO,MAAA,YAAY,CAAC,uBAAuB,6DAAG,GAAG,CAAC,CAAA;IACpD,CAAC,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EACpC,MAAM,EACN,YAAY,EACZ,aAAa,GAAG,GAAG,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,EACnE,gBAAgB,GAAG,eAAe,EAClC,oBAAoB,GAAG,yBAAyB,GACjD,GAAG,EAAE;IACJ,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,IAAI,oBAAoB,CAAA;IACxB,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,oBAAoB,aAApB,oBAAoB,cAApB,oBAAoB,IAApB,oBAAoB,GAAK,oBAAoB,EAAE,EAAA;QAC/C,OAAO,oBAAoB,CAAA;IAC7B,CAAC,CAAA;IACD,MAAM,uBAAuB,GAAG,6BAA6B,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAA;IAC7F,IAAI,SAAS,GAAG,gBAAgB,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;IAEjE,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAC/B,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,KAAK,EAAE,CAAA;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,CAAC,KAAK,YAAY,iBAAiB,CAAC,EAAE,CAAC;YAC1C,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,KAAK,EAAE,CAAA;YAC7B,MAAM,KAAK,CAAA;QACb,CAAC;QAED,MAAM,aAAa,GAAG,oBAAoB,aAApB,oBAAoB,cAApB,oBAAoB,GAAI,gBAAgB,EAAE,CAAA;QAChE,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,CAAA;QACzC,MAAM,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;QACpC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAEpC,oBAAoB,GAAG,SAAS,CAAA;QAChC,SAAS,GAAG,gBAAgB,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;QAC7D,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACjC,CAAC;IAED,OAAO;QACL,MAAM;QACN,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE;YAC5B,OAAO,eAAe,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QAC1E,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE;YAC5B,OAAO,cAAc,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7D,CAAC;QACD,KAAK,CAAC,KAAK;YACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;QACtB,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,13 +1,15 @@
1
1
  export class FileBackedOAuthProvider {
2
- constructor({ mcpUrl, agentName, auth, onRedirect, onChange }?: {
2
+ constructor({ mcpUrl, agentName, auth, onRedirect, onChange, redirectPort }?: {
3
3
  agentName?: string | undefined;
4
4
  auth?: {} | undefined;
5
+ redirectPort?: number | undefined;
5
6
  });
6
7
  mcpUrl: any;
7
8
  agentName: string;
8
9
  auth: {};
9
10
  onRedirect: any;
10
11
  onChange: any;
12
+ redirectPort: number;
11
13
  get redirectUrl(): string;
12
14
  get clientMetadata(): {
13
15
  client_name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-provider.d.mts","sourceRoot":"","sources":["../../src/bridge/oauth-provider.mjs"],"names":[],"mappings":"AAOA;IACE;;;OAMC;IALC,YAAoB;IACpB,kBAA0B;IAC1B,SAAsB;IACtB,gBAA4B;IAC5B,cAAwB;IAG1B,0BAEC;IAED;;;;;;;MASC;IAED,yBAEC;IAED,8BAEC;IAED,gDAGC;IAED,cAEC;IAED,uCAGC;IAED,uCAEC;IAED,+CAGC;IAED,oBAKC;IAED,8CAGC;IAED,sBAEC;IAED,iDAcC;CACF"}
1
+ {"version":3,"file":"oauth-provider.d.mts","sourceRoot":"","sources":["../../src/bridge/oauth-provider.mjs"],"names":[],"mappings":"AAOA;IACE;;;;OAUC;IATC,YAAoB;IACpB,kBAA0B;IAC1B,SAAsB;IACtB,gBAA4B;IAC5B,cAAwB;IAIxB,qBAAgC;IAGlC,0BAEC;IAED;;;;;;;MASC;IAED,yBAEC;IAED,8BAEC;IAED,gDAGC;IAED,cAEC;IAED,uCAGC;IAED,uCAEC;IAED,+CAGC;IAED,oBAKC;IAED,8CAGC;IAED,sBAEC;IAED,iDAcC;CACF"}
@@ -6,16 +6,20 @@ function bridgeScope() {
6
6
  }
7
7
 
8
8
  export class FileBackedOAuthProvider {
9
- constructor({ mcpUrl, agentName = 'Local Agent', auth = {}, onRedirect, onChange } = {}) {
9
+ constructor({ mcpUrl, agentName = 'Local Agent', auth = {}, onRedirect, onChange, redirectPort = 17893 } = {}) {
10
10
  this.mcpUrl = mcpUrl
11
11
  this.agentName = agentName
12
12
  this.auth = auth ?? {}
13
13
  this.onRedirect = onRedirect
14
14
  this.onChange = onChange
15
+ // The loopback OAuth redirect port. Set to the actual free port the callback
16
+ // server bound (see createOAuthCallbackWaiter) so the registered redirect URI
17
+ // matches the listener and never depends on a fixed, collidable port.
18
+ this.redirectPort = redirectPort
15
19
  }
16
20
 
17
21
  get redirectUrl() {
18
- return 'http://127.0.0.1:17893/callback'
22
+ return `http://127.0.0.1:${this.redirectPort}/callback`
19
23
  }
20
24
 
21
25
  get clientMetadata() {
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-provider.mjs","sourceRoot":"","sources":["../../src/bridge/oauth-provider.mjs"],"names":[],"mappings":"AAAA,MAAM,kBAAkB,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,mBAAmB,CAAC,CAAA;AAE5E,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;IACrE,OAAO,UAAU,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACnD,CAAC;AAED,MAAM,OAAO,uBAAuB;IAClC,YAAY,EAAE,MAAM,EAAE,SAAS,GAAG,aAAa,EAAE,IAAI,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE;QACrF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAA;QACtB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAED,IAAI,WAAW;QACb,OAAO,iCAAiC,CAAA;IAC1C,CAAC;IAED,IAAI,cAAc;QAChB,OAAO;YACL,WAAW,EAAE,wBAAwB,IAAI,CAAC,SAAS,GAAG;YACtD,aAAa,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC;YACjC,WAAW,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC;YACpD,cAAc,EAAE,CAAC,MAAM,CAAC;YACxB,0BAA0B,EAAE,MAAM;YAClC,KAAK,EAAE,WAAW,EAAE;SACrB,CAAA;IACH,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,YAAY;;QAChB,MAAM,CAAA,MAAA,IAAI,CAAC,QAAQ,uEAAQ,IAAI,CAAC,IAAI,EAAG,CAAA,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,IAAI;QAC9B,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;QAClC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;IAC3B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAM;QACrB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACzB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;IAC3B,CAAC;IAED,uBAAuB,CAAC,GAAG;;QACzB,OAAO,MAAA,IAAI,CAAC,UAAU,qDAAG,GAAG,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,QAAQ;QAC7B,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAA;QACjC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;IAC3B,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACjD,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAAK;QAC5B,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAA;QAChC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;IAC3B,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,KAAK;QAC/B,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAA;QACpC,CAAC;QACD,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;QACzB,CAAC;QACD,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAA;QAC/B,CAAC;QACD,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAA;QACjC,CAAC;QACD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;IAC3B,CAAC;CACF"}
1
+ {"version":3,"file":"oauth-provider.mjs","sourceRoot":"","sources":["../../src/bridge/oauth-provider.mjs"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "foundr-companion",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"