MCPcopy Create free account
hub / github.com/UsefulSoftwareCo/executor / connectionsList

Function connectionsList

packages/core/sdk/src/executor.ts:3029–3057  ·  view source on GitHub ↗
(filter?: {
      readonly integration?: IntegrationSlug;
      readonly owner?: Owner;
    })

Source from the content-addressed store, hash-verified

3027 });
3028
3029 const connectionsList = (filter?: {
3030 readonly integration?: IntegrationSlug;
3031 readonly owner?: Owner;
3032 }): Effect.Effect<readonly Connection[], StorageFailure> =>
3033 Effect.gen(function* () {
3034 const rows = yield* core.findMany("connection", {
3035 where: (b: AnyCb) =>
3036 b.and(
3037 filter?.integration === undefined
3038 ? true
3039 : b("integration", "=", String(filter.integration)),
3040 filter?.owner === undefined ? true : b("owner", "=", filter.owner),
3041 ),
3042 });
3043 const connections = rows.map(rowToConnection);
3044 if (!activeToolPolicyProvider) return connections;
3045
3046 const visibleTools = yield* toolsList({ includeAnnotations: false });
3047 const visibleConnectionKeys = new Set(
3048 visibleTools
3049 .filter((tool) => !tool.static)
3050 .map((tool) => `${tool.owner}:${tool.integration}:${tool.connection}`),
3051 );
3052 return connections.filter((connection) =>
3053 visibleConnectionKeys.has(
3054 `${connection.owner}:${connection.integration}:${connection.name}`,
3055 ),
3056 );
3057 });
3058
3059 const connectionsGet = (ref: ConnectionRef): Effect.Effect<Connection | null, StorageFailure> =>
3060 findConnectionRow(ref).pipe(Effect.map((row) => (row ? rowToConnection(row) : null)));

Callers 1

createExecutorFunction · 0.85

Calls 1

toolsListFunction · 0.70

Tested by

no test coverage detected