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

Function connectionsList

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

Source from the content-addressed store, hash-verified

3092 });
3093
3094 const connectionsList = (filter?: {
3095 readonly integration?: IntegrationSlug;
3096 readonly owner?: Owner;
3097 }): Effect.Effect<readonly Connection[], StorageFailure> =>
3098 Effect.gen(function* () {
3099 const rows = yield* core.findMany("connection", {
3100 where: (b: AnyCb) =>
3101 b.and(
3102 filter?.integration === undefined
3103 ? true
3104 : b("integration", "=", String(filter.integration)),
3105 filter?.owner === undefined ? true : b("owner", "=", filter.owner),
3106 ),
3107 });
3108 const connections = rows.map(rowToConnection);
3109 if (!activeToolPolicyProvider) return connections;
3110
3111 const visibleTools = yield* toolsList({ includeAnnotations: false });
3112 const visibleConnectionKeys = new Set(
3113 visibleTools
3114 .filter((tool) => !tool.static)
3115 .map((tool) => `${tool.owner}:${tool.integration}:${tool.connection}`),
3116 );
3117 return connections.filter((connection) =>
3118 visibleConnectionKeys.has(
3119 `${connection.owner}:${connection.integration}:${connection.name}`,
3120 ),
3121 );
3122 });
3123
3124 const connectionsGet = (ref: ConnectionRef): Effect.Effect<Connection | null, StorageFailure> =>
3125 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