Skip to content

Commit 65dce03

Browse files
authored
Apify Integration (#1034)
1 parent 65f171f commit 65dce03

File tree

6 files changed

+57
-0
lines changed

6 files changed

+57
-0
lines changed

apps/web/src/lib/integrationTypeOptions.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,10 @@ export const HOSTED_INTEGRATION_TYPE_OPTIONS: Record<
160160
label: 'Audiense',
161161
icon: 'audiense',
162162
},
163+
[HostedIntegrationType.Apify]: {
164+
label: 'Apify',
165+
icon: 'apify',
166+
},
163167
}
164168

165169
export function integrationOptions(

packages/constants/src/integrations.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ export enum HostedIntegrationType {
3838
Figma = 'figma',
3939
Hyperbrowser = 'hyperbrowser',
4040
Audiense = 'audiense',
41+
Apify = 'apify',
4142

4243
// Require all auth file :point_down:
4344
// Gmail = 'google_drive',
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import { HostedIntegrationConfig } from '../types'
2+
import { npxCommand } from '../utils'
3+
4+
export default {
5+
description: 'Gives access to any actor available from your APIFY account.',
6+
command: npxCommand({
7+
package: '@apify/actors-mcp-server',
8+
args: '${ACTORS:+--actors "$ACTORS"}',
9+
}),
10+
env: {
11+
APIFY_TOKEN: {
12+
label: 'Personal API token',
13+
description: 'The token for your APIFY account',
14+
placeholder: 'your-apify-token',
15+
required: true,
16+
},
17+
ACTORS: {
18+
label: 'Actors',
19+
description:
20+
'The list of actors to be used in the integration, separated by commas',
21+
placeholder: 'actor1,actor2,actor3',
22+
required: false,
23+
},
24+
},
25+
envSource: 'https://console.apify.com/settings/integrations',
26+
} as HostedIntegrationConfig

packages/core/src/services/integrations/hostedTypes/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import GHOST_MCP_CONFIG from './configs/ghost'
3131
import FIGMA_MCP_CONFIG from './configs/figma'
3232
import HYPERBROWSER_MCP_CONFIG from './configs/hyperbrowser'
3333
import AUDIENSE_MCP_CONFIG from './configs/audiense'
34+
import APIFY_MCP_CONFIG from './configs/apify'
3435

3536
export const HOSTED_MCP_CONFIGS: Record<
3637
HostedIntegrationType,
@@ -68,4 +69,5 @@ export const HOSTED_MCP_CONFIGS: Record<
6869
[HostedIntegrationType.Figma]: FIGMA_MCP_CONFIG,
6970
[HostedIntegrationType.Hyperbrowser]: HYPERBROWSER_MCP_CONFIG,
7071
[HostedIntegrationType.Audiense]: AUDIENSE_MCP_CONFIG,
72+
[HostedIntegrationType.Apify]: APIFY_MCP_CONFIG,
7173
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import { type LucideProps } from 'lucide-react'
2+
3+
export default function Apify(props: LucideProps) {
4+
return (
5+
<svg viewBox='0 0 131.8 135.3' fill='none' {...props}>
6+
<g>
7+
<path
8+
d='M16.6,12.6C6,14.1-1.3,23.8,0.2,34.3l11.4,81.2L59.3,6.6L16.6,12.6z'
9+
fill='currentColor'
10+
></path>
11+
<path
12+
d='M131.8,80.2l-4.5-62.4c-0.8-10.6-10-18.5-20.5-17.8c-0.4,0-0.9,0.1-1.3,0.1L87.1,2.7l40.5,90.9C130.6,89.9,132.1,85.1,131.8,80.2z'
13+
fill='currentColor'
14+
></path>
15+
<path
16+
d='M28.9,135.2c3.3,0.4,6.6-0.1,9.6-1.4l69.5-29.4L75,30.2L28.9,135.2z'
17+
fill='currentColor'
18+
></path>
19+
</g>
20+
</svg>
21+
)
22+
}

packages/web-ui/src/ds/atoms/Icons/index.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,7 @@ import Telegram from './custom-icons/logos/Telegram'
142142
import Tinybird from './custom-icons/logos/Tinybird'
143143
import TwitterX from './custom-icons/logos/TwitterX'
144144
import Wordpress from './custom-icons/logos/Wordpress'
145+
import Apify from './custom-icons/logos/Apify'
145146

146147
const Icons = {
147148
// hubspot: Hubspot,
@@ -150,6 +151,7 @@ const Icons = {
150151
airtable: Airtable,
151152
alert: CircleAlert,
152153
alertCircle: AlertCircle,
154+
apify: Apify,
153155
appWindow: AppWindow,
154156
arrowDown: ArrowDownIcon,
155157
arrowLeft: ArrowLeft,

0 commit comments

Comments
 (0)