diff --git a/src/components/templates/agent-connectors/_section-after-setup-leadboxermcp-common-workflows.mdx b/src/components/templates/agent-connectors/_section-after-setup-leadboxermcp-common-workflows.mdx new file mode 100644 index 000000000..cf903226b --- /dev/null +++ b/src/components/templates/agent-connectors/_section-after-setup-leadboxermcp-common-workflows.mdx @@ -0,0 +1,78 @@ +{/* TODO: stub cloned from _section-after-setup-atlassianmcp-common-workflows.mdx for LeadBoxer MCP. Review and update connector-specific references (URLs, scopes, app-registration steps) before merging. */} +export const sectionTitle = 'Common workflows' + +import { Tabs, TabItem, Aside } from '@astrojs/starlight/components' + +### Get your cloud ID + +Most LeadBoxer MCP tools require a `cloudId` — the UUID that identifies your Atlassian cloud site. Call `leadboxermcp_getaccessibleatlassianresources` once to retrieve it, then pass the `id` field value in every subsequent tool call. + + + + + + ```typescript + // Step 1 — get the cloud ID + const resources = await actions.executeTool({ + connectionName: 'leadboxermcp', + identifier: 'user_123', + toolName: 'leadboxermcp_getaccessibleatlassianresources', + toolInput: {}, + }); + const cloudId = resources[0].id; + + // Step 2 — use cloudId in subsequent calls + const issue = await actions.executeTool({ + connectionName: 'leadboxermcp', + identifier: 'user_123', + toolName: 'leadboxermcp_getjiraissue', + toolInput: { + cloudId, + issueIdOrKey: 'KAN-1', + }, + }); + console.log(issue); + ``` + + + ```python + # Step 1 — get the cloud ID + resources = actions.execute_tool( + connection_name="leadboxermcp", + identifier="user_123", + tool_name="leadboxermcp_getaccessibleatlassianresources", + tool_input={}, + ) + cloud_id = resources[0]["id"] + + # Step 2 — use cloud_id in subsequent calls + issue = actions.execute_tool( + connection_name="leadboxermcp", + identifier="user_123", + tool_name="leadboxermcp_getjiraissue", + tool_input={ + "cloudId": cloud_id, + "issueIdOrKey": "KAN-1", + }, + ) + print(issue) + ``` + + + +The `leadboxermcp_getaccessibleatlassianresources` response looks like this: + +```json +[ + { + "id": "a4c9b3e2-1234-5678-abcd-ef0123456789", + "name": "My Company", + "url": "https://mycompany.atlassian.net", + "scopes": ["read:jira-work", "write:jira-work", "read:confluence-content.all"] + } +] +``` + +Use `id` as the `cloudId` parameter. If the user belongs to multiple Atlassian sites, the list contains one entry per site — pick the one matching the target `url`. diff --git a/src/components/templates/agent-connectors/_setup-leadboxermcp.mdx b/src/components/templates/agent-connectors/_setup-leadboxermcp.mdx new file mode 100644 index 000000000..9b96fd203 --- /dev/null +++ b/src/components/templates/agent-connectors/_setup-leadboxermcp.mdx @@ -0,0 +1,30 @@ +{/* TODO: stub cloned from atlassianmcp — replace Atlassian-specific navigation with LeadBoxer MCP-specific steps */} +import { Steps, Aside } from '@astrojs/starlight/components' + +LeadBoxer MCP uses Dynamic Client Registration (DCR) with PKCE — no client ID or secret is needed. Scalekit automatically registers the OAuth client on first use and handles the full token lifecycle. + + +1. ### Create a connection in Scalekit + + In the [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **LeadBoxer MCP** and click **Create**. + + Copy the redirect URI — it looks like `https:///sso/v1/oauth//callback`. + + {/* TODO: add screenshot of creating the LeadBoxer MCP connection in Scalekit dashboard */} + +2. ### Authorize the connection + + Use the redirect URI from Scalekit to initiate the OAuth 2.1 authorization flow. LeadBoxer MCP's DCR endpoint will register Scalekit as a client automatically during this step. + + {/* TODO: add provider-specific steps for initiating the OAuth flow in LeadBoxer's authorization portal */} + + + +3. ### Verify the connection is active + + Back in the [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** and confirm the LeadBoxer MCP connection shows a status of **Active**. + + {/* TODO: add screenshot of active connection status in Scalekit dashboard */} + diff --git a/src/components/templates/agent-connectors/index.ts b/src/components/templates/agent-connectors/index.ts index ded5fb340..bdd4afaf6 100644 --- a/src/components/templates/agent-connectors/index.ts +++ b/src/components/templates/agent-connectors/index.ts @@ -61,6 +61,7 @@ export { default as SetupIcepanelmcpSection } from './_setup-icepanelmcp.mdx' export { default as SetupIntercomSection } from './_setup-intercom.mdx' export { default as SetupJiminnySection } from './_setup-jiminny.mdx' export { default as SetupJiraSection } from './_setup-jira.mdx' +export { default as SetupLeadboxermcpSection } from './_setup-leadboxermcp.mdx' export { default as SetupLeadiqSection } from './_setup-leadiq.mdx' export { default as SetupLinearSection } from './_setup-linear.mdx' export { default as SetupLinklymcpSection } from './_setup-linklymcp.mdx' @@ -165,6 +166,7 @@ export { default as SectionAfterSetupHubspotCommonWorkflows } from './_section-a export { default as SectionAfterSetupIcepanelmcpCommonWorkflows } from './_section-after-setup-icepanelmcp-common-workflows.mdx' export { default as SectionAfterSetupIntercomCommonWorkflows } from './_section-after-setup-intercom-common-workflows.mdx' export { default as SectionAfterSetupJiraCommonWorkflows } from './_section-after-setup-jira-common-workflows.mdx' +export { default as SectionAfterSetupLeadboxermcpCommonWorkflows } from './_section-after-setup-leadboxermcp-common-workflows.mdx' export { default as SectionAfterSetupLeadiqCommonWorkflows } from './_section-after-setup-leadiq-common-workflows.mdx' export { default as SectionAfterSetupLinearCommonWorkflows } from './_section-after-setup-linear-common-workflows.mdx' export { default as SectionAfterSetupLinklymcpCommonWorkflows } from './_section-after-setup-linklymcp-common-workflows.mdx' diff --git a/src/content/docs/agentkit/connectors/leadboxermcp.mdx b/src/content/docs/agentkit/connectors/leadboxermcp.mdx new file mode 100644 index 000000000..570890a78 --- /dev/null +++ b/src/content/docs/agentkit/connectors/leadboxermcp.mdx @@ -0,0 +1,88 @@ +--- +title: 'LeadBoxer MCP connector' +tableOfContents: true +description: 'Use LeadBoxer MCP to identify anonymous website visitors and enrich them with firmographic data from your AI agent.' +sidebar: + label: 'LeadBoxer MCP' +overviewTitle: 'Quickstart' +connectorIcon: https://cdn.scalekit.com/sk-connect/assets/provider-icons/leadboxermcp.svg +connectorAuthType: OAuth 2.1/DCR +connectorCategories: [Analytics, Marketing, CRM & Sales] +head: + - tag: style + content: | + .sl-markdown-content h2 { + font-size: var(--sl-text-xl); + } + .sl-markdown-content h3 { + font-size: var(--sl-text-lg); + } +--- + +import ToolList from '@/components/ToolList.astro' +import { tools } from '@/data/agent-connectors/leadboxermcp' +import { Steps, Tabs, TabItem } from '@astrojs/starlight/components' +import { AgentKitCredentials } from '@components/templates' +import { SetupLeadboxermcpSection } from '@components/templates' +import { QuickstartGenericOauthSection } from '@components/templates' +import { SectionAfterSetupLeadboxermcpCommonWorkflows } from '@components/templates' + + + +1. ### Install the SDK + + + + ```bash frame="terminal" + npm install @scalekit-sdk/node + ``` + + + ```bash frame="terminal" + pip install scalekit + ``` + + + + Full SDK reference: [Node.js](/agentkit/sdks/node/) | [Python](/agentkit/sdks/python/) + +2. ### Set your credentials + + + +3. ### Set up the connector + + Register your LeadBoxer MCP credentials with Scalekit so it handles the token lifecycle. You do this once per environment. + +
+ Dashboard setup steps + + + +
+ +4. ### Authorize and make your first call + + + +
+ +## What you can do + +Connect this agent connector to let your agent: + +- **Discover available APIs** — list all OpenAPI specs published by LeadBoxer to understand what data is accessible +- **Browse API endpoints** — list all paths and HTTP methods for a spec, organized for quick lookup +- **Inspect endpoint details** — retrieve full parameter definitions, security schemes, and server info for any endpoint +- **Search across endpoints** — perform deep searches through paths, operations, and parameters to find relevant APIs +- **Execute API requests** — call any LeadBoxer API endpoint directly using a HAR request object + +## Common workflows + + + +## Tool list + +Use the exact tool names from the **Tool list** below when you call `execute_tool`. If you're not sure which name to use, list the tools available for the current user first. + + diff --git a/src/data/agent-connectors/catalog.ts b/src/data/agent-connectors/catalog.ts index c8951b28f..2cc37b237 100644 --- a/src/data/agent-connectors/catalog.ts +++ b/src/data/agent-connectors/catalog.ts @@ -759,6 +759,11 @@ export const catalog: Record = { authType: 'OAuth 2.1/DCR', categories: ['Transcription', 'Collaboration', 'AI'], }, + leadboxermcp: { + iconUrl: 'https://cdn.scalekit.com/sk-connect/assets/provider-icons/leadboxermcp.svg', + authType: 'OAuth 2.1/DCR', + categories: ['Analytics', 'Marketing', 'CRM & Sales'], + }, leadiq: { iconUrl: 'https://cdn.scalekit.com/sk-connect/assets/provider-icons/leadiq.svg', authType: 'API Key', diff --git a/src/data/agent-connectors/leadboxermcp.ts b/src/data/agent-connectors/leadboxermcp.ts new file mode 100644 index 000000000..bf5b0b265 --- /dev/null +++ b/src/data/agent-connectors/leadboxermcp.ts @@ -0,0 +1,75 @@ +import type { Tool } from '../../types/agent-connectors' + +export const tools: Tool[] = [ + { + name: 'leadboxermcp_list_specs', + description: `Lists all available OpenAPI specs. Use the title to select a spec.`, + params: [], + }, + { + name: 'leadboxermcp_list_endpoints', + description: `Lists all API paths and their HTTP methods with summaries, organized by path. Results can be passed directly into 'get-endpoint'.`, + params: [ + { + name: 'title', + type: 'string', + required: true, + description: `Title of the OpenAPI spec. Use tool 'list-specs' or 'search-endpoints' to see available specs.`, + }, + ], + }, + { + name: 'leadboxermcp_get_endpoint', + description: `Gets detailed information about a specific API endpoint, including security schemes and servers.`, + params: [ + { + name: 'path', + type: 'string', + required: true, + description: `The API endpoint path (e.g. /api/v1/users).`, + }, + { + name: 'method', + type: 'string', + required: true, + description: `The HTTP method (e.g. GET, POST, PUT, DELETE).`, + }, + { + name: 'title', + type: 'string', + required: true, + description: `Title of the OpenAPI spec.`, + }, + ], + }, + { + name: 'leadboxermcp_search_endpoints', + description: `Performs a deep search through paths, operations, and parameters to discover relevant API endpoints.`, + params: [ + { + name: 'pattern', + type: 'string', + required: true, + description: `Search pattern (case-insensitive).`, + }, + ], + }, + { + name: 'leadboxermcp_execute_request', + description: `Executes an API request with a given HAR request object.`, + params: [ + { + name: 'harRequest', + type: 'object', + required: true, + description: `HAR request object describing the API call to execute.`, + }, + { + name: 'title', + type: 'string', + required: true, + description: `Title of the OpenAPI spec.`, + }, + ], + }, +]